From b82759ec2ec0d20b3badff8d34623730114d5558 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Sun, 9 Jul 2023 11:27:24 +0200 Subject: [PATCH] drop drm-vmwgfx-add-unwind-hints-around-rbp-clobber.patch from 6.4 It adds build warnings --- ...-add-unwind-hints-around-rbp-clobber.patch | 106 ------------------ queue-6.4/series | 1 - 2 files changed, 107 deletions(-) delete mode 100644 queue-6.4/drm-vmwgfx-add-unwind-hints-around-rbp-clobber.patch 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 index 13a28e0ab38..00000000000 --- a/queue-6.4/drm-vmwgfx-add-unwind-hints-around-rbp-clobber.patch +++ /dev/null @@ -1,106 +0,0 @@ -From aeb6b7c6b6ef84ab496189cdbc698426092aa46c Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Mon, 5 Jun 2023 09:12:22 -0700 -Subject: drm/vmwgfx: Add unwind hints around RBP clobber - -From: Josh Poimboeuf - -[ 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 -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 -Signed-off-by: Sasha Levin ---- - 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 - diff --git a/queue-6.4/series b/queue-6.4/series index 83b3f5ecb7d..d06298f3d0a 100644 --- a/queue-6.4/series +++ b/queue-6.4/series @@ -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 -- 2.47.3