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 88BCEC48BC3 for ; Wed, 21 Feb 2024 15:52:05 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 12E216B0078; Wed, 21 Feb 2024 10:52:05 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 0DEEA6B007E; Wed, 21 Feb 2024 10:52:05 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id F0F146B0080; Wed, 21 Feb 2024 10:52:04 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id E0F2B6B0078 for ; Wed, 21 Feb 2024 10:52:04 -0500 (EST) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id EEE7D120B09 for ; Wed, 21 Feb 2024 15:52:03 +0000 (UTC) X-FDA: 81816252126.28.AB15990 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by imf21.hostedemail.com (Postfix) with ESMTP id 1ACA31C0004 for ; Wed, 21 Feb 2024 15:52:01 +0000 (UTC) Authentication-Results: imf21.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf21.hostedemail.com: domain of pierre.gondois@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=pierre.gondois@arm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1708530722; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=B6y4EpwvhHlegR8nXpMuIw48A5IKLkbpKjM4w8Ne4o4=; b=0Bd8SrjlszJD/6eZc3kXyHAphItHMIHDN53lOkQN/S+KTUvznDAk3qznhEDR0Ts/ygunZf S9ZiowZr1xb4Gq2vmY0dDZW5QjB4P1QLbFvlWMTYrIcrcbxi9M/5Dbbt5YX4+typ72Nc22 8zYWJ7zt+R72Me7dOImG8/86L88RJJE= ARC-Authentication-Results: i=1; imf21.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf21.hostedemail.com: domain of pierre.gondois@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=pierre.gondois@arm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1708530722; a=rsa-sha256; cv=none; b=q6bkbSJNiMc+hj8H8/1vZUoi0/Lce9m9KZ5NKk95g/9nlZqJxVpyEgJeBTAkuKIRALuGQ1 QEefLi8AlqxCe8qi5yHGWwDfhQ9mKse5rTMyCmy0TJfu+8ZYG+lQ3G7iD9q1R1pRBdHiE5 gdogQ+LGSBh2vqoxtz5zkwr288Xrnqg= Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 7123E1007; Wed, 21 Feb 2024 07:52:39 -0800 (PST) Received: from [10.34.100.133] (e126645.nice.arm.com [10.34.100.133]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 112653F73F; Wed, 21 Feb 2024 07:51:58 -0800 (PST) Message-ID: <6843f6b2-4c41-4649-9885-88fde7215e3f@arm.com> Date: Wed, 21 Feb 2024 16:51:57 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v1 0/2] support NUMA emulation for genertic arch Content-Language: en-US To: Mike Rapoport , Rongwei Wang Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, akpm@linux-foundation.org, gregkh@linuxfoundation.org, rafael@kernel.org, mingo@redhat.com, dave.hansen@linux.intel.com, luto@kernel.org, teng.ma@linux.alibaba.com References: <20231012024842.99703-1-rongwei.wang@linux.alibaba.com> <20240220113602.6943-1-rongwei.wang@linux.alibaba.com> From: Pierre Gondois In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 1ACA31C0004 X-Stat-Signature: ux3wg5gd93fdm1nw7q31a8ydru4qpk1s X-Rspam-User: X-HE-Tag: 1708530721-447881 X-HE-Meta: U2FsdGVkX1+x79Awl+q3nswD5RmtSYjdMzyEwQ+msBrdssIU76hE7QXJ1GMHm2cJTgLMSo8a+aP8JwR+ah0LE6tAVGXe0AIacyhwdsHTFszYmpbtzScyBkWdEdw9pXGCUrjxdQ4Rp6b4g4fXMWcVyEqiq8V+SLIFbYpXXsxe1YxGEJWeeVSqLScLc7FS991wm/J+TfAekOiLkTaMybYczl+NionmrFPSe9+NRdfdOZ9GLg0wu03DVfS+cd3q1sM/7YDLzNPNkdU/Ehmp8k7eZ5rIx6M0J7WvI962dwLSh6YI/N/Q5gg1/P+rV5a1LfgzquriHCJMk9v8LTo+rQpZbmse+bueL+R7psE1CtZSizE+Ba8LLsRmIa551jYCJOgAZZM87UroYEWUN5XPAB7lu+eFep/jZC330CsVAA/BDpPxCrwtJ8g6WaDgXsWmLl9jtRi6RxaBYO0AYcpLZkth1ZUuAEQF4wEhvfbrCLnFMLWwkJ7jLc15V8njzSxJOeoSE7Mqo4eK/5tqYtSyQH5Gn4RR1YqmAB4TKsW4JTXsjRaLuwqd8bAhXLPHegFJsYoXB4YErz1QWkWEH99GWu+GaIropu7vLvMAKKi/uo3lGbF5JY2ssyCKhJ9dUbQo2ZnOQfhQ3e903rUAB6kNb3ZTrLG/QB4krujkSzsYA/Qyv+/SlwUpFRzgVichlhc1Q9Qag6DX/0OBPykTVGWijuS02IqDJq/kfvwv33QFj6+RKBBjApXKrow5+WHA36Gzzpzxnjl2wxHBI35D/jm6cGXjkyQJKuDknDpfpAvGmV+JZmf474ClopR5jaL1P+1jqM1Ilf+n2DWLZmWMCkCopq2T51JIwCeSdSai 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: List-Subscribe: List-Unsubscribe: On 2/21/24 07:12, Mike Rapoport wrote: > On Tue, Feb 20, 2024 at 07:36:00PM +0800, Rongwei Wang wrote: >> A brief introduction >> ==================== >> >> The NUMA emulation can fake more node base on a single >> node system, e.g. > > ... > >> Lastly, it seems not a good choice to realize x86 and other genertic >> archs separately. But it can indeed avoid some architecture related >> APIs adjustments and alleviate future maintenance. > > Why is it a good choice? Copying 1k lines from x86 to a new place and > having to maintain two copies does not sound like a good choice to me. I agree it would be better to avoid duplication and extract the common code from the original x86 implementation. The RFC seemed to go more in this direction. Also NITs: - genertic -> generic - there is a 'ifdef CONFIG_X86' in drivers/base/numa_emulation.c, but the file should not be used by x86 as the arch doesn't set CONFIG_GENERIC_ARCH_NUMA Regards, Pierre > >> The previous RFC link see [1]. >> >> Any advice are welcome, Thanks! >> >> Change log >> ========== >> >> RFC v1 -> v1 >> * add new CONFIG_NUMA_FAKE for genertic archs. >> * keep x86 implementation, realize numa emulation in driver/base/ for >> genertic arch, e.g, arm64. >> >> [1] RFC v1: https://patchwork.kernel.org/project/linux-arm-kernel/cover/20231012024842.99703-1-rongwei.wang@linux.alibaba.com/ >> >> Rongwei Wang (2): >> arch_numa: remove __init for early_cpu_to_node >> numa: introduce numa emulation for genertic arch >> >> drivers/base/Kconfig | 9 + >> drivers/base/Makefile | 1 + >> drivers/base/arch_numa.c | 32 +- >> drivers/base/numa_emulation.c | 909 ++++++++++++++++++++++++++++++++++ >> drivers/base/numa_emulation.h | 41 ++ >> include/asm-generic/numa.h | 2 +- >> 6 files changed, 992 insertions(+), 2 deletions(-) >> create mode 100644 drivers/base/numa_emulation.c >> create mode 100644 drivers/base/numa_emulation.h >> >> -- >> 2.32.0.3.gf3a3e56d6 >> >> >