]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
drop queue-5.4/parisc-fix-lpa-and-lpa_user-defines.patch
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 25 Jan 2022 11:11:47 +0000 (12:11 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 25 Jan 2022 11:11:47 +0000 (12:11 +0100)
queue-5.4/parisc-fix-lpa-and-lpa_user-defines.patch [deleted file]
queue-5.4/series

diff --git a/queue-5.4/parisc-fix-lpa-and-lpa_user-defines.patch b/queue-5.4/parisc-fix-lpa-and-lpa_user-defines.patch
deleted file mode 100644 (file)
index 96fcdeb..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-From db19c6f1a2a353cc8dec35b4789733a3cf6e2838 Mon Sep 17 00:00:00 2001
-From: John David Anglin <dave.anglin@bell.net>
-Date: Wed, 22 Dec 2021 16:01:31 +0000
-Subject: parisc: Fix lpa and lpa_user defines
-
-From: John David Anglin <dave.anglin@bell.net>
-
-commit db19c6f1a2a353cc8dec35b4789733a3cf6e2838 upstream.
-
-While working on the rewrite to the light-weight syscall and futex code, I
-experimented with using a hash index based on the user physical address of
-atomic variable. This exposed two problems with the lpa and lpa_user defines.
-
-Because of the copy instruction, the pa argument needs to be an early clobber
-argument. This prevents gcc from allocating the va and pa arguments to the same
-register.
-
-Secondly, the lpa instruction can cause a page fault so we need to catch
-exceptions.
-
-Signed-off-by: John David Anglin <dave.anglin@bell.net>
-Fixes: 116d753308cf ("parisc: Use lpa instruction to load physical addresses in driver code")
-Signed-off-by: Helge Deller <deller@gmx.de>
-Cc: stable@vger.kernel.org # v5.2+
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
----
- arch/parisc/include/asm/special_insns.h |   44 +++++++++++++++++---------------
- 1 file changed, 24 insertions(+), 20 deletions(-)
-
---- a/arch/parisc/include/asm/special_insns.h
-+++ b/arch/parisc/include/asm/special_insns.h
-@@ -2,28 +2,32 @@
- #ifndef __PARISC_SPECIAL_INSNS_H
- #define __PARISC_SPECIAL_INSNS_H
--#define lpa(va)       ({                      \
--      unsigned long pa;               \
--      __asm__ __volatile__(           \
--              "copy %%r0,%0\n\t"      \
--              "lpa %%r0(%1),%0"       \
--              : "=r" (pa)             \
--              : "r" (va)              \
--              : "memory"              \
--      );                              \
--      pa;                             \
-+#define lpa(va)       ({                                      \
-+      unsigned long pa;                               \
-+      __asm__ __volatile__(                           \
-+              "copy %%r0,%0\n"                        \
-+              "8:\tlpa %%r0(%1),%0\n"                 \
-+              "9:\n"                                  \
-+              ASM_EXCEPTIONTABLE_ENTRY(8b, 9b)        \
-+              : "=&r" (pa)                            \
-+              : "r" (va)                              \
-+              : "memory"                              \
-+      );                                              \
-+      pa;                                             \
- })
--#define lpa_user(va)  ({              \
--      unsigned long pa;               \
--      __asm__ __volatile__(           \
--              "copy %%r0,%0\n\t"      \
--              "lpa %%r0(%%sr3,%1),%0" \
--              : "=r" (pa)             \
--              : "r" (va)              \
--              : "memory"              \
--      );                              \
--      pa;                             \
-+#define lpa_user(va)  ({                              \
-+      unsigned long pa;                               \
-+      __asm__ __volatile__(                           \
-+              "copy %%r0,%0\n"                        \
-+              "8:\tlpa %%r0(%%sr3,%1),%0\n"           \
-+              "9:\n"                                  \
-+              ASM_EXCEPTIONTABLE_ENTRY(8b, 9b)        \
-+              : "=&r" (pa)                            \
-+              : "r" (va)                              \
-+              : "memory"                              \
-+      );                                              \
-+      pa;                                             \
- })
- #define mfctl(reg)    ({              \
index d3de5bac66be9d41e712938a6a3e239553df5551..c2a3a20fd6cf6758ac30f81640d4c55a09440d34 100644 (file)
@@ -254,7 +254,6 @@ s390-mm-fix-2kb-pgtable-release-race.patch
 drm-etnaviv-limit-submit-sizes.patch
 drm-nouveau-kms-nv04-use-vzalloc-for-nv04_display.patch
 drm-bridge-analogix_dp-make-psr-exit-block-less.patch
-parisc-fix-lpa-and-lpa_user-defines.patch
 pci-pciehp-fix-infinite-loop-in-irq-handler-upon-power-fault.patch
 pci-pci-bridge-emul-properly-mark-reserved-pcie-bits-in-pci-config-space.patch
 pci-pci-bridge-emul-correctly-set-pcie-capabilities.patch