[PATCH 1/2] mm: Replace nr_node_ids for loop with for_each_node in list lru

Vladimir Davydov vdavydov at parallels.com
Mon Sep 14 23:27:16 AEST 2015


On Mon, Sep 14, 2015 at 06:35:59PM +0530, Raghavendra K T wrote:
> On 09/14/2015 05:34 PM, Vladimir Davydov wrote:
> >On Mon, Sep 14, 2015 at 05:09:31PM +0530, Raghavendra K T wrote:
> >>On 09/14/2015 02:30 PM, Vladimir Davydov wrote:
> >>>On Wed, Sep 09, 2015 at 12:01:46AM +0530, Raghavendra K T wrote:
> >>>>The functions used in the patch are in slowpath, which gets called
> >>>>whenever alloc_super is called during mounts.
> >>>>
> >>>>Though this should not make difference for the architectures with
> >>>>sequential numa node ids, for the powerpc which can potentially have
> >>>>sparse node ids (for e.g., 4 node system having numa ids, 0,1,16,17
> >>>>is common), this patch saves some unnecessary allocations for
> >>>>non existing numa nodes.
> >>>>
> >>>>Even without that saving, perhaps patch makes code more readable.
> >>>
> >>>Do I understand correctly that node 0 must always be in
> >>>node_possible_map? I ask, because we currently test
> >>>lru->node[0].memcg_lrus to determine if the list is memcg aware.
> >>>
> >>
> >>Yes, node 0 is always there. So it should not be a problem.
> >
> >I think it should be mentioned in the comment to list_lru_memcg_aware
> >then.
> >
> 
> Something like this: ?

Yeah, looks good to me.

Thanks,
Vladimir

> static inline bool list_lru_memcg_aware(struct list_lru *lru)
> {
>         /*
>          * This needs node 0 to be always present, even
>          * in the systems supporting sparse numa ids.
>          */
>         return !!lru->node[0].memcg_lrus;
> }
> 
> 


More information about the Linuxppc-dev mailing list