Browse Source

[GFS2] Eliminate one instance of __GFP_NOFAIL

This removes one instance of GFP_NOFAIL from the glock callback
function. It also fixes a bug where a , was used at a line end
rather than ; causing unintended results.

Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Steven Whitehouse 19 years ago
parent
commit
af18ddb886
2 changed files with 7 additions and 7 deletions
  1. 5 3
      fs/gfs2/glock.c
  2. 2 4
      fs/gfs2/ops_inode.c

+ 5 - 3
fs/gfs2/glock.c

@@ -416,7 +416,7 @@ void gfs2_holder_uninit(struct gfs2_holder *gh)
  * @gl: the glock
  * @state: the state we're requesting
  * @flags: the modifier flags
- * @gfp_flags: __GFP_NOFAIL
+ * @gfp_flags:
  *
  * Figure out how big an impact this function has.  Either:
  * 1) Replace it with a cache of structures hanging off the struct gfs2_sbd
@@ -720,6 +720,7 @@ static void gfs2_glmutex_unlock(struct gfs2_glock *gl)
  * @gl: the glock
  * @state: the state the caller wants us to change to
  *
+ * Note: This may fail sliently if we are out of memory.
  */
 
 static void handle_callback(struct gfs2_glock *gl, unsigned int state)
@@ -744,8 +745,9 @@ restart:
 	} else {
 		spin_unlock(&gl->gl_spin);
 
-		new_gh = gfs2_holder_get(gl, state, LM_FLAG_TRY,
-					 GFP_KERNEL | __GFP_NOFAIL),
+		new_gh = gfs2_holder_get(gl, state, LM_FLAG_TRY, GFP_KERNEL);
+		if (!new_gh)
+			return;
 		set_bit(HIF_DEMOTE, &new_gh->gh_iflags);
 		set_bit(HIF_DEALLOC, &new_gh->gh_iflags);
 

+ 2 - 4
fs/gfs2/ops_inode.c

@@ -962,10 +962,8 @@ static int setattr_chown(struct inode *inode, struct iattr *attr)
 	brelse(dibh);
 
 	if (ouid != NO_QUOTA_CHANGE || ogid != NO_QUOTA_CHANGE) {
-		gfs2_quota_change(ip, -ip->i_di.di_blocks,
-				 ouid, ogid);
-		gfs2_quota_change(ip, ip->i_di.di_blocks,
-				 nuid, ngid);
+		gfs2_quota_change(ip, -ip->i_di.di_blocks, ouid, ogid);
+		gfs2_quota_change(ip, ip->i_di.di_blocks, nuid, ngid);
 	}
 
  out_end_trans: