OpenCloudOS-Kernel/fs/hostfs
Al Viro f8ad850f11 try to get rid of races in hostfs open()
In case of mode mismatch, do *not* blindly close the descriptor
another openers might be using right now.  Open the underlying
file with currently sufficient mode, then
	* if current mode has grown so that it's sufficient for
us now, just close our new fd
	* if current mode has grown and our fd is *not* enough
to cover it, close and repeat.
	* otherwise, install our fd if the file hadn't been
opened at all or dup2() our fd over the current one (and close
our fd).
Critical section is protected by mutex; yes, system-wide.  All
we do under it is a bunch of comparison and maybe an overwriting
dup2() on host.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2010-08-09 16:48:15 -04:00
..
Makefile Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hostfs.h try to get rid of races in hostfs open() 2010-08-09 16:48:15 -04:00
hostfs_kern.c try to get rid of races in hostfs open() 2010-08-09 16:48:15 -04:00
hostfs_user.c try to get rid of races in hostfs open() 2010-08-09 16:48:15 -04:00