Hi All, We've posted v4 patchset introducing a new "perfer-many" memory policy https://lore.kernel.org/lkml/1615952410-36895-1-git-send-email-feng.tang@xxxxxxxxx/ , for which Michal Hocko gave many comments while pointing out some problems, and we also found some semantics confusion about 'prefer' and 'local' policy, as well as some duplicated code. This patchset tries to address them. Please help to review, thanks! The patchset has been run with some sanity test like 'stress-ng' and 'ltp', and no problem found. Thanks, Feng Changelogs: v2: * rename mempolicy_nodemask_intersects() to mempolicy_in_oom_domain() and correct commit log (Michal Hocko) * change the mpol syscall param sanity check (Michal Hocko) * combine the 3/4 and 4/4 in v1 into one patch, and further clean the logic (Michal Hocko) v1: * use helper func instead of macro for patch 2/4 (David Rientjes) * fix a possible null pointer case in patch 3/4 * update commit log for 1/4 RFC v2: * add for oom check fix patch 1/4 * add the unification patch for mpol preprocess 2/4 Feng Tang (3): mm/mempolicy: cleanup nodemask intersection check for oom mm/mempolicy: don't handle MPOL_LOCAL like a fake MPOL_PREFERRED policy mm/mempolicy: unify the parameter sanity check for mbind and set_mempolicy include/linux/mempolicy.h | 2 +- include/uapi/linux/mempolicy.h | 1 - mm/mempolicy.c | 205 ++++++++++++++++++++--------------------- mm/oom_kill.c | 2 +- 4 files changed, 103 insertions(+), 107 deletions(-) -- 2.7.4