]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
drop drm-vmwgfx-add-unwind-hints-around-rbp-clobber.patch from 6.4
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 9 Jul 2023 09:27:24 +0000 (11:27 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 9 Jul 2023 09:27:24 +0000 (11:27 +0200)
It adds build warnings

queue-6.4/drm-vmwgfx-add-unwind-hints-around-rbp-clobber.patch [deleted file]
queue-6.4/series

diff --git a/queue-6.4/drm-vmwgfx-add-unwind-hints-around-rbp-clobber.patch b/queue-6.4/drm-vmwgfx-add-unwind-hints-around-rbp-clobber.patch
deleted file mode 100644 (file)
index 13a28e0..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-From aeb6b7c6b6ef84ab496189cdbc698426092aa46c Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Mon, 5 Jun 2023 09:12:22 -0700
-Subject: drm/vmwgfx: Add unwind hints around RBP clobber
-
-From: Josh Poimboeuf <jpoimboe@kernel.org>
-
-[ Upstream commit a9da8247627eefc73f909bf945031a5431a53993 ]
-
-VMware high-bandwidth hypercalls take the RBP register as input.  This
-breaks basic frame pointer convention, as RBP should never be clobbered.
-
-So frame pointer unwinding is broken for the instructions surrounding
-the hypercalls.  Fortunately this doesn't break live patching with
-CONFIG_FRAME_POINTER, as it only unwinds from blocking tasks, and stack
-traces from preempted tasks are already marked unreliable anyway.
-
-However, for live patching with ORC, this could actually be a
-theoretical problem if vmw_port_hb_{in,out}() were still compiled with a
-frame pointer due to having an aligned stack.  In practice that hasn't
-seemed to be an issue since the objtool warnings have only been seen
-with CONFIG_FRAME_POINTER.
-
-Add unwind hint annotations to tell the ORC unwinder to mark stack
-traces as unreliable.
-
-Fixes the following warnings:
-
-  vmlinux.o: warning: objtool: vmw_port_hb_in+0x1df: return with modified stack frame
-  vmlinux.o: warning: objtool: vmw_port_hb_out+0x1dd: return with modified stack frame
-
-Fixes: 89da76fde68d ("drm/vmwgfx: Add VMWare host messaging capability")
-Reported-by: kernel test robot <lkp@intel.com>
-Link: https://lore.kernel.org/oe-kbuild-all/202305160135.97q0Elax-lkp@intel.com/
-Link: https://lore.kernel.org/r/4c795f2d87bc0391cf6543bcb224fa540b55ce4b.1685981486.git.jpoimboe@kernel.org
-Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- arch/x86/include/asm/unwind_hints.h     |  9 +++++++++
- drivers/gpu/drm/vmwgfx/vmwgfx_msg_x86.h | 16 ++++++++++++----
- 2 files changed, 21 insertions(+), 4 deletions(-)
-
-diff --git a/arch/x86/include/asm/unwind_hints.h b/arch/x86/include/asm/unwind_hints.h
-index 01cb9692b160a..85cc57cb65392 100644
---- a/arch/x86/include/asm/unwind_hints.h
-+++ b/arch/x86/include/asm/unwind_hints.h
-@@ -76,9 +76,18 @@
- #else
-+#define UNWIND_HINT_UNDEFINED \
-+      UNWIND_HINT(UNWIND_HINT_TYPE_UNDEFINED, 0, 0, 0)
-+
- #define UNWIND_HINT_FUNC \
-       UNWIND_HINT(UNWIND_HINT_TYPE_FUNC, ORC_REG_SP, 8, 0)
-+#define UNWIND_HINT_SAVE \
-+      UNWIND_HINT(UNWIND_HINT_TYPE_SAVE, 0, 0, 0)
-+
-+#define UNWIND_HINT_RESTORE \
-+      UNWIND_HINT(UNWIND_HINT_TYPE_RESTORE, 0, 0, 0)
-+
- #endif /* __ASSEMBLY__ */
- #endif /* _ASM_X86_UNWIND_HINTS_H */
-diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_msg_x86.h b/drivers/gpu/drm/vmwgfx/vmwgfx_msg_x86.h
-index 0b74ca2dfb7bd..23899d743a903 100644
---- a/drivers/gpu/drm/vmwgfx/vmwgfx_msg_x86.h
-+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_msg_x86.h
-@@ -105,10 +105,14 @@
-                         flags, magic, bp,             \
-                         eax, ebx, ecx, edx, si, di)   \
- ({                                                    \
--        asm volatile ("push %%rbp;"                   \
-+        asm volatile (                                        \
-+              UNWIND_HINT_SAVE                        \
-+              "push %%rbp;"                           \
-+              UNWIND_HINT_UNDEFINED                   \
-                 "mov %12, %%rbp;"                     \
-                 VMWARE_HYPERCALL_HB_OUT                       \
--                "pop %%rbp;" :                                \
-+                "pop %%rbp;"                          \
-+              UNWIND_HINT_RESTORE :                   \
-                 "=a"(eax),                            \
-                 "=b"(ebx),                            \
-                 "=c"(ecx),                            \
-@@ -130,10 +134,14 @@
-                        flags, magic, bp,              \
-                        eax, ebx, ecx, edx, si, di)    \
- ({                                                    \
--        asm volatile ("push %%rbp;"                   \
-+        asm volatile (                                        \
-+              UNWIND_HINT_SAVE                        \
-+              "push %%rbp;"                           \
-+              UNWIND_HINT_UNDEFINED                   \
-                 "mov %12, %%rbp;"                     \
-                 VMWARE_HYPERCALL_HB_IN                        \
--                "pop %%rbp" :                         \
-+                "pop %%rbp;"                          \
-+              UNWIND_HINT_RESTORE :                   \
-                 "=a"(eax),                            \
-                 "=b"(ebx),                            \
-                 "=c"(ecx),                            \
--- 
-2.39.2
-
index 83b3f5ecb7d01640b6a5a315a0951eecd9ac736b..d06298f3d0acfcf767195602308c448e8244c522 100644 (file)
@@ -87,7 +87,6 @@ locking-atomic-arm-fix-sync-ops.patch
 evm-complete-description-of-evm_inode_setattr.patch
 evm-fix-build-warnings.patch
 ima-fix-build-warnings.patch
-drm-vmwgfx-add-unwind-hints-around-rbp-clobber.patch
 pstore-ram-add-check-for-kstrdup.patch
 sched-core-avoid-multiple-calling-update_rq_clock-in.patch
 igc-enable-and-fix-rx-hash-usage-by-netstack.patch