Re: [PATCH 2/6] mm/vmscan: use node_is_toptier helper in node_reclaim

From: Ying Huang
Date: Wed Jun 01 2022 - 02:12:33 EST


On Tue, 2022-05-31 at 17:20 +0530, Aneesh Kumar K.V wrote:
> Davidlohr Bueso <dave@xxxxxxxxxxxx> writes:
>
> > We have helpers for a reason.
> >
> > Signed-off-by: Davidlohr Bueso <dave@xxxxxxxxxxxx>
> > ---
> >  mm/vmscan.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/mm/vmscan.c b/mm/vmscan.c
> > index 1678802e03e7..cb583fcbf5bf 100644
> > --- a/mm/vmscan.c
> > +++ b/mm/vmscan.c
> > @@ -4750,7 +4750,7 @@ int node_reclaim(struct pglist_data *pgdat, gfp_t gfp_mask, unsigned int order)
> >   * over remote processors and spread off node memory allocations
> >   * as wide as possible.
> >   */
> > - if (node_state(pgdat->node_id, N_CPU) && pgdat->node_id != numa_node_id())
> > + if (node_is_toptier(pgdat->node_id) && pgdat->node_id != numa_node_id())
> >   return NODE_RECLAIM_NOSCAN;
> >  
> >
> >   if (test_and_set_bit(PGDAT_RECLAIM_LOCKED, &pgdat->flags))
>
>
> Are we really looking at the top tier in a tiered memory hierarchy here?
> The comment seems to suggest we are looking at local NUMA node?

The code change itself is correct. But it is an implementation details
that node_is_toptier() == node_state(, N_CPU). And after we supporting
more memory tiers (like GPU, HBM), we will change the implementation of
node_is_toptier() soon. So I think that it's better to keep the
original code.

Best Regards,
Huang, Ying