summaryrefslogtreecommitdiff
path: root/fs/befs
diff options
context:
space:
mode:
authorColy Li <coly.li@suse.de>2009-04-03 03:59:32 +0400
committerLinus Torvalds <torvalds@linux-foundation.org>2009-04-03 06:05:08 +0400
commit8587246a004d6ac10aa12c10e3474cfd9dafa44a (patch)
tree326cc82deb2cc02a8d729c9b2b6f56c12e01c91a /fs/befs
parenta6a2a73c4dc6babba2cfa366305cb936fc469640 (diff)
downloadlinux-8587246a004d6ac10aa12c10e3474cfd9dafa44a.tar.xz
fs/befs: return f_fsid for statfs(2)
Make befs return f_fsid info for statfs(2). Signed-off-by: Coly Li <coly.li@suse.de> Cc: Sergey S. Kostyliov <rathamahata@php4.ru> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/befs')
-rw-r--r--fs/befs/linuxvfs.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/befs/linuxvfs.c b/fs/befs/linuxvfs.c
index d06cb023ad02..76afd0d6b86c 100644
--- a/fs/befs/linuxvfs.c
+++ b/fs/befs/linuxvfs.c
@@ -900,6 +900,7 @@ static int
befs_statfs(struct dentry *dentry, struct kstatfs *buf)
{
struct super_block *sb = dentry->d_sb;
+ u64 id = huge_encode_dev(sb->s_bdev->bd_dev);
befs_debug(sb, "---> befs_statfs()");
@@ -910,6 +911,8 @@ befs_statfs(struct dentry *dentry, struct kstatfs *buf)
buf->f_bavail = buf->f_bfree;
buf->f_files = 0; /* UNKNOWN */
buf->f_ffree = 0; /* UNKNOWN */
+ buf->f_fsid.val[0] = (u32)id;
+ buf->f_fsid.val[1] = (u32)(id >> 32);
buf->f_namelen = BEFS_NAME_LEN;
befs_debug(sb, "<--- befs_statfs()");