linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Abhishek Goel <huntbag@linux.vnet.ibm.com>
To: "Huang, Ying" <ying.huang@intel.com>
Cc: Dave Hansen <dave.hansen@intel.com>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org,
	Zi Yan <ziy@nvidia.com>, David Hildenbrand <david@redhat.com>,
	Yang Shi <yang.shi@linux.alibaba.com>,
	Andrew Morton <akpm@linux-foundation.org>
Subject: Re: [PATCH -V11 2/9] mm/migrate: update node demotion order on hotplug events
Date: Sat, 26 Feb 2022 02:05:45 +0530	[thread overview]
Message-ID: <6afdded7-ae70-2412-4f15-f7951164049a@linux.vnet.ibm.com> (raw)
In-Reply-To: <87pmnb3ccr.fsf@yhuang6-desk2.ccr.corp.intel.com>

Hi Huang,

On 25/02/22 08:02, Huang, Ying wrote:
>
> We have run into a memory hotplug regression before.  Let's check
> whether the problem is similar.  Can you try the below debug patch?
>
> Best Regards,
> Huang, Ying
>
> ----------------------------8<------------------------------------------
>  From 500c0b53436b7a697ed5d77241abbc0d5d3cfc07 Mon Sep 17 00:00:00 2001
> From: Huang Ying <ying.huang@intel.com>
> Date: Wed, 29 Sep 2021 10:57:19 +0800
> Subject: [PATCH] mm/migrate: Debug CPU hotplug regression
>
> Signed-off-by: "Huang, Ying" <ying.huang@intel.com>
> ---
>   mm/migrate.c | 20 +++++++++++---------
>   1 file changed, 11 insertions(+), 9 deletions(-)
>
> diff --git a/mm/migrate.c b/mm/migrate.c
> index c7da064b4781..c4805f15e616 100644
> --- a/mm/migrate.c
> +++ b/mm/migrate.c
> @@ -3261,15 +3261,17 @@ static int __meminit migrate_on_reclaim_callback(struct notifier_block *self,
>    * The ordering is also currently dependent on which nodes have
>    * CPUs.  That means we need CPU on/offline notification too.
>    */
> -static int migration_online_cpu(unsigned int cpu)
> +static int migration_cpu_hotplug(unsigned int cpu)
>   {
> -	set_migration_target_nodes();
> -	return 0;
> -}
> +	static int nr_cpu_node_saved;
> +	int nr_cpu_node;
> +
> +	nr_cpu_node = num_node_state(N_CPU);
> +	if (nr_cpu_node != nr_cpu_node_saved) {
> +		set_migration_target_nodes();
> +		nr_cpu_node_saved = nr_cpu_node;
> +	}
>
> -static int migration_offline_cpu(unsigned int cpu)
> -{
> -	set_migration_target_nodes();
>   	return 0;
>   }
>
> @@ -3283,7 +3285,7 @@ static int __init migrate_on_reclaim_init(void)
>   	WARN_ON(!node_demotion);
>
>   	ret = cpuhp_setup_state_nocalls(CPUHP_MM_DEMOTION_DEAD, "mm/demotion:offline",
> -					NULL, migration_offline_cpu);
> +					NULL, migration_cpu_hotplug);
>   	/*
>   	 * In the unlikely case that this fails, the automatic
>   	 * migration targets may become suboptimal for nodes
> @@ -3292,7 +3294,7 @@ static int __init migrate_on_reclaim_init(void)
>   	 */
>   	WARN_ON(ret < 0);
>   	ret = cpuhp_setup_state(CPUHP_AP_MM_DEMOTION_ONLINE, "mm/demotion:online",
> -				migration_online_cpu, NULL);
> +				migration_cpu_hotplug, NULL);
>   	WARN_ON(ret < 0);
>
>   	hotplug_memory_notifier(migrate_on_reclaim_callback, 100);
This works. Applied this on 5.15 kernel and don't see any regression
compared to 5.14 kernel.
So, Have you posted this patch yet? Or any plans on inclusion of any
similar patch?





  reply	other threads:[~2022-02-25 23:35 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-21  6:39 [PATCH -V11 1/9] mm/numa: automatically generate node migration order Huang Ying
2021-07-21  6:39 ` [PATCH -V11 2/9] mm/migrate: update node demotion order on hotplug events Huang Ying
2022-02-23 23:02   ` Abhishek Goel
2022-02-24  0:05     ` Dave Hansen
2022-02-24 23:37       ` Abhishek Goel
2022-02-25  0:49         ` Dave Hansen
2022-02-25  2:32         ` Huang, Ying
2022-02-25 20:35           ` Abhishek Goel [this message]
2022-03-08 10:27           ` Oscar Salvador
2022-03-08 17:07             ` Dave Hansen
2022-03-08 18:56               ` Oscar Salvador
2022-03-09  0:29                 ` Huang, Ying
2021-07-21  6:39 ` [PATCH -V11 3/9] mm/migrate: enable returning precise migrate_pages() success count Huang Ying
2021-07-21  6:39 ` [PATCH -V11 4/9] mm/migrate: demote pages during reclaim Huang Ying
2021-07-21 21:11   ` Zi Yan
2021-07-21  6:39 ` [PATCH -V11 5/9] mm/vmscan: add page demotion counter Huang Ying
2021-07-21 21:13   ` Zi Yan
2021-07-21  6:39 ` [PATCH -V11 6/9] mm/vmscan: add helper for querying ability to age anonymous pages Huang Ying
2021-07-21 21:15   ` Zi Yan
2021-07-21  6:39 ` [PATCH -V11 7/9] mm/vmscan: Consider anonymous pages without swap Huang Ying
2021-07-21 21:21   ` Zi Yan
2021-07-21  6:39 ` [PATCH -V11 8/9] mm/vmscan: never demote for memcg reclaim Huang Ying
2021-07-21 21:38   ` Zi Yan
2021-07-21 21:58     ` Dave Hansen
2021-07-21 21:59       ` Zi Yan
2021-07-21 22:03       ` Yang Shi
2021-07-21  6:39 ` [PATCH -V11 9/9] mm/migrate: add sysfs interface to enable reclaim migration Huang Ying

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=6afdded7-ae70-2412-4f15-f7951164049a@linux.vnet.ibm.com \
    --to=huntbag@linux.vnet.ibm.com \
    --cc=akpm@linux-foundation.org \
    --cc=dave.hansen@intel.com \
    --cc=dave.hansen@linux.intel.com \
    --cc=david@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=yang.shi@linux.alibaba.com \
    --cc=ying.huang@intel.com \
    --cc=ziy@nvidia.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).