From patchwork Mon Jun 24 16:37:07 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 807052 Delivered-To: patch@linaro.org Received: by 2002:a5d:508d:0:b0:362:4979:7f74 with SMTP id a13csp1970190wrt; Mon, 24 Jun 2024 09:38:47 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCVoxmyG/lR8ePV9yLWpV3L2vA2fR9DoHj2VyTUeyLEOUr+2B78IvYA+T47RVSTmJ3chWu7rJXLtnibk6thFNpod X-Google-Smtp-Source: AGHT+IHpWDlzSnlzYyfhT9wDdNhg6RGWsprX/wg7uOlJigmyo0cxV8Iur7U69dA9G94wlwibazaF X-Received: by 2002:a05:622a:651:b0:440:5bd6:15a with SMTP id d75a77b69052e-444d9178006mr49121271cf.14.1719247126783; Mon, 24 Jun 2024 09:38:46 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1719247126; cv=pass; d=google.com; s=arc-20160816; b=jpjVLyr5qUvanhkmh98QhSJrC8LfCjjW1I3Ey8ZOzM8jQIJH0GIbv3dS7Lt4jH4qri eCimm1CB5lQVtfe1MyNqWgh73nm5hkMzbbrIrzEDg4q7Wa7HmUYGu9fWWQctpkw/wVHh p9C/jB7pJW+RjHEw1HkzvASh081X+cRI/ecgH08vtvdGgH3ws+38vuKp2FatydwHjipJ +scDz/ZoYnPK4QAXR4xTQQ/YWlnG+JLGGXaHBfByUQ5qBc+DaGlyoPMpFMJ6TQlfgTIW riqZY6Dk6TFdVyhmH54sgMbygLvY8iweZvjx2eZXv7QeqPDgSTJVE/J11ku2qSlL4Yn4 vEOg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature:arc-filter:dmarc-filter:delivered-to; bh=SrCxBFT93U8CJ1nvwrPN+BMwH2/X4fu8lRHcWVhXQz8=; fh=oUdlCGl+3qy3cXVPxX2rni00O5FZdQ9LfqUzmQ4bHLM=; b=cDkjieKnB3pFPynYPX2+s4s21/9hoJsgdu8NBDWjr2ZYLhNH7AXWays2vmmkivCbT+ jwizGmheFzA427xlTqjNhvOlq+gz45ovX0GJSMD6rZg2fpDVtZ6N8UHpmKpX+aFQqKWi 7EpG/6+XWO0uD1A7iRhEv49ADE/MJ+pZQqsRqJ/64n050cnDA5KJDeQ7VhJCo3egSXDC HunC5GgHdSLZrCeGOkhrc/nFOOS46JX4pmwoeQw/QVaJBVR3avQUjH7ctX/D485WvYLJ SRyrsbgCVrR6JAxaUGDcK1OPJPdbQGoBbO6al/ZyloPp6s3nofRjPtbrWcL8mAYMR4Jc 8QZA==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=hR9kAiRb; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces+patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="libc-alpha-bounces+patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from server2.sourceware.org (server2.sourceware.org. [8.43.85.97]) by mx.google.com with ESMTPS id d75a77b69052e-444c65344f7si78727511cf.388.2024.06.24.09.38.46 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 24 Jun 2024 09:38:46 -0700 (PDT) Received-SPF: pass (google.com: domain of libc-alpha-bounces+patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) client-ip=8.43.85.97; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=hR9kAiRb; arc=pass (i=1); spf=pass (google.com: domain of libc-alpha-bounces+patch=linaro.org@sourceware.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="libc-alpha-bounces+patch=linaro.org@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 67654384AB6D for ; Mon, 24 Jun 2024 16:38:46 +0000 (GMT) X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from dfw.source.kernel.org (dfw.source.kernel.org [IPv6:2604:1380:4641:c500::1]) by sourceware.org (Postfix) with ESMTPS id 9ECB1385842D for ; Mon, 24 Jun 2024 16:38:19 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 9ECB1385842D Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=kernel.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=kernel.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 9ECB1385842D Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2604:1380:4641:c500::1 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1719247102; cv=none; b=dVrC6hJZUVk4+R8dfKEjvH65W2Nbz+5b/ARgASnr1y2Ttr8PqAb/EPMrqN3rRN32YZzmjphkr6aoeyt0C+205GJPReh0cXgf8rxvmSbomhqgq0bCp/+2kbNtfsFr+6w4lyMzC0aazt5b1g2e7AzP525uuszQ5+zaaJSrJKs2kjM= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1719247102; c=relaxed/simple; bh=YaBYUnqmG+n4LXnma2Z355DDZuqflriGSA+my20kuNc=; h=DKIM-Signature:From:To:Subject:Date:Message-Id:MIME-Version; b=lRZQhOBRNIZERS67Q7mU+kwzr35XQYEipM8IudyRhRpGG4+Us/Exc+eQDnYSmh3d+EoB/Za6D6SkwqgsiWXhAxOk8SPygn8fPaydlpS/At79Tyg841EyZhYQtoIQTBaktVbF53/0P4Hp74Uz8RTcMJvqugzNTmr8cq2LngtXUDc= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 4681D60DCA; Mon, 24 Jun 2024 16:38:19 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id C59C8C32782; Mon, 24 Jun 2024 16:38:12 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1719247099; bh=YaBYUnqmG+n4LXnma2Z355DDZuqflriGSA+my20kuNc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=hR9kAiRbkPdSRmhr6Eizj3di1WfTP49V/w1YOyPaZim5rmw36OARQQmRPJoJIgcc+ S4v6weKyemGxTeHfB6coHy40+7J8WwAqDr2nZbjBKjkhR9pEXksYh4lK6/uVwva9ag DxvpQk7ryDzKF8/l6QScCn61hEnSrMxLQrk7/f3P77LzhPLcr9Y0MRsnu/mYbLIeMl wEA4icKt3bELxbwttXXVIjoQjV4+pH+CiRResb8t2jJV/+LRGOsJqZQCouZxyctCWJ M/pWQWarPBHgrmvXXw9jiSVKx7MmK8dQ9v5SoJljL0czI9ePB0E2yF+juRGV4cW/Wr G9znttjNqjk7A== From: Arnd Bergmann To: linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Arnd Bergmann , Thomas Bogendoerfer , linux-mips@vger.kernel.org, Helge Deller , linux-parisc@vger.kernel.org, "David S. Miller" , Andreas Larsson , sparclinux@vger.kernel.org, Michael Ellerman , Nicholas Piggin , Christophe Leroy , "Naveen N . Rao" , linuxppc-dev@lists.ozlabs.org, Brian Cain , linux-hexagon@vger.kernel.org, Guo Ren , linux-csky@vger.kernel.org, Heiko Carstens , linux-s390@vger.kernel.org, Rich Felker , John Paul Adrian Glaubitz , linux-sh@vger.kernel.org, "H. Peter Anvin" , Alexander Viro , Christian Brauner , linux-fsdevel@vger.kernel.org, libc-alpha@sourceware.org, musl@lists.openwall.com, stable@vger.kernel.org Subject: [PATCH v2 09/13] csky, hexagon: fix broken sys_sync_file_range Date: Mon, 24 Jun 2024 18:37:07 +0200 Message-Id: <20240624163707.299494-10-arnd@kernel.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20240624163707.299494-1-arnd@kernel.org> References: <20240624163707.299494-1-arnd@kernel.org> MIME-Version: 1.0 X-Spam-Status: No, score=-11.6 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libc-alpha-bounces+patch=linaro.org@sourceware.org From: Arnd Bergmann Both of these architectures require u64 function arguments to be passed in even/odd pairs of registers or stack slots, which in case of sync_file_range would result in a seven-argument system call that is not currently possible. The system call is therefore incompatible with all existing binaries. While it would be possible to implement support for seven arguments like on mips, it seems better to use a six-argument version, either with the normal argument order but misaligned as on most architectures or with the reordered sync_file_range2() calling conventions as on arm and powerpc. Cc: stable@vger.kernel.org Acked-by: Guo Ren Signed-off-by: Arnd Bergmann --- arch/csky/include/uapi/asm/unistd.h | 1 + arch/hexagon/include/uapi/asm/unistd.h | 1 + 2 files changed, 2 insertions(+) diff --git a/arch/csky/include/uapi/asm/unistd.h b/arch/csky/include/uapi/asm/unistd.h index 7ff6a2466af1..e0594b6370a6 100644 --- a/arch/csky/include/uapi/asm/unistd.h +++ b/arch/csky/include/uapi/asm/unistd.h @@ -6,6 +6,7 @@ #define __ARCH_WANT_SYS_CLONE3 #define __ARCH_WANT_SET_GET_RLIMIT #define __ARCH_WANT_TIME32_SYSCALLS +#define __ARCH_WANT_SYNC_FILE_RANGE2 #include #define __NR_set_thread_area (__NR_arch_specific_syscall + 0) diff --git a/arch/hexagon/include/uapi/asm/unistd.h b/arch/hexagon/include/uapi/asm/unistd.h index 432c4db1b623..21ae22306b5d 100644 --- a/arch/hexagon/include/uapi/asm/unistd.h +++ b/arch/hexagon/include/uapi/asm/unistd.h @@ -36,5 +36,6 @@ #define __ARCH_WANT_SYS_VFORK #define __ARCH_WANT_SYS_FORK #define __ARCH_WANT_TIME32_SYSCALLS +#define __ARCH_WANT_SYNC_FILE_RANGE2 #include