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 B24A5C7115A for ; Sun, 22 Jun 2025 09:53:07 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5524F6B009E; Sun, 22 Jun 2025 05:53:07 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 529CB6B009F; Sun, 22 Jun 2025 05:53:07 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4401C6B00A0; Sun, 22 Jun 2025 05:53:07 -0400 (EDT) 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 34F2A6B009E for ; Sun, 22 Jun 2025 05:53:07 -0400 (EDT) Received: from smtpin04.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id D6769C1C43 for ; Sun, 22 Jun 2025 09:53:06 +0000 (UTC) X-FDA: 83582573172.04.C35A38F Received: from pegase1.c-s.fr (pegase1.c-s.fr [93.17.236.30]) by imf19.hostedemail.com (Postfix) with ESMTP id D302B1A0003 for ; Sun, 22 Jun 2025 09:53:04 +0000 (UTC) Authentication-Results: imf19.hostedemail.com; dkim=none; spf=pass (imf19.hostedemail.com: domain of christophe.leroy@csgroup.eu designates 93.17.236.30 as permitted sender) smtp.mailfrom=christophe.leroy@csgroup.eu; dmarc=pass (policy=quarantine) header.from=csgroup.eu ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1750585985; a=rsa-sha256; cv=none; b=zT5fDTiikxbqwYLVtzoCrXd1jbBa+9/2vteb3dV95GgSOgK87yGyvqSCoaBiII4J2EUCX0 ALF7AB2gQt4BIK/uo8ia2x/GpZJ2+POi+DW08DAFFLYPHebJdVr76WiCcyGsa2I0l+jUDx 7GRsxifq6FrBgYXqXQnIWSmfKWy3+Vc= ARC-Authentication-Results: i=1; imf19.hostedemail.com; dkim=none; spf=pass (imf19.hostedemail.com: domain of christophe.leroy@csgroup.eu designates 93.17.236.30 as permitted sender) smtp.mailfrom=christophe.leroy@csgroup.eu; dmarc=pass (policy=quarantine) header.from=csgroup.eu ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1750585985; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=enzeZUj+kKxYmtyCZSW9Sx+o5ZoEi/BDEDgBPT3rIG0=; b=yzrpBsZVKosZ4UVpVpFKZdgfzYSJlmpSNVotAP3/iEh1mR1++LWLo25cMZELpyTzYVu5KL Wk+PufzUau30Q5oqGmS5C1fWRRLF0LlFlDcRRKppyZjPR64BfzhSIvw2PQ5ShX4nwCiHvN y47HT73gjPDZxwUQB99l2mfEQXIntR4= Received: from localhost (mailhub3.si.c-s.fr [192.168.12.233]) by localhost (Postfix) with ESMTP id 4bQ62r3M2Lz9sd1; Sun, 22 Jun 2025 11:52:52 +0200 (CEST) X-Virus-Scanned: amavisd-new at c-s.fr Received: from pegase1.c-s.fr ([192.168.12.234]) by localhost (pegase1.c-s.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id X7xjR-bygz_Z; Sun, 22 Jun 2025 11:52:52 +0200 (CEST) Received: from messagerie.si.c-s.fr (messagerie.si.c-s.fr [192.168.25.192]) by pegase1.c-s.fr (Postfix) with ESMTP id 4bQ62r2Lkzz9scZ; Sun, 22 Jun 2025 11:52:52 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by messagerie.si.c-s.fr (Postfix) with ESMTP id 48ECC8B765; Sun, 22 Jun 2025 11:52:52 +0200 (CEST) X-Virus-Scanned: amavisd-new at c-s.fr Received: from messagerie.si.c-s.fr ([127.0.0.1]) by localhost (messagerie.si.c-s.fr [127.0.0.1]) (amavisd-new, port 10023) with ESMTP id LyA231yFeiNX; Sun, 22 Jun 2025 11:52:52 +0200 (CEST) Received: from PO20335.idsi0.si.c-s.fr (unknown [192.168.235.99]) by messagerie.si.c-s.fr (Postfix) with ESMTP id 43EF68B763; Sun, 22 Jun 2025 11:52:51 +0200 (CEST) From: Christophe Leroy To: Michael Ellerman , Nicholas Piggin , Naveen N Rao , Madhavan Srinivasan , Alexander Viro , Christian Brauner , Jan Kara , Thomas Gleixner , Ingo Molnar , Peter Zijlstra , Darren Hart , Davidlohr Bueso , "Andre Almeida" , Andrew Morton , David Laight , Dave Hansen , Linus Torvalds Cc: Christophe Leroy , linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org Subject: [PATCH 3/5] powerpc: Remove unused size parametre to KUAP enabling/disabling functions Date: Sun, 22 Jun 2025 11:52:41 +0200 Message-ID: <6b6667bce077c6a55c93142695cb54efbedf1578.1750585239.git.christophe.leroy@csgroup.eu> X-Mailer: git-send-email 2.49.0 In-Reply-To: References: MIME-Version: 1.0 X-Developer-Signature: v=1; a=ed25519-sha256; t=1750585958; l=9539; i=christophe.leroy@csgroup.eu; s=20211009; h=from:subject:message-id; bh=2Vc/SRI5ImEjhEPkBWs4KWXB6VDzEnBrqeyy8uayrnc=; b=pgIyHdQmTj0l2CprTPPslHZ/hvyn8SgStdIZt2ews0GTf9CH5MYRSSYqe5Vw5e5H0LC9wCo3y 0/f8jyZNx7+CcFCgf4PL0e7aYJchjIdzOSMr/hHGxCc0DlVvkX8LxsZ X-Developer-Key: i=christophe.leroy@csgroup.eu; a=ed25519; pk=HIzTzUj91asvincQGOFx6+ZF5AoUuP9GdOtQChs7Mm0= Content-Transfer-Encoding: 8bit X-Stat-Signature: mmuyhi11tkrwnba4enmnbu6ry6pc4ifi X-Rspamd-Queue-Id: D302B1A0003 X-Rspam-User: X-Rspamd-Server: rspam06 X-HE-Tag: 1750585984-594452 X-HE-Meta: U2FsdGVkX1/G5eZwofuLjGiMAD2iGovvLOgxmxdMQ1pGs0IfAH+qNYtxJpT5tOHs59wz+kBPx0i6/pHGHXuRUGo9PUOD1DtsFzyLAB/HAUbj3WZeKjR5bT0aMS7zIBHdoJUSdtLxUptM3DxCwW5nAmH0Fz7aaNJiT/jW8Du7RsR0tr7wpLFrTKeMSLJ6zOXzarbKJuzENFlGyHr8kfrGR3WUOPJ9N2zkzuUtPvUMmKnEa/yg/U34lI56hZUepHZujngDyR/ekm/3GAAn5Vay4dkc6Bvs54Ly2C5vuIH8QRrsU8kCl+s5Qy6ZuOCjNMladPfEEDJfjezOCQEWoIu80eefAbUfpudl5N0NYRc422iae3R2T2Vf9qEq7yr9hNexrASiEHsxa8Bj/tBj1IR1oE6uaRjwadvqIuBO8ce8nxy87RQ39WCEXWIJPCvCGrrxco2g7lrsE/YkPQXSYdZUQ52wHgrxRQcSAtXyhUxcG1eBnmzLDQn1o/evykMEID7VgQrYev1RSnirf+sPy66vOU042JQA8M88lYa9sqPxEg+kTGx3NAtJey0MuJoceAQyj6LJABMkIkXNn9nu0evt4xTRPeVkyw5a/jyXllV9rPXvtrxa3dHmTXcTGhE+VcbfPVWOLBPvR7EbHzwdhQnQHcp6pWTpx96jIPwfpBImQ7C+9lO0v7tqyAEDyi6DhDeyGsZZxoZPpGEf9PkLH53MflO50LK6XOXFEP/83aQ3ZVCzXEEAgUgWWrxN8PsFuG+xQtFFATvzIb2hf6EfyOqN4rO03gLc8VsQg7srXhHohT1bbFz0iWhra/jr02LLSS+I5/8xCeinn6iHzK8LNLWv/bZv3R640MBEiIPJYpRJizY7pCfBulogWZV+C6/elVLekReg5+5i3ECO0qu2AbrkQ6AjHYR++IQTthQZcOr6hJuME1oIQA+JaQ== 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: Since commit 16132529cee5 ("powerpc/32s: Rework Kernel Userspace Access Protection") the size parameter is unused on all platforms. Remove it. Signed-off-by: Christophe Leroy --- arch/powerpc/include/asm/book3s/32/kup.h | 2 +- arch/powerpc/include/asm/book3s/64/kup.h | 4 +-- arch/powerpc/include/asm/kup.h | 22 ++++++------ arch/powerpc/include/asm/nohash/32/kup-8xx.h | 2 +- arch/powerpc/include/asm/nohash/kup-booke.h | 2 +- arch/powerpc/include/asm/uaccess.h | 36 ++++++++++---------- 6 files changed, 33 insertions(+), 35 deletions(-) diff --git a/arch/powerpc/include/asm/book3s/32/kup.h b/arch/powerpc/include/asm/book3s/32/kup.h index 4e14a5427a63..8ea68d136152 100644 --- a/arch/powerpc/include/asm/book3s/32/kup.h +++ b/arch/powerpc/include/asm/book3s/32/kup.h @@ -98,7 +98,7 @@ static __always_inline unsigned long __kuap_get_and_assert_locked(void) #define __kuap_get_and_assert_locked __kuap_get_and_assert_locked static __always_inline void allow_user_access(void __user *to, const void __user *from, - u32 size, unsigned long dir) + unsigned long dir) { BUILD_BUG_ON(!__builtin_constant_p(dir)); diff --git a/arch/powerpc/include/asm/book3s/64/kup.h b/arch/powerpc/include/asm/book3s/64/kup.h index 497a7bd31ecc..853fa2fb12be 100644 --- a/arch/powerpc/include/asm/book3s/64/kup.h +++ b/arch/powerpc/include/asm/book3s/64/kup.h @@ -354,7 +354,7 @@ __bad_kuap_fault(struct pt_regs *regs, unsigned long address, bool is_write) } static __always_inline void allow_user_access(void __user *to, const void __user *from, - unsigned long size, unsigned long dir) + unsigned long dir) { unsigned long thread_amr = 0; @@ -384,7 +384,7 @@ static __always_inline unsigned long get_kuap(void) static __always_inline void set_kuap(unsigned long value) { } static __always_inline void allow_user_access(void __user *to, const void __user *from, - unsigned long size, unsigned long dir) + unsigned long dir) { } #endif /* !CONFIG_PPC_KUAP */ diff --git a/arch/powerpc/include/asm/kup.h b/arch/powerpc/include/asm/kup.h index 2bb03d941e3e..4c70be11b99a 100644 --- a/arch/powerpc/include/asm/kup.h +++ b/arch/powerpc/include/asm/kup.h @@ -73,7 +73,7 @@ static __always_inline void __kuap_kernel_restore(struct pt_regs *regs, unsigned */ #ifndef CONFIG_PPC_BOOK3S_64 static __always_inline void allow_user_access(void __user *to, const void __user *from, - unsigned long size, unsigned long dir) { } + unsigned long dir) { } static __always_inline void prevent_user_access(unsigned long dir) { } static __always_inline unsigned long prevent_user_access_return(void) { return 0UL; } static __always_inline void restore_user_access(unsigned long flags) { } @@ -132,36 +132,34 @@ static __always_inline void kuap_assert_locked(void) kuap_get_and_assert_locked(); } -static __always_inline void allow_read_from_user(const void __user *from, unsigned long size) +static __always_inline void allow_read_from_user(const void __user *from) { barrier_nospec(); - allow_user_access(NULL, from, size, KUAP_READ); + allow_user_access(NULL, from, KUAP_READ); } -static __always_inline void allow_write_to_user(void __user *to, unsigned long size) +static __always_inline void allow_write_to_user(void __user *to) { - allow_user_access(to, NULL, size, KUAP_WRITE); + allow_user_access(to, NULL, KUAP_WRITE); } -static __always_inline void allow_read_write_user(void __user *to, const void __user *from, - unsigned long size) +static __always_inline void allow_read_write_user(void __user *to, const void __user *from) { barrier_nospec(); - allow_user_access(to, from, size, KUAP_READ_WRITE); + allow_user_access(to, from, KUAP_READ_WRITE); } -static __always_inline void prevent_read_from_user(const void __user *from, unsigned long size) +static __always_inline void prevent_read_from_user(const void __user *from) { prevent_user_access(KUAP_READ); } -static __always_inline void prevent_write_to_user(void __user *to, unsigned long size) +static __always_inline void prevent_write_to_user(void __user *to) { prevent_user_access(KUAP_WRITE); } -static __always_inline void prevent_read_write_user(void __user *to, const void __user *from, - unsigned long size) +static __always_inline void prevent_read_write_user(void __user *to, const void __user *from) { prevent_user_access(KUAP_READ_WRITE); } diff --git a/arch/powerpc/include/asm/nohash/32/kup-8xx.h b/arch/powerpc/include/asm/nohash/32/kup-8xx.h index 46bc5925e5fd..c2b32b392d41 100644 --- a/arch/powerpc/include/asm/nohash/32/kup-8xx.h +++ b/arch/powerpc/include/asm/nohash/32/kup-8xx.h @@ -50,7 +50,7 @@ static __always_inline void uaccess_end_8xx(void) } static __always_inline void allow_user_access(void __user *to, const void __user *from, - unsigned long size, unsigned long dir) + unsigned long dir) { uaccess_begin_8xx(MD_APG_INIT); } diff --git a/arch/powerpc/include/asm/nohash/kup-booke.h b/arch/powerpc/include/asm/nohash/kup-booke.h index 0c7c3258134c..6035d51af3cd 100644 --- a/arch/powerpc/include/asm/nohash/kup-booke.h +++ b/arch/powerpc/include/asm/nohash/kup-booke.h @@ -74,7 +74,7 @@ static __always_inline void uaccess_end_booke(void) } static __always_inline void allow_user_access(void __user *to, const void __user *from, - unsigned long size, unsigned long dir) + unsigned long dir) { uaccess_begin_booke(current->thread.pid); } diff --git a/arch/powerpc/include/asm/uaccess.h b/arch/powerpc/include/asm/uaccess.h index 4f5a46a77fa2..dd5cf325ecde 100644 --- a/arch/powerpc/include/asm/uaccess.h +++ b/arch/powerpc/include/asm/uaccess.h @@ -45,14 +45,14 @@ do { \ __label__ __pu_failed; \ \ - allow_write_to_user(__pu_addr, __pu_size); \ + allow_write_to_user(__pu_addr); \ __put_user_size_goto(__pu_val, __pu_addr, __pu_size, __pu_failed); \ - prevent_write_to_user(__pu_addr, __pu_size); \ + prevent_write_to_user(__pu_addr); \ __pu_err = 0; \ break; \ \ __pu_failed: \ - prevent_write_to_user(__pu_addr, __pu_size); \ + prevent_write_to_user(__pu_addr); \ __pu_err = -EFAULT; \ } while (0); \ \ @@ -301,9 +301,9 @@ do { \ __typeof__(sizeof(*(ptr))) __gu_size = sizeof(*(ptr)); \ \ might_fault(); \ - allow_read_from_user(__gu_addr, __gu_size); \ + allow_read_from_user(__gu_addr); \ __get_user_size_allowed(__gu_val, __gu_addr, __gu_size, __gu_err); \ - prevent_read_from_user(__gu_addr, __gu_size); \ + prevent_read_from_user(__gu_addr); \ (x) = (__typeof__(*(ptr)))__gu_val; \ \ __gu_err; \ @@ -329,9 +329,9 @@ raw_copy_in_user(void __user *to, const void __user *from, unsigned long n) { unsigned long ret; - allow_read_write_user(to, from, n); + allow_read_write_user(to, from); ret = __copy_tofrom_user(to, from, n); - prevent_read_write_user(to, from, n); + prevent_read_write_user(to, from); return ret; } #endif /* __powerpc64__ */ @@ -341,9 +341,9 @@ static inline unsigned long raw_copy_from_user(void *to, { unsigned long ret; - allow_read_from_user(from, n); + allow_read_from_user(from); ret = __copy_tofrom_user((__force void __user *)to, from, n); - prevent_read_from_user(from, n); + prevent_read_from_user(from); return ret; } @@ -352,9 +352,9 @@ raw_copy_to_user(void __user *to, const void *from, unsigned long n) { unsigned long ret; - allow_write_to_user(to, n); + allow_write_to_user(to); ret = __copy_tofrom_user(to, (__force const void __user *)from, n); - prevent_write_to_user(to, n); + prevent_write_to_user(to); return ret; } @@ -365,9 +365,9 @@ static inline unsigned long __clear_user(void __user *addr, unsigned long size) unsigned long ret; might_fault(); - allow_write_to_user(addr, size); + allow_write_to_user(addr); ret = __arch_clear_user(addr, size); - prevent_write_to_user(addr, size); + prevent_write_to_user(addr); return ret; } @@ -395,9 +395,9 @@ copy_mc_to_user(void __user *to, const void *from, unsigned long n) { if (check_copy_size(from, n, true)) { if (access_ok(to, n)) { - allow_write_to_user(to, n); + allow_write_to_user(to); n = copy_mc_generic((void __force *)to, from, n); - prevent_write_to_user(to, n); + prevent_write_to_user(to); } } @@ -415,7 +415,7 @@ static __must_check __always_inline bool user_access_begin(const void __user *pt might_fault(); - allow_read_write_user((void __user *)ptr, ptr, len); + allow_read_write_user((void __user *)ptr, ptr); return true; } #define user_access_begin user_access_begin @@ -431,7 +431,7 @@ user_read_access_begin(const void __user *ptr, size_t len) might_fault(); - allow_read_from_user(ptr, len); + allow_read_from_user(ptr); return true; } #define user_read_access_begin user_read_access_begin @@ -445,7 +445,7 @@ user_write_access_begin(const void __user *ptr, size_t len) might_fault(); - allow_write_to_user((void __user *)ptr, len); + allow_write_to_user((void __user *)ptr); return true; } #define user_write_access_begin user_write_access_begin -- 2.49.0