--- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -4671,7 +4671,10 @@ static bool __need_reclaim(gfp_t gfp_mask) void __fs_reclaim_acquire(unsigned long ip) { + unsigned long save_flags; + local_irq_save(save_flags); lock_acquire_exclusive(&__fs_reclaim_map, 0, 0, NULL, ip); + local_irq_restore(save_flags); } void __fs_reclaim_release(unsigned long ip)