]> git.karo-electronics.de Git - linux-beck.git/blobdiff - fs/hpfs/super.c
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6
[linux-beck.git] / fs / hpfs / super.c
index 29ad461d568f7f4b4241e3e0c4d2239bbe30a277..fecf402d7b8a42ce7f7bf4b1595e71f51d5b88b5 100644 (file)
@@ -136,6 +136,7 @@ static int hpfs_statfs(struct dentry *dentry, struct kstatfs *buf)
 {
        struct super_block *s = dentry->d_sb;
        struct hpfs_sb_info *sbi = hpfs_sb(s);
+       u64 id = huge_encode_dev(s->s_bdev->bd_dev);
        lock_kernel();
 
        /*if (sbi->sb_n_free == -1) {*/
@@ -149,6 +150,8 @@ static int hpfs_statfs(struct dentry *dentry, struct kstatfs *buf)
        buf->f_bavail = sbi->sb_n_free;
        buf->f_files = sbi->sb_dirband_size / 4;
        buf->f_ffree = sbi->sb_n_free_dnodes;
+       buf->f_fsid.val[0] = (u32)id;
+       buf->f_fsid.val[1] = (u32)(id >> 32);
        buf->f_namelen = 254;
 
        unlock_kernel();
@@ -475,9 +478,9 @@ static int hpfs_fill_super(struct super_block *s, void *options, int silent)
 
        init_MUTEX(&sbi->hpfs_creation_de);
 
-       uid = current->uid;
-       gid = current->gid;
-       umask = current->fs->umask;
+       uid = current_uid();
+       gid = current_gid();
+       umask = current_umask();
        lowercase = 0;
        conv = CONV_BINARY;
        eas = 2;