From: Miklos Szeredi Date: Fri, 29 Sep 2006 08:59:34 +0000 (-0700) Subject: [PATCH] fuse: use dentry in statfs X-Git-Tag: v2.6.19-rc1~799 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=5b35e8e58a315b16d123e2bc080fcc9981501ac4;p=~emulex%2Finfiniband.git [PATCH] fuse: use dentry in statfs Some filesystems may want to report different values depending on the path within the filesystem, i.e. one mount is actually several filesystems. This can be the case for a network filesystem exported by an unprivileged server (e.g. sshfs). This is now possible, thanks to David Howells "VFS: Permit filesystem to perform statfs with a known root dentry" patch. This change is backward compatible, so no need to change interface version. Signed-off-by: Miklos Szeredi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/fs/fuse/inode.c b/fs/fuse/inode.c index cb7cadb0b79..7d0a9aee01f 100644 --- a/fs/fuse/inode.c +++ b/fs/fuse/inode.c @@ -251,6 +251,7 @@ static int fuse_statfs(struct dentry *dentry, struct kstatfs *buf) memset(&outarg, 0, sizeof(outarg)); req->in.numargs = 0; req->in.h.opcode = FUSE_STATFS; + req->in.h.nodeid = get_node_id(dentry->d_inode); req->out.numargs = 1; req->out.args[0].size = fc->minor < 4 ? FUSE_COMPAT_STATFS_SIZE : sizeof(outarg);