From 665cc127aaea72404dbbe5ed509969b4b67b173d Mon Sep 17 00:00:00 2001 From: Vinayak Menon Date: Tue, 31 Mar 2020 10:38:58 +0530 Subject: [PATCH] mm: page_alloc: avoid fatal sig check for GFP_NOFS Some of the fs allocations like those for journalling are critical and can cause a fatal error if allocation fails. Avoid bailing out early in those cases, even if a fatal signal is pending on the caller task. Change-Id: Ib2803d763313b196123a4c1e2c66227b5d6e6e14 Signed-off-by: Vinayak Menon --- mm/page_alloc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mm/page_alloc.c b/mm/page_alloc.c index f6e5137270d5..daa8da721217 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -4692,7 +4692,8 @@ retry: if (current->flags & PF_MEMALLOC) goto nopage; - if (fatal_signal_pending(current) && !(gfp_mask & __GFP_NOFAIL)) + if (fatal_signal_pending(current) && !(gfp_mask & __GFP_NOFAIL) && + (gfp_mask & __GFP_FS)) goto nopage; /* Try direct reclaim and then allocating */