Re: [PATCH 6/8] Add __GFP_OTHER_NODE flag

From: KOSAKI Motohiro
Date: Mon Mar 07 2011 - 03:34:22 EST


> From: Andi Kleen <ak@xxxxxxxxxxxxxxx>
>
> Add a new __GFP_OTHER_NODE flag to tell the low level numa statistics
> in zone_statistics() that an allocation is on behalf of another thread.
> This way the local and remote counters can be still correct, even
> when background daemons like khugepaged are changing memory
> mappings.
>
> This only affects the accounting, but I think it's worth doing that
> right to avoid confusing users.
>
> I first tried to just pass down the right node, but this required
> a lot of changes to pass down this parameter and at least one
> addition of a 10th argument to a 9 argument function. Using
> the flag is a lot less intrusive.

Yes, less intrusive. But are you using current NUMA stastics on
practical system?
I didn't numa stat recent 5 years at all. So, I'm curious your usecase.
IOW, I haven't convinced this is worthful to consume new GFP_ flags bit.

_now_, I can say I don't found any bug in this patch.

>
> Open: should be also used for migration?
>
> Cc: aarcange@xxxxxxxxxx
> Signed-off-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>
> Reviewed-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx>
> ---
> include/linux/gfp.h | 2 ++
> include/linux/vmstat.h | 4 ++--
> mm/page_alloc.c | 2 +-
> mm/vmstat.c | 9 +++++++--
> 4 files changed, 12 insertions(+), 5 deletions(-)
>
> diff --git a/include/linux/gfp.h b/include/linux/gfp.h
> index 814d50e..a064724 100644
> --- a/include/linux/gfp.h
> +++ b/include/linux/gfp.h
> @@ -35,6 +35,7 @@ struct vm_area_struct;
> #define ___GFP_NOTRACK 0
> #endif
> #define ___GFP_NO_KSWAPD 0x400000u
> +#define ___GFP_OTHER_NODE 0x800000u



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/