summary refs log tree commit diff
path: root/fs/xfs/Kconfig
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2009-01-19 02:02:57 +0100
committerChristoph Hellwig <hch@brick.lst.de>2009-01-19 02:02:57 +0100
commitd296d30a9948e895bff005d92c38309e8bd30975 (patch)
tree5adcf82c20544c3de2789f6ec18e9db6e8b2b691 /fs/xfs/Kconfig
parent9d87c3192d96ef9ac1cec8321538e9b35e90b5aa (diff)
downloadlinux-d296d30a9948e895bff005d92c38309e8bd30975.tar.gz
xfs: fix dentry aliasing issues in open_by_handle
Open by handle just grabs an inode by handle and then creates itself
a dentry for it.  While this works for regular files it is horribly
broken for directories, where the VFS locking relies on the fact that
there is only just one single dentry for a given inode, and that
these are always connected to the root of the filesystem so that
it's locking algorithms work (see Documentations/filesystems/Locking)

Remove all the existing open by handle code and replace it with a small
wrapper around the exportfs code which deals with all these issues.
At the same time we also make the checks for a valid handle strict
enough to reject all not perfectly well formed handles - given that
we never hand out others that's okay and simplifies the code.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Dave Chinner <david@fromorbit.com>
Diffstat (limited to 'fs/xfs/Kconfig')
-rw-r--r--fs/xfs/Kconfig1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/xfs/Kconfig b/fs/xfs/Kconfig
index 3f53dd101f99..29228f5899cd 100644
--- a/fs/xfs/Kconfig
+++ b/fs/xfs/Kconfig
@@ -1,6 +1,7 @@
 config XFS_FS
 	tristate "XFS filesystem support"
 	depends on BLOCK
+	select EXPORTFS
 	help
 	  XFS is a high performance journaling filesystem which originated
 	  on the SGI IRIX platform.  It is completely multi-threaded, can