OpenCloudOS-Kernel/fs/overlayfs
Miklos Szeredi a105d685a8 ovl: fix remove/copy-up race
ovl_remove_and_whiteout() needs to check if upper dentry exists or not
after having locked upper parent directory.

Previously we used a "type" value computed before locking the upper parent
directory, which is susceptible to racing with copy-up.

There's a similar check in ovl_check_empty_and_clear().  This one is not
actually racy, since copy-up doesn't change the "emptyness" property of a
directory.  Add a comment to this effect, and check the existence of upper
dentry locally to make the code cleaner.

Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
2014-11-20 16:39:59 +01:00
..
Kconfig ovl: rename filesystem type to "overlay" 2014-11-20 16:39:59 +01:00
Makefile ovl: rename filesystem type to "overlay" 2014-11-20 16:39:59 +01:00
copy_up.c overlay filesystem 2014-10-24 00:14:38 +02:00
dir.c ovl: fix remove/copy-up race 2014-11-20 16:39:59 +01:00
inode.c overlay filesystem 2014-10-24 00:14:38 +02:00
overlayfs.h overlay filesystem 2014-10-24 00:14:38 +02:00
readdir.c ovl: don't poison cursor 2014-11-05 08:49:38 -05:00
super.c ovl: rename filesystem type to "overlay" 2014-11-20 16:39:59 +01:00