summaryrefslogtreecommitdiffstats
path: root/fs/fuse/file.c
diff options
context:
space:
mode:
authorMiklos Szeredi2007-10-17 08:31:02 +0200
committerLinus Torvalds2007-10-17 17:43:04 +0200
commit244f6385c2891e366a7de5f6746ccc257efd8952 (patch)
tree09d51e0f55d9e88dad48941cc0a63e0253306e47 /fs/fuse/file.c
parentfuse: set i_nlink to sane value after mount (diff)
downloadkernel-qcow2-linux-244f6385c2891e366a7de5f6746ccc257efd8952.tar.gz
kernel-qcow2-linux-244f6385c2891e366a7de5f6746ccc257efd8952.tar.xz
kernel-qcow2-linux-244f6385c2891e366a7de5f6746ccc257efd8952.zip
fuse: refresh stale attributes in fuse_permission()
fuse_permission() didn't refresh inode attributes before using them, even if the validity has already expired. Thanks to Junjiro Okajima for spotting this. Also remove some old code to unconditionally refresh the attributes on the root inode. Signed-off-by: Miklos Szeredi <mszeredi@suse.cz> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/fuse/file.c')
-rw-r--r--fs/fuse/file.c8
1 files changed, 0 insertions, 8 deletions
diff --git a/fs/fuse/file.c b/fs/fuse/file.c
index fb1713e76756..f3ef2bde983b 100644
--- a/fs/fuse/file.c
+++ b/fs/fuse/file.c
@@ -106,14 +106,6 @@ int fuse_open_common(struct inode *inode, struct file *file, int isdir)
if (err)
return err;
- /* If opening the root node, no lookup has been performed on
- it, so the attributes must be refreshed */
- if (get_node_id(inode) == FUSE_ROOT_ID) {
- err = fuse_do_getattr(inode);
- if (err)
- return err;
- }
-
ff = fuse_file_alloc();
if (!ff)
return -ENOMEM;