diff options
Diffstat (limited to 'fs/omfs/inode.c')
-rw-r--r-- | fs/omfs/inode.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/fs/omfs/inode.c b/fs/omfs/inode.c index 633e9dc972bb..379ae5fb4411 100644 --- a/fs/omfs/inode.c +++ b/fs/omfs/inode.c | |||
@@ -262,14 +262,19 @@ static int omfs_statfs(struct dentry *dentry, struct kstatfs *buf) | |||
262 | { | 262 | { |
263 | struct super_block *s = dentry->d_sb; | 263 | struct super_block *s = dentry->d_sb; |
264 | struct omfs_sb_info *sbi = OMFS_SB(s); | 264 | struct omfs_sb_info *sbi = OMFS_SB(s); |
265 | u64 id = huge_encode_dev(s->s_bdev->bd_dev); | ||
266 | |||
265 | buf->f_type = OMFS_MAGIC; | 267 | buf->f_type = OMFS_MAGIC; |
266 | buf->f_bsize = sbi->s_blocksize; | 268 | buf->f_bsize = sbi->s_blocksize; |
267 | buf->f_blocks = sbi->s_num_blocks; | 269 | buf->f_blocks = sbi->s_num_blocks; |
268 | buf->f_files = sbi->s_num_blocks; | 270 | buf->f_files = sbi->s_num_blocks; |
269 | buf->f_namelen = OMFS_NAMELEN; | 271 | buf->f_namelen = OMFS_NAMELEN; |
272 | buf->f_fsid.val[0] = (u32)id; | ||
273 | buf->f_fsid.val[1] = (u32)(id >> 32); | ||
270 | 274 | ||
271 | buf->f_bfree = buf->f_bavail = buf->f_ffree = | 275 | buf->f_bfree = buf->f_bavail = buf->f_ffree = |
272 | omfs_count_free(s); | 276 | omfs_count_free(s); |
277 | |||
273 | return 0; | 278 | return 0; |
274 | } | 279 | } |
275 | 280 | ||
@@ -421,7 +426,7 @@ static int omfs_fill_super(struct super_block *sb, void *data, int silent) | |||
421 | 426 | ||
422 | sbi->s_uid = current_uid(); | 427 | sbi->s_uid = current_uid(); |
423 | sbi->s_gid = current_gid(); | 428 | sbi->s_gid = current_gid(); |
424 | sbi->s_dmask = sbi->s_fmask = current->fs->umask; | 429 | sbi->s_dmask = sbi->s_fmask = current_umask(); |
425 | 430 | ||
426 | if (!parse_options((char *) data, sbi)) | 431 | if (!parse_options((char *) data, sbi)) |
427 | goto end; | 432 | goto end; |