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 9077BC35FFC for ; Tue, 25 Mar 2025 13:18:39 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 572CD280037; Tue, 25 Mar 2025 09:18:38 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 51D91280036; Tue, 25 Mar 2025 09:18:38 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 34A4F280037; Tue, 25 Mar 2025 09:18:38 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 0FCF5280036 for ; Tue, 25 Mar 2025 09:18:38 -0400 (EDT) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 7D00E16041F for ; Tue, 25 Mar 2025 13:18:38 +0000 (UTC) X-FDA: 83260127916.09.6CB86C7 Received: from flow-b2-smtp.messagingengine.com (flow-b2-smtp.messagingengine.com [202.12.124.137]) by imf26.hostedemail.com (Postfix) with ESMTP id 56BBD140008 for ; Tue, 25 Mar 2025 13:18:36 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=arndb.de header.s=fm1 header.b=RTmZlZug; dkim=pass header.d=messagingengine.com header.s=fm2 header.b="B rsqAGk"; spf=pass (imf26.hostedemail.com: domain of arnd@arndb.de designates 202.12.124.137 as permitted sender) smtp.mailfrom=arnd@arndb.de; dmarc=pass (policy=none) header.from=arndb.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1742908716; 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=7uJCsElQFNSpp9yzC8ZbXV0umGMGK1SA9vUHShT/4EA=; b=8c7yFwpMjOoBMxL2WVztE8UIuUa2ngjGoxxE1YEXuEmT/0pKuHmQDh7WDsywtK9U41TWkD Jdw0kK9CXEqU2vYqnJoHYugoY0oxMDi1NFF2ER6MsldNSnvMIHgYwINqG+M64XadK8j8SJ hkEb+w33iqXHn2PARzSjrpELkdLzbeo= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=arndb.de header.s=fm1 header.b=RTmZlZug; dkim=pass header.d=messagingengine.com header.s=fm2 header.b="B rsqAGk"; spf=pass (imf26.hostedemail.com: domain of arnd@arndb.de designates 202.12.124.137 as permitted sender) smtp.mailfrom=arnd@arndb.de; dmarc=pass (policy=none) header.from=arndb.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1742908716; a=rsa-sha256; cv=none; b=28pntPL8TyO/2dTabqer7z2oD+gujmvBm+rs6TQ10PBoT1sUwlSHtyhipeExnQ+Xopslas zJRG2fo7nc5RIef6xyP66XR01wmBNqfbXppVSMyHBnRpwWQONk5INExWllyaqJ89ZmA/S0 oaufSTnIOlpB3ukO3ntH3AiJY2zyQn0= Received: from phl-compute-07.internal (phl-compute-07.phl.internal [10.202.2.47]) by mailflow.stl.internal (Postfix) with ESMTP id 2825F1D4180B; Tue, 25 Mar 2025 09:18:34 -0400 (EDT) Received: from phl-imap-11 ([10.202.2.101]) by phl-compute-07.internal (MEProxy); Tue, 25 Mar 2025 09:18:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arndb.de; h=cc :cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm1; t=1742908714; x=1742915914; bh=7uJCsElQFNSpp9yzC8ZbXV0umGMGK1SA9vUHShT/4EA=; b= RTmZlZugzrB2Xpp2UNcmLvJ2IMWE1xdWamWnVAKU5SL2JAeh+Vzm0Hxb/YmAQpL9 mEwDWbQjzIx8gVGWNo0GPuIaibxKIdPeyAEapZyop9O5Rc5uyFfdcKWj0mXXSMHV tLwO/tb+6euKYNuN8vIwReVYQNxdhZzz2I3fCYWR5ISpjQrEgrTKfSAa4Tgb96FJ NNa5zvPiac2GlPmzCNKAS2OeK8aRzxprhy6dPptHE2iTkY1G7veSKjDOshKcIkI1 NwEKOiSERdwYBqG5jZ84YGoyPos94OBmvljQjiCmF1cWxzKZZsaQrQNkJ10870a8 HF71PKpsLcSgvdnbenoHmw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=1742908714; x= 1742915914; bh=7uJCsElQFNSpp9yzC8ZbXV0umGMGK1SA9vUHShT/4EA=; b=B rsqAGkTFZ3e7xsyWdPC+FXwVIENkzzxocGOEQttZ5W+XR+GQpG4zAES5j4XgeCAd eD6S/IG0JPU4POYy8+9bTeUcSTeohmduHNbYSLdztyMoKfkDfg9G2NzngxuQGixe eFxOgaxRleW2TpHUcOSW9GfofxLfMGG9wCfGXT/joYzpEbxOPO7rs3hh4UFbFfb0 Q4I0uXtwCKM17CbTMUdn151LDA7ZP089MSe7ujEUqAgobo5lJWYXNygdFIUSvaxn StCRqsm02WEA4qHGz0MwAqLsSWSHI8yWHtiBId1grcbZVOuf26de0t1VAbsZUzkt vt88I1ftKH2A7KsJ1ALJg== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefvddrtddtgdduiedvjeehucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgfnhhsuhgsshgtrhhisggv pdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttdenucesvcftvggtihhpih gvnhhtshculddquddttddmnecujfgurhepofggfffhvfevkfgjfhfutgfgsehtjeertder tddtnecuhfhrohhmpedftehrnhguuceuvghrghhmrghnnhdfuceorghrnhgusegrrhhnug gsrdguvgeqnecuggftrfgrthhtvghrnhephfdthfdvtdefhedukeetgefggffhjeeggeet fefggfevudegudevledvkefhvdeinecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrg hmpehmrghilhhfrhhomheprghrnhgusegrrhhnuggsrdguvgdpnhgspghrtghpthhtohep hedtpdhmohguvgepshhmthhpohhuthdprhgtphhtthhopegtthhsrghifeeltdesrghnug gvshhtvggthhdrtghomhdprhgtphhtthhopehmrghrkhdrrhhuthhlrghnugesrghrmhdr tghomhdprhgtphhtthhopegrthhishhhphesrghtihhshhhprghtrhgrrdhorhhgpdhrtg hpthhtohepphhrrggshhgrkhgrrhdrmhgrhhgruggvvhdqlhgrugdrrhhjsegsphdrrhgv nhgvshgrshdrtghomhdprhgtphhtthhopegrnhhuphessghrrghinhhfrghulhhtrdhorh hgpdhrtghpthhtoheptghuihihuhhnhhhuihessgihthgvuggrnhgtvgdrtghomhdprhgt phhtthhopehluhiguhdrkhgvrhhnvghlsegshihtvggurghntggvrdgtohhmpdhrtghpth htohepphgrlhhmvghrsegurggssggvlhhtrdgtohhmpdhrtghpthhtohepsghoqhhunhdr fhgvnhhgsehgmhgrihhlrdgtohhm X-ME-Proxy: Feedback-ID: i56a14606:Fastmail Received: by mailuser.phl.internal (Postfix, from userid 501) id DF35E2220071; Tue, 25 Mar 2025 09:18:29 -0400 (EDT) X-Mailer: MessagingEngine.com Webmail Interface MIME-Version: 1.0 X-ThreadId: T218a0d8b70d1a53d Date: Tue, 25 Mar 2025 14:17:44 +0100 From: "Arnd Bergmann" To: "Peter Zijlstra" , guoren Cc: "Greg Kroah-Hartman" , "Linus Torvalds" , "Paul Walmsley" , "Palmer Dabbelt" , "Anup Patel" , "Atish Patra" , "Oleg Nesterov" , "Kees Cook" , "Thomas Gleixner" , "Will Deacon" , "Mark Rutland" , "Christian Brauner" , "Andrew Morton" , "Steven Rostedt" , "Eric Dumazet" , "Chen Wang" , "Inochi Amaoto" , gaohan@iscas.ac.cn, shihua@iscas.ac.cn, jiawei@iscas.ac.cn, wuwei2016@iscas.ac.cn, "Drew Fustini" , "Lad, Prabhakar" , ctsai390@andestech.com, wefu@redhat.com, "Jakub Kicinski" , "Paolo Abeni" , "Josef Bacik" , "David Sterba" , "Ingo Molnar" , "Boqun Feng" , "Xiao W Wang" , qingfang.deng@siflower.com.cn, "Leonardo Bras" , "Jisheng Zhang" , "Conor.Dooley" , "Samuel Holland" , yongxuan.wang@sifive.com, "Xu Lu" , "David Hildenbrand" , "Ruan Jinjie" , "Yunhui Cui" , "Kefeng Wang" , qiaozhe@iscas.ac.cn, "Ard Biesheuvel" , "Alexei Starovoitov" , linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org, kvm@vger.kernel.org, kvm-riscv@lists.infradead.org, linux-mm@kvack.org, linux-crypto@vger.kernel.org, bpf@vger.kernel.org, linux-input@vger.kernel.org, linux-perf-users@vger.kernel.org, linux-serial@vger.kernel.org, linux-fsdevel@vger.kernel.org, Linux-Arch , maple-tree@lists.infradead.org, linux-trace-kernel@vger.kernel.org, Netdev , linux-atm-general@lists.sourceforge.net, linux-btrfs@vger.kernel.org, netfilter-devel@vger.kernel.org, coreteam@netfilter.org, linux-nfs@vger.kernel.org, linux-sctp@vger.kernel.org, linux-usb@vger.kernel.org, linux-media@vger.kernel.org Message-Id: In-Reply-To: <20250325122640.GK36322@noisy.programming.kicks-ass.net> References: <20250325121624.523258-1-guoren@kernel.org> <20250325122640.GK36322@noisy.programming.kicks-ass.net> Subject: Re: [RFC PATCH V3 00/43] rv64ilp32_abi: Build CONFIG_64BIT kernel-self with ILP32 ABI Content-Type: text/plain Content-Transfer-Encoding: 7bit X-Rspam-User: X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 56BBD140008 X-Stat-Signature: m3yeq4et3ntbuipitnnxhfnjkzuhsryy X-HE-Tag: 1742908716-699917 X-HE-Meta: U2FsdGVkX1/sLNrqXEICpXvrSxlnaMlWS9vnb12DupJ7P0ZNRuWmAhAXMoKJK6Vn0HcU+LpaMOzUV+KyfMUQlVfC6Ew5i2NQxZOy0CASpEAhbmVCMk7WEcKQVXExORcylwxa6RzcSyzHlcmA56Wb/v4/77Lit9TRLfjheKaenBoGmLJs5chYf5hoi2OT11c/+PeBcdlBnBEJHJG5eobuRyJl1jVahVmYJxxhTCZoFgWYOVC1yVT9r+RLtJ8dpHk4LP+7DRKqdGWKI+L239lDSXzzofgdfQZxemIwyq7xLoK97vulxp9b1rpNvtn+ADj/ZTtXUmhcTERCU0JSuZZlgJdOSi3D9Sj9ofQYkP+B3a0FAU4MVtGYW2haDkEoG5FL9UwIO0l8EvyOeubMlWjvJjaecyRzBS9uZmiJXQ5aZ5bK+MVT81+B1QCSm2af1WhJav31C9MmrN6paQGwP7JwOtHusgSF9/wg5YtJieAFHj6/dcCuAPfOHCZbl+Q8bKoKIQYMaTuUw15E8oGcXJQnXzEIl6D7K87fciHARIH04uWqg7kTAebMfb/wI0d8c0HWHShYQcSfzcX0hV+jI9DryuZJ/GJoMVS1OvSezSZkLbwmADHiPa7lSADcVW0mzuxaWEVSlEuUN/44MRSod3ozC0mgT++tuEbCzMOC2xdQqaTiwtU7q54JfcF2NrAF4QBERZsHdgYzcuQOEPwonblDD9rrRIIWiPecLaVUE5AJWU3aM605X7NCNJ4CgeHik0YsB9buOe23aR4xWa/R2zI0qz1IP1gkOQVeg9PrXuqLn7vcpWjbLxkkKgFCZrP7afJPFLqKCojy/ziLN++kUob2M3pdtxFLsGrmMn6oW1AwK9tKlrTfvDcWqsvfvx/whE5t2bnKOCeVhzX39RTr/y0p4zFPrqrgCP+aYfLsABLrYHrKJSWOcwgr4wYDuw4q75JNrYUfUdGFg0Ffk/JMthk Sl4mRUBQ OQCzxz/6afBj6i/u5+SdYQILWh+Q1QAfXXW9z07+9XUPMCWK1GqwEZ83mJ4Y5syBThKwMxkaHeUr35AOXqjFSVEXwvtqCOsTYzSeKAXk9SeT5a2ycDbi+wU6LMWMtEmfws+o8XIAL+IUNEk1kIGBkHuOEpBxmBaYS9CQzR4MXfkzZ2UaxUZ5jJhVpgzk58JBuSYKZxL6GaFU1F8DKmkc+HoGrGy8Smb0QKMaWxwEVnYf1nFWD1nziaocD1FuF0rApz9JK1eJ/3TQ0U6TI9w/rj1hJ+Imih5zsWGhBjmbQeKXR4q2qF3W+efnExzuP9W5d5KbMJielBH60/tH2f9s/aWoGxjlbHa5F1C8+mYwp4RmiqVw= 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 Tue, Mar 25, 2025, at 13:26, Peter Zijlstra wrote: > On Tue, Mar 25, 2025 at 08:15:41AM -0400, guoren@kernel.org wrote: >> From: "Guo Ren (Alibaba DAMO Academy)" >> >> Since 2001, the CONFIG_64BIT kernel has been built with the LP64 ABI, >> but this patchset allows the CONFIG_64BIT kernel to use an ILP32 ABI > > Please, don't do this. This adds a significant maintenance burden on all > of us. It would be easier to this with CONFIG_64BIT disabled and continue treating CONFIG_64BIT to be the same as BITS_PER_LONG=64, but I still think it's fundamentally a bad idea to support this in mainline kernels in any variation, other than supporting regular 32-bit compat mode tasks on a regular 64-bit kernel. >> The patchset targets RISC-V and is built on the RV64ILP32 ABI, which >> was introduced into RISC-V's psABI in January 2025 [1]. This patchset >> equips an rv64ilp32-abi kernel with all the functionalities of a >> traditional lp64-abi kernel, yet restricts the address space to 2GiB. >> Hence, the rv64ilp32-abi kernel simultaneously supports lp64-abi >> userspace and ilp32-abi (compat) userspace, the same as the >> traditional lp64-abi kernel. You declare the syscall ABI to be the native 64-bit ABI, but this is fundamentally not true because a many uapi structures are defined in terms of 'long' or pointer values, in particular in the ioctl call. This might work for an rv64ilp32 userspace that uses the same headers and the same types, but you explicitly say that the goal is to run native rv64 or compat rv32 tasks, not rv64ilp32 (thanks!). As far as I can tell, there is no way to rectify this design flaw other than to drop support for 64-bit userspace and only support regular rv32 userspace. I'm also skeptical that supporting rv64 userspace helps in practice other than for testing, since generally most memory overhead is in userspace rather than the kernel, and there is much more to gain from shrinking the larger userspace by running rv32 compat mode binaries on a 64-bit kernel than the other way round. If you remove the CONFIG_64BIT changes that Peter mentioned and the support for ilp64 userland from your series, you end up with a kernel that is very similar to a native rv32 kernel but executes as rv64ilp32 and runs rv32 userspace. I don't have any objections to that approach, and the same thing has come up on arm64 as a possible idea as well, but I don't know if that actually brings any notable advantage over an rv32 kernel. Are there CPUs that can run rv64 kernels and rv32 userspace but not rv32 kernels, similar to what we have on Arm Cortex-A76 and Cortex-A510? Arnd