Received: by 2002:a05:6a10:d5a5:0:0:0:0 with SMTP id gn37csp4400428pxb; Tue, 5 Oct 2021 02:16:00 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxiFO6lbSNI+Ld7v3MlrrADTrc91IRuPNRAsLLj/NtUbsjJvXnu7q6WMq6MT6QddXPmkQA5 X-Received: by 2002:a63:4f0d:: with SMTP id d13mr14522836pgb.169.1633425360580; Tue, 05 Oct 2021 02:16:00 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1633425360; cv=none; d=google.com; s=arc-20160816; b=gTc7BqeaS3ku7JBR6rUgPEqUdX3xnHYQl8iTWkj+z4xIRbITGPQ1UsE9EHjg1/+bUC XLhBhku4dD3FXbRGgI87KhdX11fgLWK3NcE4n/xX8eY5o10BuwldNh10FpURpwbE71ft lqQqGGNZV+VP8fki3wffNcEmWiZ9kcm6CiMQhhEuRGBKzuZyQ7tc1gp4P7CYWevw4XYg Bs8Ia0RIaMPAh1ATSwL3UNtvChKuLzTEq3gTqZf6u9dtje7ZkjJkJ5hPlmE7Zdp49Xli QGnA5WNLwli9eKg3cO2YoF/tks3gMVAhGRo5bA+M08M/yoP3Kw9t3bNoUxPzSJpV2r41 y+cQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date; bh=Seym6kBDFQWMQzF2w/4ECO/JlbdArhkpof5fgYocSoQ=; b=NRJcrF/ka4JPZUwCw6nze3rRUXwM3HA2psWDGROzRZk+y5l4hjmKkOb6hplawFdGPn JB3I3xsEdJeONz058sq8PIeIv0S/joaGR9QR9/3i+KDMte6gumyKaO6My9MvpoFTsisr 3EXQlXtlniQhgPN95cU9mPFUOXn+Vx6hyPDi75+m0mnbUd5PSKelceQko1Tc7G0Do7+s 5Av8D6+YLk1XS99iOX5C7TXiH9oo9XPyrOOsRdxxt1TtNMblGNB44BAsIzEy6Te0d7Gh WtWlkoDUcCSSLqtJGdu9rFdw+h7q0exS7U+zgJLr3LJDfYRPrDD8WfRE1Y1X09l03WFc 5FPQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id x63si19793676pfx.150.2021.10.05.02.15.46; Tue, 05 Oct 2021 02:16:00 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233438AbhJEJQp (ORCPT + 99 others); Tue, 5 Oct 2021 05:16:45 -0400 Received: from mail.kernel.org ([198.145.29.99]:34856 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233478AbhJEJQp (ORCPT ); Tue, 5 Oct 2021 05:16:45 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 0EA48613D5; Tue, 5 Oct 2021 09:14:52 +0000 (UTC) Date: Tue, 5 Oct 2021 11:14:50 +0200 From: Christian Brauner To: Palmer Dabbelt Cc: Arnd Bergmann , linux-riscv@lists.infradead.org, Paul Walmsley , aou@eecs.berkeley.edu, christian@brauner.io, linux-kernel@vger.kernel.org, kernel-team@android.com Subject: Re: [PATCH] RISC-V: Include clone3() on rv32 Message-ID: <20211005091450.yltwsjlzq6y732nv@wittgenstein> References: <20211004111758.rl2zq6l575hmcv22@wittgenstein> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Oct 04, 2021 at 05:35:40PM -0700, Palmer Dabbelt wrote: > On Mon, 04 Oct 2021 04:17:58 PDT (-0700), christian.brauner@ubuntu.com wrote: > > On Sun, Oct 03, 2021 at 05:30:24PM +0200, Arnd Bergmann wrote: > > > On Sun, Oct 3, 2021 at 2:58 AM Palmer Dabbelt wrote: > > > > > > > > From: Palmer Dabbelt > > > > > > > > As far as I can tell this should be enabled on rv32 as well, I'm not > > > > sure why it's rv64-only. checksyscalls is complaining about our lack of > > > > clone3() on rv32. > > > > > > > > Fixes: 56ac5e213933 ("riscv: enable sys_clone3 syscall for rv64") > > > > Signed-off-by: Palmer Dabbelt > > > > > > We should probably reverse the polarity of this symbol and force > > > architectures that don't implement it properly to say they don't > > > have it, but for now, it definitely makes sense to treat this the same > > > way on 32-bit and 64-bit risc-v. > > > > I think we had that discussion back when I added it and I think I even > > proposed that or you did but then we settled on __ARCH_WANT_SYS_CLONE3. > > Most likely because it fell in line with the other > > __ARCH_WANT_SYS_{CLONE,FORK}. > > > > I think at this point its alpha, ia64, nios, sparc, and sh that don't > > implement it. For some it looks trivial at first glance at least (Fwiw, > > nios implements sys_clone() but doesn't select __ARCH_WANT_SYS_CLONE3): > > > > diff --git a/arch/nios2/include/uapi/asm/unistd.h b/arch/nios2/include/uapi/asm/unistd.h > > index 0b4bb1d41b28..6c4f45abd3ab 100644 > > --- a/arch/nios2/include/uapi/asm/unistd.h > > +++ b/arch/nios2/include/uapi/asm/unistd.h > > @@ -18,6 +18,7 @@ > > > > #define sys_mmap2 sys_mmap_pgoff > > > > +#define __ARCH_WANT_SYS_CLONE3 > > #define __ARCH_WANT_RENAMEAT > > #define __ARCH_WANT_STAT64 > > #define __ARCH_WANT_SET_GET_RLIMIT > > diff --git a/arch/nios2/kernel/entry.S b/arch/nios2/kernel/entry.S > > index 0794cd7803df..c1804bda8259 100644 > > --- a/arch/nios2/kernel/entry.S > > +++ b/arch/nios2/kernel/entry.S > > @@ -396,6 +396,15 @@ ENTRY(sys_clone) > > RESTORE_SWITCH_STACK > > ret > > > > +/* > > + * int clone3(struct clone_args __user *, uargs, size_t, size) > > + */ > > +ENTRY(sys_clone3) > > + SAVE_SWITCH_STACK > > + call sys_clone3 > > + RESTORE_SWITCH_STACK > > + ret > > + > > ENTRY(sys_rt_sigreturn) > > SAVE_SWITCH_STACK > > mov r4, sp > > Thanks. > > I've put this on fixes, but if you're trying to do that refactoring I've > merged it in as a single patch on top of 5.15-rc1. That's on > palmer/riscv-clone3, in case it helps someone avoid a conflict when doing > that refactoring. I'd usually offer to do the refactoring, but I'm super > buried right now with all the RISC-V stuff ;) > > I want to call this fix because it's breaking my builds, these checksyscall > warnings have recently turned into errors. Oh yeah, please just merge your fix here for this issue. I think flipping the symbol isn't that pressing right now and fixing your builds is more urgent! :)