Messages in this thread | | | Date | Tue, 1 Jun 2021 19:08:40 +0800 | From | Feng Tang <> | Subject | Re: [v3 PATCH 1/3] mm/mempolicy: cleanup nodemask intersection check for oom |
| |
On Tue, Jun 01, 2021 at 10:19:25AM +0200, Michal Hocko wrote: > On Mon 31-05-21 22:05:54, Feng Tang wrote: > > mempolicy_nodemask_intersects() is used in oom case to check if a > > task may have memory allocated on some memory nodes. > > > > As it's only used by OOM check, rename it to mempolicy_in_oom_domain() > > to reduce confusion. > > > > As only for 'bind' policy, the nodemask is a force requirement for > > from where to allocate memory, only do the intesection check for it, > > and return true for all other policies. > > I would slightly rephrase the above to > " > mempolicy_nodemask_intersects seem to be a general purpose mempolicy > function. In fact it is partially tailored for the OOM purpose instead. > The oom proper is the only existing user so rename the function to make > that purpose explicit. > > While at it drop the MPOL_INTERLEAVE as those allocations never has a > nodemask defined (see alloc_page_interleave) so this is a dead code > and a confusing one because MPOL_INTERLEAVE is a hint rather than a hard > requirement so it shouldn't be considered during the OOM. > > The final code can be reduced to a check for MPOL_BIND which is the only > memory policy that is a hard requirement and thus relevant to a > constrained OOM logic. > "
This is much clearer, thanks!
Will change this and the descrition in over-letter.
> > Suggested-by: Michal Hocko <mhocko@suse.com> > > Signed-off-by: Feng Tang <feng.tang@intel.com> > > To the change itself > Acked-by: Michal Hocko <mhocko@suse.com>
Thanks!
- Feng
| |