OpenCloudOS-Kernel/fs/autofs4
Ian Kent 0259cb02c4 autofs4 - use simple_empty() for empty directory check
For direct (and offset) mounts, if an automounted mount is manually
umounted the trigger mount dentry can appear non-empty causing it to
not trigger mounts. This can also happen if there is a file handle
leak in a user space automounting application.

This happens because, when a ioctl control file handle is opened
on the mount, a cursor dentry is created which causes list_empty()
to see the dentry as non-empty. Since there is a case where listing
the directory of these dentrys is needed, the use of dcache_dir_*()
functions for .open() and .release() is needed.

Consequently simple_empty() must be used instead of list_empty()
when checking for an empty directory.

Signed-off-by: Ian Kent <raven@themaw.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-12-13 19:13:25 -08:00
..
Kconfig fs/Kconfig: move autofs, autofs4 out 2009-01-22 13:15:54 +03:00
Makefile autofs4: add miscellaneous device for ioctls 2008-10-16 11:21:39 -07:00
autofs_i.h autofs: make the autofsv5 packet file descriptor use a packetized pipe 2012-04-29 13:30:08 -07:00
dev-ioctl.c autofs4: don't open-code fd_install() 2012-09-26 21:08:51 -04:00
expire.c autofs4 - dont clear DCACHE_NEED_AUTOMOUNT on rootless mount 2012-12-13 19:13:25 -08:00
init.c autofs: set things up *before* registering fs type 2012-03-20 21:29:46 -04:00
inode.c avoid iput() from flusher thread 2012-05-28 09:54:45 -07:00
root.c autofs4 - use simple_empty() for empty directory check 2012-12-13 19:13:25 -08:00
symlink.c autofs4: keep symlink body in inode->i_private 2011-01-18 01:21:27 -05:00
waitq.c make get_file() return its argument 2012-09-26 21:10:25 -04:00