Hi, this series aims to unify the setting and clearing of PF_MEMALLOC, which prevents recursive reclaim. There are some places that clear the flag unconditionally from current->flags, which may result in clearing a pre-existing flag. This already resulted in a bug report that Patch 1 fixes (without the new helpers, to make backporting easier). Patch 2 introduces the new helpers, modelled after existing memalloc_noio_* and memalloc_nofs_* helpers, and converts mm core to use them. Patches 3 and 4 convert non-mm code. Based on next-20170404. Vlastimil Babka (4): mm: prevent potential recursive reclaim due to clearing PF_MEMALLOC mm: introduce memalloc_noreclaim_{save,restore} treewide: convert PF_MEMALLOC manipulations to new helpers mtd: nand: nandsim: convert to memalloc_noreclaim_*() drivers/block/nbd.c | 7 ++++--- drivers/mtd/nand/nandsim.c | 29 +++++++++-------------------- drivers/scsi/iscsi_tcp.c | 7 ++++--- include/linux/sched/mm.h | 12 ++++++++++++ mm/page_alloc.c | 10 ++++++---- mm/vmscan.c | 17 +++++++++++------ net/core/dev.c | 7 ++++--- net/core/sock.c | 7 ++++--- 8 files changed, 54 insertions(+), 42 deletions(-) -- 2.12.2