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 */