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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id AAA5BC433EF for ; Mon, 7 Mar 2022 05:14:47 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 416A68D0003; Mon, 7 Mar 2022 00:14:47 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 3C6768D0001; Mon, 7 Mar 2022 00:14:47 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 28F678D0003; Mon, 7 Mar 2022 00:14:47 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (relay.hostedemail.com [64.99.140.26]) by kanga.kvack.org (Postfix) with ESMTP id 1C06C8D0001 for ; Mon, 7 Mar 2022 00:14:47 -0500 (EST) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id E5A1F23A7F for ; Mon, 7 Mar 2022 05:14:46 +0000 (UTC) X-FDA: 79216425372.10.CD3D688 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by imf19.hostedemail.com (Postfix) with ESMTP id D9A391A0009 for ; Mon, 7 Mar 2022 05:14:45 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1646630085; x=1678166085; h=from:to:cc:subject:references:date:in-reply-to: message-id:mime-version; bh=UMP7lv683/qTxlg+vOYWPsU7kqxuJTPwb+RKjmZ6+Tc=; b=juCnUQUqZhIpPRpXUpCjl254Ufst8WPjak/zoJfnnBkHyx1l/uVZaOOZ EMpXayR62vC5cGbdbsbqoGJheyou5C+qfAyIx8r2zN8ZkjgwoIkbXYckE qhvmR97Cmgn5UIOO77ICnCn+1yw8cu9ljL4rUjdwIORrFORh8WDUW73eA TGHmsPivtjyHMCyFT0XDSF58blVtsotYhUsuWYYNmthcTrmD0mkq1TBsc nB37hj3+/SRZzF6kQmKbqa/xiEPq0InCTauNY9B/K91/ppitVdIF1fG7m 6UQ11NIRK+xKpcW2MRMl5fT6vwPoTIRapl1+sRAs9BkSlzhN0kzvNWAaS Q==; X-IronPort-AV: E=McAfee;i="6200,9189,10278"; a="253131554" X-IronPort-AV: E=Sophos;i="5.90,160,1643702400"; d="scan'208";a="253131554" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Mar 2022 21:14:44 -0800 X-IronPort-AV: E=Sophos;i="5.90,160,1643702400"; d="scan'208";a="512538262" Received: from yhuang6-desk2.sh.intel.com (HELO yhuang6-desk2.ccr.corp.intel.com) ([10.239.13.94]) by orsmga006-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Mar 2022 21:14:39 -0800 From: "Huang, Ying" To: Miaohe Lin Cc: , , , , , , , , , , , , , , , , , Subject: Re: [PATCH 14/16] mm/migration: fix potential invalid node access for reclaim-based migration References: <20220304093409.25829-1-linmiaohe@huawei.com> <20220304093409.25829-15-linmiaohe@huawei.com> Date: Mon, 07 Mar 2022 13:14:37 +0800 In-Reply-To: <20220304093409.25829-15-linmiaohe@huawei.com> (Miaohe Lin's message of "Fri, 4 Mar 2022 17:34:07 +0800") Message-ID: <87a6e25ooy.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 X-Rspamd-Queue-Id: D9A391A0009 X-Stat-Signature: dwdzfiakncwktb97tqf51sfd736ue8m8 X-Rspam-User: Authentication-Results: imf19.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=juCnUQUq; spf=none (imf19.hostedemail.com: domain of ying.huang@intel.com has no SPF policy when checking 192.55.52.120) smtp.mailfrom=ying.huang@intel.com; dmarc=pass (policy=none) header.from=intel.com X-Rspamd-Server: rspam07 X-HE-Tag: 1646630085-846981 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: Miaohe Lin writes: > If we failed to setup hotplug state callbacks for mm/demotion:online in > some corner cases, node_demotion will be left uninitialized. Invalid node > might be returned from the next_demotion_node() when doing reclaim-based > migration. Use kcalloc to allocate node_demotion to fix the issue. > > Fixes: ac16ec835314 ("mm: migrate: support multiple target nodes demotion") > Signed-off-by: Miaohe Lin LGTM! Thanks! Reviewed-by: "Huang, Ying" Best Regards, Huang, Ying > --- > mm/migrate.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/mm/migrate.c b/mm/migrate.c > index 279940c0c064..7b1c0b988234 100644 > --- a/mm/migrate.c > +++ b/mm/migrate.c > @@ -2516,9 +2516,9 @@ static int __init migrate_on_reclaim_init(void) > { > int ret; > > - node_demotion = kmalloc_array(nr_node_ids, > - sizeof(struct demotion_nodes), > - GFP_KERNEL); > + node_demotion = kcalloc(nr_node_ids, > + sizeof(struct demotion_nodes), > + GFP_KERNEL); > WARN_ON(!node_demotion); > > ret = cpuhp_setup_state_nocalls(CPUHP_MM_DEMOTION_DEAD, "mm/demotion:offline",