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 320A8D6D231 for ; Wed, 27 Nov 2024 19:32:16 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3E8BB6B0082; Wed, 27 Nov 2024 14:32:16 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 3A1506B0085; Wed, 27 Nov 2024 14:32:16 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 238BA6B0088; Wed, 27 Nov 2024 14:32:16 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 0770F6B0082 for ; Wed, 27 Nov 2024 14:32:16 -0500 (EST) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 5AB051217DC for ; Wed, 27 Nov 2024 19:32:15 +0000 (UTC) X-FDA: 82832870946.02.7C3D47B Received: from nyc.source.kernel.org (nyc.source.kernel.org [147.75.193.91]) by imf09.hostedemail.com (Postfix) with ESMTP id 52A0C140017 for ; Wed, 27 Nov 2024 19:32:09 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=X2BtrIqN; spf=pass (imf09.hostedemail.com: domain of maz@kernel.org designates 147.75.193.91 as permitted sender) smtp.mailfrom=maz@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1732735927; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=wYD9+WzWy/AtpAhh9/Y90J+SPB0CH5V5FKAn0rVlHi0=; b=V6kYYqp+xpbu63iUNrmPReoe43/t081HUaQQqS6woWvOBfINd57mMMwQDLc6raSwlwR8rq OfLWqAZE6QOykzlEkfnIUT0qwwY+ivHnUAWhvQf/EE+DxLMP1WQTtoHx667DCWPKHnBwdp XcKPEqA4eYu5yAYpqd4w0TI0FzSle/E= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1732735927; a=rsa-sha256; cv=none; b=AxEpYd9Nkfr5mXqIbtbHpNAbmPMwzKuwHZ3cepPWrOKpjLlt/ZNR6/oEixlYQkAwdEjAS0 sw53+1Ncd7fBNn2/RNBlN+v1Kxw+NVyAHpkMtVgLFJsmQ2MDZ9DJPr6ZhPcLKWggBitnpP eydXcccqLduJHwXBlMly/AZKulAvpww= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=X2BtrIqN; spf=pass (imf09.hostedemail.com: domain of maz@kernel.org designates 147.75.193.91 as permitted sender) smtp.mailfrom=maz@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by nyc.source.kernel.org (Postfix) with ESMTP id 25421A439F3; Wed, 27 Nov 2024 19:30:18 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7BD69C4CED2; Wed, 27 Nov 2024 19:32:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1732735930; bh=xrciW+EMhZ5UEofbJw9NwB4YNk6WJ7ZsUg3ugalAKtY=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=X2BtrIqNGPOvV+49M5YnEnvMfq90m+ylhD7PzWNtlQWXRcWLiIC9o7ibIu7Z+6NCF kcXzlV4NXbHYexopnI8wyMqZtXl1aARG1Kv+1kHo2QdWtEH8r51A6kx0Z+b8YMEuGQ KkVWB5pfPFETZ3jygkOvTt1oTUJ7ox8ovqX6d1E+iA+5p2Dg3oRun7qGKNbz7lmsz9 P2yGA8boYanYTYFxQR6QsePoSp98SjRizDnHD/Y6HoJ2E4HX1u+AiXq7pnGqhQjajY UFL0t9n5dlc0Yh9Rql7BGoHCScG0i7PhlQ+71XDRGrapyLXfaRB16QrJ7c3W0qJT2C zsuLVCEMA8n/A== Received: from sofa.misterjones.org ([185.219.108.64] helo=goblin-girl.misterjones.org) by disco-boy.misterjones.org with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.95) (envelope-from ) id 1tGNlf-00GLsr-Kw; Wed, 27 Nov 2024 19:32:07 +0000 Date: Wed, 27 Nov 2024 19:32:06 +0000 Message-ID: <867c8ov5ft.wl-maz@kernel.org> From: Marc Zyngier To: Mike Rapoport Cc: linux-kernel@vger.kernel.org, Alexander Gordeev , Andreas Larsson , Andrew Morton , Arnd Bergmann , Borislav Petkov , Catalin Marinas , Christophe Leroy , Dan Williams , Dave Hansen , David Hildenbrand , "David S. Miller" , Davidlohr Bueso , Greg Kroah-Hartman , Heiko Carstens , Huacai Chen , Ingo Molnar , Jiaxun Yang , John Paul Adrian Glaubitz , Jonathan Cameron , Jonathan Corbet , Michael Ellerman , Palmer Dabbelt , "Rafael J. Wysocki" , Rob Herring , Samuel Holland , Thomas Bogendoerfer , Thomas Gleixner , Vasily Gorbik , Will Deacon , Zi Yan , devicetree@vger.kernel.org, linux-acpi@vger.kernel.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-cxl@vger.kernel.org, linux-doc@vger.kernel.org, linux-mips@vger.kernel.org, linux-mm@kvack.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, loongarch@lists.linux.dev, nvdimm@lists.linux.dev, sparclinux@vger.kernel.org, x86@kernel.org, Jonathan Cameron Subject: Re: [PATCH v4 24/26] arch_numa: switch over to numa_memblks In-Reply-To: <20240807064110.1003856-25-rppt@kernel.org> References: <20240807064110.1003856-1-rppt@kernel.org> <20240807064110.1003856-25-rppt@kernel.org> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM-LB/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL-LB/10.8 EasyPG/1.0.0 Emacs/29.4 (aarch64-unknown-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII X-SA-Exim-Connect-IP: 185.219.108.64 X-SA-Exim-Rcpt-To: rppt@kernel.org, linux-kernel@vger.kernel.org, agordeev@linux.ibm.com, andreas@gaisler.com, akpm@linux-foundation.org, arnd@arndb.de, bp@alien8.de, catalin.marinas@arm.com, christophe.leroy@csgroup.eu, dan.j.williams@intel.com, dave.hansen@linux.intel.com, david@redhat.com, davem@davemloft.net, dave@stgolabs.net, gregkh@linuxfoundation.org, hca@linux.ibm.com, chenhuacai@kernel.org, mingo@redhat.com, jiaxun.yang@flygoat.com, glaubitz@physik.fu-berlin.de, jonathan.cameron@huawei.com, corbet@lwn.net, mpe@ellerman.id.au, palmer@dabbelt.com, rafael@kernel.org, robh@kernel.org, samuel.holland@sifive.com, tsbogend@alpha.franken.de, tglx@linutronix.de, gor@linux.ibm.com, will@kernel.org, ziy@nvidia.com, devicetree@vger.kernel.org, linux-acpi@vger.kernel.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-cxl@vger.kernel.org, linux-doc@vger.kernel.org, linux-mips@vger.kernel.org, linux-mm@kvack.org, linux-riscv@lists.infradead.org, linux-s39 0@vger.k ernel.org, linux-sh@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, loongarch@lists.linux.dev, nvdimm@lists.linux.dev, sparclinux@vger.kernel.org, x86@kernel.org, Jonathan.Cameron@huawei.com X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false X-Rspamd-Queue-Id: 52A0C140017 X-Rspam-User: X-Rspamd-Server: rspam07 X-Stat-Signature: jcf47wemb5h9gi8at6ru1bw8bodp9aua X-HE-Tag: 1732735929-436763 X-HE-Meta: U2FsdGVkX1+9ifD7brpt4ar0Xs48r+VDW0gi/21hIQ0qJwMY+XqCd7/mNm8ku4uFUvCIPg0wziRtju8iKyFW5ju4Sfyq0MBObMH2jKanWBewZLnOLmTRxykal8YVSam5UmAm/O0XJYA7SguaXeH3JoSIKa+4pgloNP7NIag+tcU4/OO6faNIrn82ItHb6+9fddUeeauDfYYU2O+9JmcjiiIvx0u/d8hq7CX22ZDQAg297cOSqrHYz0u4lsIY5/mEjjNA5v+eppO5dl1kwhv1Gc5KrfkPYRAXjqEuWC8DfSdhbhWOgL/KGBiI17qUH3J7sd/3Nb1Nlz9XXBkCDtIi+oADxntzp5Ewa40jj4v8TX+1zJhJE2ziN3azEyMirHywqKgG+raqt0gAnAKuFTk3/xQ1boJo3Ji8EMpjKzGnNkDYOSq87Lp2VmXlZTi9k3KzhH3xDAGLDheTTl+lEtUjCX0ZS+Shfh2T15apC31wfToE4eQWWRCGDYKmpNMGtRZZVVrl58QkHwMijS5BdolFD/XXIiXDjvdq9XyhYS3AmNNM/zHd3v+k6Z9NdHcEG+1hvtYiz+Luajbtf7EZXD0fJbppcIvB6bm7WHsi7hxOlP6Bvj5+avnOW9hfuyixJQoPEPmnkPZ584oVPyQX0k/eYeQ9GmQr3lZ1SIKdYvXWHlDZ6yz15qfXbl8sCI5C+2Ay7u7rICmJIBQQjoGt0VFt2yRZJ4+9A0dU/qq4IIceyPMwuBJPYw5EPfamg2wnR8yQbIoSqM04uP0oWsomt1w+uNlwUBokWjaIxvZMIoexHi6rpULomZ2vGyxo3q3eE3ayAIOtjnUbrKN8y4LGG9OCO/8xhvnpnonqI/iiiOfoWqRfy3n3QB8W/R0UxMlG2LovkCMY7sYPPYoV8IykyxGnvpPy48Fb5JJsEZBt0tf/77ZSWbRD3hTyn8TUjJMffN+3aVMTCPzkT7ebvCEs0n/ V2TF4id1 FPDFV83ZYWJspuH63GUsm7BHb5+e2KgCFfCL2nlLGSxHggsuSaKherPcMPjplNH+rf3hxoeKJ7WLBmRHe+trq9Pn4GNnX9QZyJ33VqO3lznJ9Jh6sUsM2ULBfkm/8tfMrLz9UqE55SuVMo4dHDcFRayDLHxpM/biOQNOwgJPn/tvW7iJbg/iSQmZXv9ZwfmKSLKt39AuDjlfP3H/T8muEczPCXeS3D7W/Xr9gRPW6Zlc6+oORAggnAJ+qKU8BrvGpquR36YC7ohlFPX5ROieNtZ+8pWUawWm6KSpL3UWA36s45QBzzHIeDm1Z7/1H0bwPPOIQV189Fo7I4n8c2WNogDi8wKnw+00awZb/ZCCkDZ2EDp92C0l8/00LU5slks78M/tM6nW9zWvNUAYpHDq4+FW2F+rxjOzXJbHCIVObl38rg/0= 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: Hi Mike, Sorry for reviving a rather old thread. On Wed, 07 Aug 2024 07:41:08 +0100, Mike Rapoport wrote: > > From: "Mike Rapoport (Microsoft)" > > Until now arch_numa was directly translating firmware NUMA information > to memblock. > > Using numa_memblks as an intermediate step has a few advantages: > * alignment with more battle tested x86 implementation > * availability of NUMA emulation > * maintaining node information for not yet populated memory > > Adjust a few places in numa_memblks to compile with 32-bit phys_addr_t > and replace current functionality related to numa_add_memblk() and > __node_distance() in arch_numa with the implementation based on > numa_memblks and add functions required by numa_emulation. > > Signed-off-by: Mike Rapoport (Microsoft) > Tested-by: Zi Yan # for x86_64 and arm64 > Reviewed-by: Jonathan Cameron > Tested-by: Jonathan Cameron [arm64 + CXL via QEMU] > Acked-by: Dan Williams > Acked-by: David Hildenbrand > --- > drivers/base/Kconfig | 1 + > drivers/base/arch_numa.c | 201 +++++++++++-------------------------- > include/asm-generic/numa.h | 6 +- > mm/numa_memblks.c | 17 ++-- > 4 files changed, 75 insertions(+), 150 deletions(-) > [...] > static int __init numa_register_nodes(void) > { > int nid; > - struct memblock_region *mblk; > - > - /* Check that valid nid is set to memblks */ > - for_each_mem_region(mblk) { > - int mblk_nid = memblock_get_region_node(mblk); > - phys_addr_t start = mblk->base; > - phys_addr_t end = mblk->base + mblk->size - 1; > - > - if (mblk_nid == NUMA_NO_NODE || mblk_nid >= MAX_NUMNODES) { > - pr_warn("Warning: invalid memblk node %d [mem %pap-%pap]\n", > - mblk_nid, &start, &end); > - return -EINVAL; > - } > - } > This hunk has the unfortunate side effect of killing my ThunderX extremely early at boot time, as this sorry excuse for a machine really relies on the kernel recognising that whatever NUMA information the FW offers is BS. Reverting this hunk restores happiness (sort of). FWIW, I've posted a patch with such revert at [1]. Thanks, M. [1] https://lore.kernel.org/r/20241127193000.3702637-1-maz@kernel.org -- Without deviation from the norm, progress is not possible.