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

Commit d300a41e authored by Trond Myklebust's avatar Trond Myklebust
Browse files

SUNRPC: Dont run rpcauth_cache_shrinker() when gfp_mask is GFP_NOFS



Under some circumstances, put_rpccred() can end up allocating memory, so
check the gfp_mask to prevent deadlocks.

Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
parent 93870d76
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -270,6 +270,8 @@ rpcauth_cache_shrinker(int nr_to_scan, gfp_t gfp_mask)
	LIST_HEAD(free);
	int res;

	if ((gfp_mask & GFP_KERNEL) != GFP_KERNEL)
		return (nr_to_scan == 0) ? 0 : -1;
	if (list_empty(&cred_unused))
		return 0;
	spin_lock(&rpc_credcache_lock);