diff options
Diffstat (limited to 'fs')
-rw-r--r-- | fs/hfsplus/super.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/hfsplus/super.c b/fs/hfsplus/super.c index eb74531a0a8e..f2a64020f42e 100644 --- a/fs/hfsplus/super.c +++ b/fs/hfsplus/super.c | |||
@@ -223,6 +223,7 @@ static void hfsplus_put_super(struct super_block *sb) | |||
223 | static int hfsplus_statfs(struct dentry *dentry, struct kstatfs *buf) | 223 | static int hfsplus_statfs(struct dentry *dentry, struct kstatfs *buf) |
224 | { | 224 | { |
225 | struct super_block *sb = dentry->d_sb; | 225 | struct super_block *sb = dentry->d_sb; |
226 | u64 id = huge_encode_dev(sb->s_bdev->bd_dev); | ||
226 | 227 | ||
227 | buf->f_type = HFSPLUS_SUPER_MAGIC; | 228 | buf->f_type = HFSPLUS_SUPER_MAGIC; |
228 | buf->f_bsize = sb->s_blocksize; | 229 | buf->f_bsize = sb->s_blocksize; |
@@ -231,6 +232,8 @@ static int hfsplus_statfs(struct dentry *dentry, struct kstatfs *buf) | |||
231 | buf->f_bavail = buf->f_bfree; | 232 | buf->f_bavail = buf->f_bfree; |
232 | buf->f_files = 0xFFFFFFFF; | 233 | buf->f_files = 0xFFFFFFFF; |
233 | buf->f_ffree = 0xFFFFFFFF - HFSPLUS_SB(sb).next_cnid; | 234 | buf->f_ffree = 0xFFFFFFFF - HFSPLUS_SB(sb).next_cnid; |
235 | buf->f_fsid.val[0] = (u32)id; | ||
236 | buf->f_fsid.val[1] = (u32)(id >> 32); | ||
234 | buf->f_namelen = HFSPLUS_MAX_STRLEN; | 237 | buf->f_namelen = HFSPLUS_MAX_STRLEN; |
235 | 238 | ||
236 | return 0; | 239 | return 0; |