Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4244b52e authored by David Rientjes's avatar David Rientjes Committed by Steven Whitehouse
Browse files

GFS2: remove dependency on __GFP_NOFAIL



The k[mc]allocs in dr_split_leaf() and dir_double_exhash() are failable,
so remove __GFP_NOFAIL from their masks.

Cc: Bob Peterson <rpeterso@redhat.com>
Signed-off-by: default avatarDavid Rientjes <rientjes@google.com>
Signed-off-by: default avatarSteven Whitehouse <swhiteho@redhat.com>
parent 461cb419
Loading
Loading
Loading
Loading
+9 −2
Original line number Diff line number Diff line
@@ -955,7 +955,12 @@ static int dir_split_leaf(struct inode *inode, const struct qstr *name)
	/* Change the pointers.
	   Don't bother distinguishing stuffed from non-stuffed.
	   This code is complicated enough already. */
	lp = kmalloc(half_len * sizeof(__be64), GFP_NOFS | __GFP_NOFAIL);
	lp = kmalloc(half_len * sizeof(__be64), GFP_NOFS);
	if (!lp) {
		error = -ENOMEM;
		goto fail_brelse;
	}

	/*  Change the pointers  */
	for (x = 0; x < half_len; x++)
		lp[x] = cpu_to_be64(bn);
@@ -1063,7 +1068,9 @@ static int dir_double_exhash(struct gfs2_inode *dip)

	/*  Allocate both the "from" and "to" buffers in one big chunk  */

	buf = kcalloc(3, sdp->sd_hash_bsize, GFP_NOFS | __GFP_NOFAIL);
	buf = kcalloc(3, sdp->sd_hash_bsize, GFP_NOFS);
	if (!buf)
		return -ENOMEM;

	for (block = dip->i_disksize >> sdp->sd_hash_bsize_shift; block--;) {
		error = gfs2_dir_read_data(dip, (char *)buf,