> > > > It mean we shouldn't assume parent and child have the same mems_allowed, > > > > perhaps. > > > > > > > > > > I'd be happy to have that in oom_kill_process() if you pass the > > > enum oom_constraint and only do it for CONSTRAINT_CPUSET. Please add a > > > followup patch to my latest patch series. > > > > Please clarify. > > Why do we need CONSTRAINT_CPUSET filter? > > > > Because we don't care about intersecting mems_allowed unless it's a cpuset > constrained oom. OK, I caught your mention. My version have following hunk. I think simple nodemask!=NULL check is is more cleaner. ==================================================== void out_of_memory(struct zonelist *zonelist, gfp_t gfp_mask, int order, nodemask_t *nodemask) { (snip) if (constraint != CONSTRAINT_MEMORY_POLICY) nodemask = NULL; (snip) read_lock(&tasklist_lock); __out_of_memory(gfp_mask, order, nodemask); read_unlock(&tasklist_lock); -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>