diff options
Diffstat (limited to 'fs/reiserfs')
-rw-r--r-- | fs/reiserfs/super.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/fs/reiserfs/super.c b/fs/reiserfs/super.c index d318c7e663fa..663a91f5dce8 100644 --- a/fs/reiserfs/super.c +++ b/fs/reiserfs/super.c | |||
@@ -2058,10 +2058,10 @@ static int reiserfs_quota_on_mount(struct super_block *sb, int type) | |||
2058 | * Standard function to be called on quota_on | 2058 | * Standard function to be called on quota_on |
2059 | */ | 2059 | */ |
2060 | static int reiserfs_quota_on(struct super_block *sb, int type, int format_id, | 2060 | static int reiserfs_quota_on(struct super_block *sb, int type, int format_id, |
2061 | char *path, int remount) | 2061 | char *name, int remount) |
2062 | { | 2062 | { |
2063 | int err; | 2063 | int err; |
2064 | struct nameidata nd; | 2064 | struct path path; |
2065 | struct inode *inode; | 2065 | struct inode *inode; |
2066 | struct reiserfs_transaction_handle th; | 2066 | struct reiserfs_transaction_handle th; |
2067 | 2067 | ||
@@ -2069,16 +2069,16 @@ static int reiserfs_quota_on(struct super_block *sb, int type, int format_id, | |||
2069 | return -EINVAL; | 2069 | return -EINVAL; |
2070 | /* No more checks needed? Path and format_id are bogus anyway... */ | 2070 | /* No more checks needed? Path and format_id are bogus anyway... */ |
2071 | if (remount) | 2071 | if (remount) |
2072 | return vfs_quota_on(sb, type, format_id, path, 1); | 2072 | return vfs_quota_on(sb, type, format_id, name, 1); |
2073 | err = path_lookup(path, LOOKUP_FOLLOW, &nd); | 2073 | err = kern_path(name, LOOKUP_FOLLOW, &path); |
2074 | if (err) | 2074 | if (err) |
2075 | return err; | 2075 | return err; |
2076 | /* Quotafile not on the same filesystem? */ | 2076 | /* Quotafile not on the same filesystem? */ |
2077 | if (nd.path.mnt->mnt_sb != sb) { | 2077 | if (path.mnt->mnt_sb != sb) { |
2078 | err = -EXDEV; | 2078 | err = -EXDEV; |
2079 | goto out; | 2079 | goto out; |
2080 | } | 2080 | } |
2081 | inode = nd.path.dentry->d_inode; | 2081 | inode = path.dentry->d_inode; |
2082 | /* We must not pack tails for quota files on reiserfs for quota IO to work */ | 2082 | /* We must not pack tails for quota files on reiserfs for quota IO to work */ |
2083 | if (!(REISERFS_I(inode)->i_flags & i_nopack_mask)) { | 2083 | if (!(REISERFS_I(inode)->i_flags & i_nopack_mask)) { |
2084 | err = reiserfs_unpack(inode, NULL); | 2084 | err = reiserfs_unpack(inode, NULL); |
@@ -2094,7 +2094,7 @@ static int reiserfs_quota_on(struct super_block *sb, int type, int format_id, | |||
2094 | /* Journaling quota? */ | 2094 | /* Journaling quota? */ |
2095 | if (REISERFS_SB(sb)->s_qf_names[type]) { | 2095 | if (REISERFS_SB(sb)->s_qf_names[type]) { |
2096 | /* Quotafile not of fs root? */ | 2096 | /* Quotafile not of fs root? */ |
2097 | if (nd.path.dentry->d_parent->d_inode != sb->s_root->d_inode) | 2097 | if (path.dentry->d_parent != sb->s_root) |
2098 | reiserfs_warning(sb, | 2098 | reiserfs_warning(sb, |
2099 | "reiserfs: Quota file not on filesystem root. " | 2099 | "reiserfs: Quota file not on filesystem root. " |
2100 | "Journalled quota will not work."); | 2100 | "Journalled quota will not work."); |
@@ -2113,9 +2113,9 @@ static int reiserfs_quota_on(struct super_block *sb, int type, int format_id, | |||
2113 | if (err) | 2113 | if (err) |
2114 | goto out; | 2114 | goto out; |
2115 | } | 2115 | } |
2116 | err = vfs_quota_on_path(sb, type, format_id, &nd.path); | 2116 | err = vfs_quota_on_path(sb, type, format_id, &path); |
2117 | out: | 2117 | out: |
2118 | path_put(&nd.path); | 2118 | path_put(&path); |
2119 | return err; | 2119 | return err; |
2120 | } | 2120 | } |
2121 | 2121 | ||