diff options
Diffstat (limited to 'fs/xfs/quota')
-rw-r--r-- | fs/xfs/quota/xfs_qm.c | 3 | ||||
-rw-r--r-- | fs/xfs/quota/xfs_qm_syscalls.c | 16 |
2 files changed, 8 insertions, 11 deletions
diff --git a/fs/xfs/quota/xfs_qm.c b/fs/xfs/quota/xfs_qm.c index 8f5a43669297..b5f91281b707 100644 --- a/fs/xfs/quota/xfs_qm.c +++ b/fs/xfs/quota/xfs_qm.c | |||
@@ -2417,8 +2417,7 @@ xfs_qm_vop_dqalloc( | |||
2417 | lockflags = XFS_ILOCK_EXCL; | 2417 | lockflags = XFS_ILOCK_EXCL; |
2418 | xfs_ilock(ip, lockflags); | 2418 | xfs_ilock(ip, lockflags); |
2419 | 2419 | ||
2420 | if ((flags & XFS_QMOPT_INHERIT) && | 2420 | if ((flags & XFS_QMOPT_INHERIT) && XFS_INHERIT_GID(ip)) |
2421 | XFS_INHERIT_GID(ip, XFS_MTOVFS(mp))) | ||
2422 | gid = ip->i_d.di_gid; | 2421 | gid = ip->i_d.di_gid; |
2423 | 2422 | ||
2424 | /* | 2423 | /* |
diff --git a/fs/xfs/quota/xfs_qm_syscalls.c b/fs/xfs/quota/xfs_qm_syscalls.c index e0d024e73453..ad5579d4eac4 100644 --- a/fs/xfs/quota/xfs_qm_syscalls.c +++ b/fs/xfs/quota/xfs_qm_syscalls.c | |||
@@ -86,10 +86,8 @@ xfs_qm_quotactl( | |||
86 | int id, | 86 | int id, |
87 | xfs_caddr_t addr) | 87 | xfs_caddr_t addr) |
88 | { | 88 | { |
89 | bhv_vfs_t *vfsp = XFS_MTOVFS(mp); | ||
90 | int error; | 89 | int error; |
91 | 90 | ||
92 | |||
93 | ASSERT(addr != NULL || cmd == Q_XQUOTASYNC); | 91 | ASSERT(addr != NULL || cmd == Q_XQUOTASYNC); |
94 | 92 | ||
95 | /* | 93 | /* |
@@ -102,7 +100,7 @@ xfs_qm_quotactl( | |||
102 | */ | 100 | */ |
103 | if (XFS_IS_QUOTA_ON(mp)) | 101 | if (XFS_IS_QUOTA_ON(mp)) |
104 | return XFS_ERROR(EINVAL); | 102 | return XFS_ERROR(EINVAL); |
105 | if (vfsp->vfs_flag & VFS_RDONLY) | 103 | if (mp->m_flags & XFS_MOUNT_RDONLY) |
106 | return XFS_ERROR(EROFS); | 104 | return XFS_ERROR(EROFS); |
107 | return (xfs_qm_scall_trunc_qfiles(mp, | 105 | return (xfs_qm_scall_trunc_qfiles(mp, |
108 | xfs_qm_import_qtype_flags(*(uint *)addr))); | 106 | xfs_qm_import_qtype_flags(*(uint *)addr))); |
@@ -118,13 +116,13 @@ xfs_qm_quotactl( | |||
118 | * QUOTAON - enabling quota enforcement. | 116 | * QUOTAON - enabling quota enforcement. |
119 | * Quota accounting must be turned on at mount time. | 117 | * Quota accounting must be turned on at mount time. |
120 | */ | 118 | */ |
121 | if (vfsp->vfs_flag & VFS_RDONLY) | 119 | if (mp->m_flags & XFS_MOUNT_RDONLY) |
122 | return XFS_ERROR(EROFS); | 120 | return XFS_ERROR(EROFS); |
123 | return (xfs_qm_scall_quotaon(mp, | 121 | return (xfs_qm_scall_quotaon(mp, |
124 | xfs_qm_import_flags(*(uint *)addr))); | 122 | xfs_qm_import_flags(*(uint *)addr))); |
125 | 123 | ||
126 | case Q_XQUOTAOFF: | 124 | case Q_XQUOTAOFF: |
127 | if (vfsp->vfs_flag & VFS_RDONLY) | 125 | if (mp->m_flags & XFS_MOUNT_RDONLY) |
128 | return XFS_ERROR(EROFS); | 126 | return XFS_ERROR(EROFS); |
129 | break; | 127 | break; |
130 | 128 | ||
@@ -140,7 +138,7 @@ xfs_qm_quotactl( | |||
140 | 138 | ||
141 | switch (cmd) { | 139 | switch (cmd) { |
142 | case Q_XQUOTAOFF: | 140 | case Q_XQUOTAOFF: |
143 | if (vfsp->vfs_flag & VFS_RDONLY) | 141 | if (mp->m_flags & XFS_MOUNT_RDONLY) |
144 | return XFS_ERROR(EROFS); | 142 | return XFS_ERROR(EROFS); |
145 | error = xfs_qm_scall_quotaoff(mp, | 143 | error = xfs_qm_scall_quotaoff(mp, |
146 | xfs_qm_import_flags(*(uint *)addr), | 144 | xfs_qm_import_flags(*(uint *)addr), |
@@ -161,19 +159,19 @@ xfs_qm_quotactl( | |||
161 | break; | 159 | break; |
162 | 160 | ||
163 | case Q_XSETQLIM: | 161 | case Q_XSETQLIM: |
164 | if (vfsp->vfs_flag & VFS_RDONLY) | 162 | if (mp->m_flags & XFS_MOUNT_RDONLY) |
165 | return XFS_ERROR(EROFS); | 163 | return XFS_ERROR(EROFS); |
166 | error = xfs_qm_scall_setqlim(mp, (xfs_dqid_t)id, XFS_DQ_USER, | 164 | error = xfs_qm_scall_setqlim(mp, (xfs_dqid_t)id, XFS_DQ_USER, |
167 | (fs_disk_quota_t *)addr); | 165 | (fs_disk_quota_t *)addr); |
168 | break; | 166 | break; |
169 | case Q_XSETGQLIM: | 167 | case Q_XSETGQLIM: |
170 | if (vfsp->vfs_flag & VFS_RDONLY) | 168 | if (mp->m_flags & XFS_MOUNT_RDONLY) |
171 | return XFS_ERROR(EROFS); | 169 | return XFS_ERROR(EROFS); |
172 | error = xfs_qm_scall_setqlim(mp, (xfs_dqid_t)id, XFS_DQ_GROUP, | 170 | error = xfs_qm_scall_setqlim(mp, (xfs_dqid_t)id, XFS_DQ_GROUP, |
173 | (fs_disk_quota_t *)addr); | 171 | (fs_disk_quota_t *)addr); |
174 | break; | 172 | break; |
175 | case Q_XSETPQLIM: | 173 | case Q_XSETPQLIM: |
176 | if (vfsp->vfs_flag & VFS_RDONLY) | 174 | if (mp->m_flags & XFS_MOUNT_RDONLY) |
177 | return XFS_ERROR(EROFS); | 175 | return XFS_ERROR(EROFS); |
178 | error = xfs_qm_scall_setqlim(mp, (xfs_dqid_t)id, XFS_DQ_PROJ, | 176 | error = xfs_qm_scall_setqlim(mp, (xfs_dqid_t)id, XFS_DQ_PROJ, |
179 | (fs_disk_quota_t *)addr); | 177 | (fs_disk_quota_t *)addr); |