From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 333DDC433F5 for ; Tue, 21 Sep 2021 06:41:39 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id B7C6360F70 for ; Tue, 21 Sep 2021 06:41:38 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org B7C6360F70 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=kvack.org Received: by kanga.kvack.org (Postfix) id 16703900002; Tue, 21 Sep 2021 02:41:38 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 117FA6B0072; Tue, 21 Sep 2021 02:41:38 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id F222C900002; Tue, 21 Sep 2021 02:41:37 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0181.hostedemail.com [216.40.44.181]) by kanga.kvack.org (Postfix) with ESMTP id DEDF76B0071 for ; Tue, 21 Sep 2021 02:41:37 -0400 (EDT) Received: from smtpin11.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay02.hostedemail.com (Postfix) with ESMTP id 4984B2C59E for ; Tue, 21 Sep 2021 06:41:37 +0000 (UTC) X-FDA: 78610634634.11.1922D11 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by imf03.hostedemail.com (Postfix) with ESMTP id 51C0B30000AB for ; Tue, 21 Sep 2021 06:41:36 +0000 (UTC) X-IronPort-AV: E=McAfee;i="6200,9189,10113"; a="221407231" X-IronPort-AV: E=Sophos;i="5.85,310,1624345200"; d="scan'208";a="221407231" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 Sep 2021 23:41:34 -0700 X-IronPort-AV: E=Sophos;i="5.85,310,1624345200"; d="scan'208";a="511729870" Received: from yhuang6-desk2.sh.intel.com (HELO yhuang6-desk2.ccr.corp.intel.com) ([10.239.159.119]) by fmsmga008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 Sep 2021 23:41:31 -0700 From: "Huang, Ying" To: Thomas Gleixner Cc: Andrew Morton , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Dave Hansen , Yang Shi , Zi Yan , Michal Hocko , Wei Xu , Oscar Salvador , David Rientjes , Dan Williams , David Hildenbrand , Greg Thelen , Keith Busch Subject: Re: [PATCH] mm/migrate: fix CPUHP state to update node demotion order References: <20210918025849.88901-1-ying.huang@intel.com> <87lf3r7mqr.ffs@tglx> Date: Tue, 21 Sep 2021 14:41:29 +0800 In-Reply-To: <87lf3r7mqr.ffs@tglx> (Thomas Gleixner's message of "Mon, 20 Sep 2021 09:02:52 +0200") Message-ID: <877dfactwm.fsf@yhuang6-desk2.ccr.corp.intel.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=ascii Authentication-Results: imf03.hostedemail.com; dkim=none; dmarc=fail reason="No valid SPF, No valid DKIM" header.from=intel.com (policy=none); spf=none (imf03.hostedemail.com: domain of ying.huang@intel.com has no SPF policy when checking 192.55.52.120) smtp.mailfrom=ying.huang@intel.com X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 51C0B30000AB X-Stat-Signature: rfrbj9xtcbjotx17ciwu66fcohs591hb X-HE-Tag: 1632206496-732458 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: Thomas Gleixner writes: > On Sat, Sep 18 2021 at 10:58, Huang Ying wrote: >> @@ -72,6 +72,7 @@ enum cpuhp_state { >> CPUHP_SLUB_DEAD, >> CPUHP_DEBUG_OBJ_DEAD, >> CPUHP_MM_WRITEBACK_DEAD, >> + CPUHP_MM_DEMOTION_OFFLINE, > > Please keep the _DEAD convention in that section. The plugged CPU is > already gone. Sure. Will do that. >> CPUHP_MM_VMSTAT_DEAD, >> CPUHP_SOFTIRQ_DEAD, >> CPUHP_NET_MVNETA_DEAD, >> @@ -240,6 +241,7 @@ enum cpuhp_state { >> CPUHP_AP_BASE_CACHEINFO_ONLINE, >> CPUHP_AP_ONLINE_DYN, >> CPUHP_AP_ONLINE_DYN_END = CPUHP_AP_ONLINE_DYN + 30, >> + CPUHP_AP_MM_DEMOTION_ONLINE, > > Are there any ordering requirements of these states vs. other CPU > hotplug states? > > If not, then please use the dynamically allocated states. > > If so, then please add a comment: > > + /* Must be before CPUHP_XXX and after CPUHP_YYY */ > + CPUHP_MM_DEMOTION_OFFLINE, The callbacks need to be called after node_states[N_CPU] has been updated during CPU online/offline. While node_states[N_CPU] is updated in CPUHP_AP_ONLINE_DYN and CPUHP_MM_VMSTAT_DEAD. So the new state must be before CPUHP_MM_VMSTAT_DEAD for offline and after CPUHP_AP_ONLINE_DYN for online. I will update the patch and add the comments. Best Regards, Huang, Ying