aboutsummaryrefslogtreecommitdiffstats
path: root/fs/gfs2/ops_inode.c
diff options
context:
space:
mode:
authorSteven Whitehouse <swhiteho@redhat.com>2008-03-10 11:34:50 -0400
committerSteven Whitehouse <swhiteho@redhat.com>2008-03-31 05:41:36 -0400
commitd82661d96993ac4efc1d54259ea85ffcd9b8bec6 (patch)
tree0a42b5a3ff34839673e0007fca4335f18078803a /fs/gfs2/ops_inode.c
parent860b25d4a913a00331d333f8e207a088c7a1b84a (diff)
[GFS2] Streamline quota lock/check for no-quota case
This patch streamlines the quota checking in the "no quota" case by making the check inline in the calling function, thus reducing the number of function calls. Eventually we might be able to remove the checks from the gfs2_quota_lock() and gfs2_quota_check() functions, but currently we can't as there are a very few places in the code which need to call these functions directly still. Signed-off-by: Steven Whitehouse <swhiteho@redhat.com> Cc: Abhijith Das <adas@redhat.com>
Diffstat (limited to 'fs/gfs2/ops_inode.c')
-rw-r--r--fs/gfs2/ops_inode.c12
1 files changed, 2 insertions, 10 deletions
diff --git a/fs/gfs2/ops_inode.c b/fs/gfs2/ops_inode.c
index 34fe571e15ee..2686ad4c0029 100644
--- a/fs/gfs2/ops_inode.c
+++ b/fs/gfs2/ops_inode.c
@@ -205,14 +205,10 @@ static int gfs2_link(struct dentry *old_dentry, struct inode *dir,
205 goto out_gunlock; 205 goto out_gunlock;
206 } 206 }
207 207
208 error = gfs2_quota_lock(dip, NO_QUOTA_CHANGE, NO_QUOTA_CHANGE); 208 error = gfs2_quota_lock_check(dip);
209 if (error) 209 if (error)
210 goto out_alloc; 210 goto out_alloc;
211 211
212 error = gfs2_quota_check(dip, dip->i_inode.i_uid, dip->i_inode.i_gid);
213 if (error)
214 goto out_gunlock_q;
215
216 al->al_requested = sdp->sd_max_dirres; 212 al->al_requested = sdp->sd_max_dirres;
217 213
218 error = gfs2_inplace_reserve(dip); 214 error = gfs2_inplace_reserve(dip);
@@ -725,14 +721,10 @@ static int gfs2_rename(struct inode *odir, struct dentry *odentry,
725 goto out_gunlock; 721 goto out_gunlock;
726 } 722 }
727 723
728 error = gfs2_quota_lock(ndip, NO_QUOTA_CHANGE, NO_QUOTA_CHANGE); 724 error = gfs2_quota_lock_check(ndip);
729 if (error) 725 if (error)
730 goto out_alloc; 726 goto out_alloc;
731 727
732 error = gfs2_quota_check(ndip, ndip->i_inode.i_uid, ndip->i_inode.i_gid);
733 if (error)
734 goto out_gunlock_q;
735
736 al->al_requested = sdp->sd_max_dirres; 728 al->al_requested = sdp->sd_max_dirres;
737 729
738 error = gfs2_inplace_reserve(ndip); 730 error = gfs2_inplace_reserve(ndip);