From 5964934a62fd03c6d75ce842f9ddacabac2c2059 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Sat, 15 Jun 2024 13:02:47 +0200 Subject: [PATCH] drop powerpc patch from 5.10 queue --- ...use-asm-goto-for-get_user-when-compi.patch | 102 ------------------ queue-5.10/series | 1 - 2 files changed, 103 deletions(-) delete mode 100644 queue-5.10/powerpc-uaccess-use-asm-goto-for-get_user-when-compi.patch diff --git a/queue-5.10/powerpc-uaccess-use-asm-goto-for-get_user-when-compi.patch b/queue-5.10/powerpc-uaccess-use-asm-goto-for-get_user-when-compi.patch deleted file mode 100644 index 96c47209fe6..00000000000 --- a/queue-5.10/powerpc-uaccess-use-asm-goto-for-get_user-when-compi.patch +++ /dev/null @@ -1,102 +0,0 @@ -From 4c528bdeb18f788ffe99be5c97c543fe980a5f00 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Wed, 10 Mar 2021 17:46:54 +0000 -Subject: powerpc/uaccess: Use asm goto for get_user when compiler supports it - -From: Christophe Leroy - -[ Upstream commit 5cd29b1fd3e8f2b45fe6d011588d832417defe31 ] - -clang 11 and future GCC are supporting asm goto with outputs. - -Use it to implement get_user in order to get better generated code. - -Note that clang requires to set x in the default branch of -__get_user_size_goto() otherwise is compliant about x not being -initialised :puzzled: - -Signed-off-by: Christophe Leroy -Signed-off-by: Michael Ellerman -Link: https://lore.kernel.org/r/403745b5aaa1b315bb4e8e46c1ba949e77eecec0.1615398265.git.christophe.leroy@csgroup.eu -Stable-dep-of: 50934945d542 ("powerpc/uaccess: Use YZ asm constraint for ld") -Signed-off-by: Sasha Levin ---- - arch/powerpc/include/asm/uaccess.h | 55 ++++++++++++++++++++++++++++++ - 1 file changed, 55 insertions(+) - -diff --git a/arch/powerpc/include/asm/uaccess.h b/arch/powerpc/include/asm/uaccess.h -index 6b808bcdecd52..d4d59f57c42d9 100644 ---- a/arch/powerpc/include/asm/uaccess.h -+++ b/arch/powerpc/include/asm/uaccess.h -@@ -243,6 +243,59 @@ extern long __get_user_bad(void); - : "=r" (err) \ - : "b" (uaddr), "b" (kaddr), "i" (-EFAULT), "0" (err)) - -+#ifdef CONFIG_CC_HAS_ASM_GOTO_OUTPUT -+ -+#define __get_user_asm_goto(x, addr, label, op) \ -+ asm_volatile_goto( \ -+ "1: "op"%U1%X1 %0, %1 # get_user\n" \ -+ EX_TABLE(1b, %l2) \ -+ : "=r" (x) \ -+ : "m"UPD_CONSTR (*addr) \ -+ : \ -+ : label) -+ -+#ifdef __powerpc64__ -+#define __get_user_asm2_goto(x, addr, label) \ -+ __get_user_asm_goto(x, addr, label, "ld") -+#else /* __powerpc64__ */ -+#define __get_user_asm2_goto(x, addr, label) \ -+ asm_volatile_goto( \ -+ "1: lwz%X1 %0, %1\n" \ -+ "2: lwz%X1 %L0, %L1\n" \ -+ EX_TABLE(1b, %l2) \ -+ EX_TABLE(2b, %l2) \ -+ : "=r" (x) \ -+ : "m" (*addr) \ -+ : \ -+ : label) -+#endif /* __powerpc64__ */ -+ -+#define __get_user_size_goto(x, ptr, size, label) \ -+do { \ -+ BUILD_BUG_ON(size > sizeof(x)); \ -+ switch (size) { \ -+ case 1: __get_user_asm_goto(x, (u8 __user *)ptr, label, "lbz"); break; \ -+ case 2: __get_user_asm_goto(x, (u16 __user *)ptr, label, "lhz"); break; \ -+ case 4: __get_user_asm_goto(x, (u32 __user *)ptr, label, "lwz"); break; \ -+ case 8: __get_user_asm2_goto(x, (u64 __user *)ptr, label); break; \ -+ default: x = 0; BUILD_BUG(); \ -+ } \ -+} while (0) -+ -+#define __get_user_size_allowed(x, ptr, size, retval) \ -+do { \ -+ __label__ __gus_failed; \ -+ \ -+ __get_user_size_goto(x, ptr, size, __gus_failed); \ -+ retval = 0; \ -+ break; \ -+__gus_failed: \ -+ x = 0; \ -+ retval = -EFAULT; \ -+} while (0) -+ -+#else /* CONFIG_CC_HAS_ASM_GOTO_OUTPUT */ -+ - #define __get_user_asm(x, addr, err, op) \ - __asm__ __volatile__( \ - "1: "op"%U2%X2 %1, %2 # get_user\n" \ -@@ -299,6 +352,8 @@ do { \ - prevent_read_from_user(ptr, size); \ - } while (0) - -+#endif /* CONFIG_CC_HAS_ASM_GOTO_OUTPUT */ -+ - /* - * This is a type: either unsigned long, if the argument fits into - * that type, or otherwise unsigned long long. --- -2.43.0 - diff --git a/queue-5.10/series b/queue-5.10/series index 67358c1fd9f..11347c39038 100644 --- a/queue-5.10/series +++ b/queue-5.10/series @@ -252,7 +252,6 @@ netfilter-tproxy-bail-out-if-ip-has-been-disabled-on.patch kconfig-fix-comparison-to-constant-symbols-m-n.patch spi-stm32-don-t-warn-about-spurious-interrupts.patch ipvlan-dont-use-skb-sk-in-ipvlan_process_v-4-6-_outb.patch -powerpc-uaccess-use-asm-goto-for-get_user-when-compi.patch hwmon-shtc1-fix-property-misspelling.patch alsa-timer-set-lower-bound-of-start-tick-time.patch genirq-cpuhotplug-x86-vector-prevent-vector-leak-during-cpu-offline.patch -- 2.47.3