[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87r0ckozs4.fsf@yhuang6-desk2.ccr.corp.intel.com>
Date: Wed, 26 Jun 2024 16:48:27 +0800
From: "Huang, Ying" <ying.huang@...el.com>
To: Tvrtko Ursulin <tursulin@...lia.com>
Cc: linux-mm@...ck.org, linux-kernel@...r.kernel.org,
kernel-dev@...lia.com, Tvrtko Ursulin <tvrtko.ursulin@...lia.com>, Mel
Gorman <mgorman@...e.de>, Peter Zijlstra <peterz@...radead.org>, Ingo
Molnar <mingo@...hat.com>, Rik van Riel <riel@...riel.com>, Johannes
Weiner <hannes@...xchg.org>, "Matthew Wilcox (Oracle)"
<willy@...radead.org>, Dave Hansen <dave.hansen@...el.com>, Andi Kleen
<ak@...ux.intel.com>, Michal Hocko <mhocko@...e.com>, David Rientjes
<rientjes@...gle.com>
Subject: Re: [PATCH] mm/numa_balancing: Teach mpol_to_str about the
balancing mode
Tvrtko Ursulin <tursulin@...lia.com> writes:
> From: Tvrtko Ursulin <tvrtko.ursulin@...lia.com>
>
> If a task has had MPOL_F_NUMA_BALANCING set it is useful to show that in
IIUC, MPOL_F_NUMA_BALANCING works for VMA area via mbind() too.
> procfs. Teach the mpol_to_str helper about its existance and while at it
> update the comment to account for "weighted interleave" when suggesting
> a recommended buffer size.
Otherwise LGTM, Thanks!
Reviewed-by: "Huang, Ying" <ying.huang@...el.com>
> Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@...lia.com>
> References: bda420b98505 ("numa balancing: migrate on fault among multiple bound nodes")
> Cc: Huang Ying <ying.huang@...el.com>
> Cc: Mel Gorman <mgorman@...e.de>
> Cc: Peter Zijlstra <peterz@...radead.org>
> Cc: Ingo Molnar <mingo@...hat.com>
> Cc: Rik van Riel <riel@...riel.com>
> Cc: Johannes Weiner <hannes@...xchg.org>
> Cc: "Matthew Wilcox (Oracle)" <willy@...radead.org>
> Cc: Dave Hansen <dave.hansen@...el.com>
> Cc: Andi Kleen <ak@...ux.intel.com>
> Cc: Michal Hocko <mhocko@...e.com>
> Cc: David Rientjes <rientjes@...gle.com>
> ---
> mm/mempolicy.c | 10 +++++++---
> 1 file changed, 7 insertions(+), 3 deletions(-)
>
> diff --git a/mm/mempolicy.c b/mm/mempolicy.c
> index aec756ae5637..d147287c4505 100644
> --- a/mm/mempolicy.c
> +++ b/mm/mempolicy.c
> @@ -3293,8 +3293,9 @@ int mpol_parse_str(char *str, struct mempolicy **mpol)
> * @pol: pointer to mempolicy to be formatted
> *
> * Convert @pol into a string. If @buffer is too short, truncate the string.
> - * Recommend a @maxlen of at least 32 for the longest mode, "interleave", the
> - * longest flag, "relative", and to display at least a few node ids.
> + * Recommend a @maxlen of at least 42 for the longest mode, "weighted
> + * interleave", the longest flag, "balancing", and to display at least a few
> + * node ids.
> */
> void mpol_to_str(char *buffer, int maxlen, struct mempolicy *pol)
> {
> @@ -3331,12 +3332,15 @@ void mpol_to_str(char *buffer, int maxlen, struct mempolicy *pol)
> p += snprintf(p, buffer + maxlen - p, "=");
>
> /*
> - * Currently, the only defined flags are mutually exclusive
> + * The below two flags are mutually exclusive:
> */
> if (flags & MPOL_F_STATIC_NODES)
> p += snprintf(p, buffer + maxlen - p, "static");
> else if (flags & MPOL_F_RELATIVE_NODES)
> p += snprintf(p, buffer + maxlen - p, "relative");
> +
> + if (flags & MPOL_F_NUMA_BALANCING)
> + p += snprintf(p, buffer + maxlen - p, "balancing");
> }
>
> if (!nodes_empty(nodes))
Powered by blists - more mailing lists