--- a/include/linux/sched/mm.h +++ b/include/linux/sched/mm.h @@ -268,8 +268,11 @@ static inline void memalloc_retry_wait(gfp_t gfp_flags) */ static inline void might_alloc(gfp_t gfp_mask) { + unsigned long save_flags; + local_irq_save(save_flags); fs_reclaim_acquire(gfp_mask); fs_reclaim_release(gfp_mask); + local_irq_restore(save_flags); might_sleep_if(gfpflags_allow_blocking(gfp_mask)); }