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 9DF37C5475B for ; Thu, 29 Feb 2024 03:26:47 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BB7576B006E; Wed, 28 Feb 2024 22:26:46 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id B675B6B0072; Wed, 28 Feb 2024 22:26:46 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A55E06B0075; Wed, 28 Feb 2024 22:26:46 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 951886B006E for ; Wed, 28 Feb 2024 22:26:46 -0500 (EST) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 2FE24811ED for ; Thu, 29 Feb 2024 03:26:46 +0000 (UTC) X-FDA: 81843404412.19.7C6D0D9 Received: from out30-113.freemail.mail.aliyun.com (out30-113.freemail.mail.aliyun.com [115.124.30.113]) by imf28.hostedemail.com (Postfix) with ESMTP id 869E9C0008 for ; Thu, 29 Feb 2024 03:26:42 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=linux.alibaba.com header.s=default header.b=jVy3tpiZ; dmarc=pass (policy=none) header.from=linux.alibaba.com; spf=pass (imf28.hostedemail.com: domain of rongwei.wang@linux.alibaba.com designates 115.124.30.113 as permitted sender) smtp.mailfrom=rongwei.wang@linux.alibaba.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1709177204; 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:dkim-signature; bh=xlpZ40fyxUbubbTrqSw9nnznE3ry+hnF/QQY7Ns4xkk=; b=GYZiPKp/KdYOqtBe3kCGCCv7rEYVc76zPMSkmkfSih0yZSC5RfNtwHSsNyRimXDqsGfPnm KqTi+itMgOd4cjCmT7yJ1rx6+bvqYsAUjny0IAv1LFOclWOArWbXl+HB+hJrNjLlN4UFHx IVnfKaYnnwOc2nqKjUzLeBWnlFMLmnM= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=linux.alibaba.com header.s=default header.b=jVy3tpiZ; dmarc=pass (policy=none) header.from=linux.alibaba.com; spf=pass (imf28.hostedemail.com: domain of rongwei.wang@linux.alibaba.com designates 115.124.30.113 as permitted sender) smtp.mailfrom=rongwei.wang@linux.alibaba.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1709177204; a=rsa-sha256; cv=none; b=Wnp7k005Rs5Wul4tgGaczmPeSr9b29cnPGYENjNfZgGvzN5aVP5sN5lG+mozuNJv4EBLPN KkwggEvPt8hBhf8xTiJuVirFgNaxttdFkXJoQjSZnHeBch51Tw/of+BlZHINhHEgq1lb8d CJ4LhcVWH88IJ9S4Ntm3RfmfSJxv4N0= DKIM-Signature:v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.alibaba.com; s=default; t=1709177198; h=Message-ID:Date:MIME-Version:Subject:To:From:Content-Type; bh=xlpZ40fyxUbubbTrqSw9nnznE3ry+hnF/QQY7Ns4xkk=; b=jVy3tpiZmx89rqp0uqlSQke/6zBAIvvUWQF45ymW7ibeWk6s2lvk3A5ibXV9k9lOLdfY0zQFdbs3//ACTG3N0iLkS7vWYA5+KeMh02gBpCVr4X54Fjyr+vU1p2N9plX6kd+viaxPhjye0JWo5AoyLISgnr9Nl4ozDf4iOI3JgVA= X-Alimail-AntiSpam:AC=PASS;BC=-1|-1;BR=01201311R101e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=ay29a033018046059;MF=rongwei.wang@linux.alibaba.com;NM=1;PH=DS;RN=12;SR=0;TI=SMTPD_---0W1RUjY4_1709177194; Received: from 30.240.97.87(mailfrom:rongwei.wang@linux.alibaba.com fp:SMTPD_---0W1RUjY4_1709177194) by smtp.aliyun-inc.com; Thu, 29 Feb 2024 11:26:36 +0800 Message-ID: <0e14358e-334c-4f7c-be36-7205ad2bb21d@linux.alibaba.com> Date: Thu, 29 Feb 2024 11:26:34 +0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v1 0/2] support NUMA emulation for genertic arch To: Pierre Gondois , Mike Rapoport 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> <6843f6b2-4c41-4649-9885-88fde7215e3f@arm.com> Content-Language: en-US From: Rongwei Wang In-Reply-To: <6843f6b2-4c41-4649-9885-88fde7215e3f@arm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 869E9C0008 X-Stat-Signature: ggyh4uik3zbw8eh3ze57hp4k9can9dnw X-HE-Tag: 1709177202-611020 X-HE-Meta: U2FsdGVkX19y75HjM7QuZDpYMQYXSKsKUPYQ2jliLpAaNPxolou7skrKGaqxd6+c7Lmq2vnPYh107k5+ON2H0NdwsRZ/efzh1g9Do4gD8EdSDMj2kUUvEYaruksdRDyOaWng8R+P8zd5zX7HVY6F/q/bYV0gN7tDjd9TSWMsJAJv4fsj+XoLgy3eQQhXO8ROm0YAVIW+9BjiVee0cK9D0sldY2pvLVRpw6OjVVBVO0m04c+ggV9zs37MGQOpiXmqFmhammX55VtXtEG+Vb8fN97Y4g9NHvlX3/DB85gJPUEk6TrNW36S3eSXyjuyuWx1dZK7VSuM+jy14Rzt+FaZcltgcBPKqutd3y1q6SNhwTfdcZnJYwGep73UqBEX8sjufZ+YslHOfr3hgf7wYjBCqFYctZhvhpcQwkHKuv85gPdE0hLxmfZSTNmQcUZ+nQStHtOsrAuFedLPkZO3xGe2/zKb6n+Kwr7gnMmiRuiJchnAiPHqYHnw7OFHr5eg59jyikL6iGpwny9DOPBNCwllzz1DUBdiDnmFv7MqTbBv3S8aq/oIp3yVK4ThRzwITmLS37Etgz0fvNh1HSo9hJq7kiOxk/aI9ZsfwZUfDyie1dBFO5zGmPyRad39sjvWve+TC6N+D2id/8HZ8IAIiuK1v0FEgnlMg0X96fW3JX0PTlbc2jgEC5PLlec2c1YvYTuNFSfLy9f7ePydwvtdO+n90JxTiqLlMXKJDuush9NdZ7hJzWlk8tRPnP5CxqABb3NSv0KsH4cG5mx4rq1qLxmhzhyNZ0v34WhTmHMHhdJkY0DFZKdlIjqwmGWZPgqmNmIKPU2ZDvgPtZ7jayn56FrbpooIvm5WnXqbT6MsvgpcFnCYXhmsM31xwbW5n8fmwgEYmeofR8KfQT0pNw9DGeyPlPv9kSfId9jyjijLaZCb+jbYjFIa0Q5/Uo+edMIzZNl5Nx0DebmF0JOjWam0bzE 2e7n8kRH X97aL6RSuI08LQavCdh6iOusw9E4jnfwzbfg+o30SDJq5YX05r1kHWsJxaBlsOq5B1mw5ZRGFUQAjjTuiS5GB3Ydy41Kdc4efGdgpU4wnK7erE5go8H5s/ByNjfh/Hb9T3rwPUXQpVt4D5R9jSiKjAFvtiELs9e2AU2STAHcrNgqBmH2VRiRDcuof7sL1tW3sF/4MpbXd68bukyzFW0MXNnTFRJTvQqVB9kbafzQ/KC0dAJ82rNJokvTPQgH5wv3qRQCzAsjyWwHNi1L9dZZuOv7IiL6O8csgb89TJa5mdDIrs+8fP0Gol3DRrgYS7wGmVOeYY43xvzUNablEOqw7g5uM5R8E18vQWVL+UyMtrJDDmvJfTT5MXDfQIm1wGOVzm+DFxFmpPAu0QD0= 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 11:51 PM, Pierre Gondois wrote: > > > 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. Hi Pierre > 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 Thanks, my fault, zhaoyu also found this (thanks). > - 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 > Actually, I have not think about how to ask the question. I'm also try to original direction like RFC version, but found much APIs need to be updated, and there are many APIs are similar but a little difference. That seems much modification needed in more than one arch if go in original direction. But if all think original method is right, I will continue it in RFC version. Thanks for your time to review. > 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 >>> >>> >> -- Thanks, -wrw