arch/x86/xen/xen-asm.S | 4 +--- tools/objtool/arch/x86/decode.c | 18 ++++++++++------- tools/objtool/check.c | 29 +++++++++++++++++++++------- tools/objtool/include/objtool/arch.h | 3 ++- 4 files changed, 36 insertions(+), 18 deletions(-)
I decided to keep the "unsupported instruction in callable function" warning, it's not hurting anything. As a result we now have INSN_SYSCALL and INSN_SYSRET. v4: - split up patches - don't get rid of "unsupported instruction in callable function" warning - split INSN_CONTEXT_SWITCH -> INSN_SYSCALL / INSN_SYSRET v3: https://lore.kernel.org/9b23e4413873bee38961e628b0c73f6d3a26d494.1743799705.git.jpoimboe@kernel.org Josh Poimboeuf (4): objtool: Fix INSN_CONTEXT_SWITCH handling in validate_unret() objtool: Split INSN_CONTEXT_SWITCH into INSN_SYSCALL and INSN_SYSRET objtool: Stop UNRET validation on UD2 objtool, xen: Fix INSN_SYSCALL / INSN_SYSRET semantics arch/x86/xen/xen-asm.S | 4 +--- tools/objtool/arch/x86/decode.c | 18 ++++++++++------- tools/objtool/check.c | 29 +++++++++++++++++++++------- tools/objtool/include/objtool/arch.h | 3 ++- 4 files changed, 36 insertions(+), 18 deletions(-) -- 2.49.0
On Tue, Apr 08, 2025 at 12:02:12AM -0700, Josh Poimboeuf wrote: > I decided to keep the "unsupported instruction in callable function" > warning, it's not hurting anything. As a result we now have > INSN_SYSCALL and INSN_SYSRET. > > v4: > - split up patches > - don't get rid of "unsupported instruction in callable function" warning > - split INSN_CONTEXT_SWITCH -> INSN_SYSCALL / INSN_SYSRET > > v3: https://lore.kernel.org/9b23e4413873bee38961e628b0c73f6d3a26d494.1743799705.git.jpoimboe@kernel.org > > Josh Poimboeuf (4): > objtool: Fix INSN_CONTEXT_SWITCH handling in validate_unret() > objtool: Split INSN_CONTEXT_SWITCH into INSN_SYSCALL and INSN_SYSRET > objtool: Stop UNRET validation on UD2 > objtool, xen: Fix INSN_SYSCALL / INSN_SYSRET semantics This looks nice, thanks for doing that. Belated: Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
* Josh Poimboeuf <jpoimboe@kernel.org> wrote: > I decided to keep the "unsupported instruction in callable function" > warning, it's not hurting anything. As a result we now have > INSN_SYSCALL and INSN_SYSRET. > > v4: > - split up patches > - don't get rid of "unsupported instruction in callable function" warning > - split INSN_CONTEXT_SWITCH -> INSN_SYSCALL / INSN_SYSRET > > v3: https://lore.kernel.org/9b23e4413873bee38961e628b0c73f6d3a26d494.1743799705.git.jpoimboe@kernel.org > > Josh Poimboeuf (4): > objtool: Fix INSN_CONTEXT_SWITCH handling in validate_unret() > objtool: Split INSN_CONTEXT_SWITCH into INSN_SYSCALL and INSN_SYSRET > objtool: Stop UNRET validation on UD2 > objtool, xen: Fix INSN_SYSCALL / INSN_SYSRET semantics > > arch/x86/xen/xen-asm.S | 4 +--- > tools/objtool/arch/x86/decode.c | 18 ++++++++++------- > tools/objtool/check.c | 29 +++++++++++++++++++++------- > tools/objtool/include/objtool/arch.h | 3 ++- > 4 files changed, 36 insertions(+), 18 deletions(-) I'm wondering about the timing: can this wait for v6.16, or does it trigger on some popular config/build-tools combination? Thanks, Ingo
* Ingo Molnar <mingo@kernel.org> wrote: > > * Josh Poimboeuf <jpoimboe@kernel.org> wrote: > > > I decided to keep the "unsupported instruction in callable function" > > warning, it's not hurting anything. As a result we now have > > INSN_SYSCALL and INSN_SYSRET. > > > > v4: > > - split up patches > > - don't get rid of "unsupported instruction in callable function" warning > > - split INSN_CONTEXT_SWITCH -> INSN_SYSCALL / INSN_SYSRET > > > > v3: https://lore.kernel.org/9b23e4413873bee38961e628b0c73f6d3a26d494.1743799705.git.jpoimboe@kernel.org > > > > Josh Poimboeuf (4): > > objtool: Fix INSN_CONTEXT_SWITCH handling in validate_unret() > > objtool: Split INSN_CONTEXT_SWITCH into INSN_SYSCALL and INSN_SYSRET > > objtool: Stop UNRET validation on UD2 > > objtool, xen: Fix INSN_SYSCALL / INSN_SYSRET semantics > > > > arch/x86/xen/xen-asm.S | 4 +--- > > tools/objtool/arch/x86/decode.c | 18 ++++++++++------- > > tools/objtool/check.c | 29 +++++++++++++++++++++------- > > tools/objtool/include/objtool/arch.h | 3 ++- > > 4 files changed, 36 insertions(+), 18 deletions(-) > > I'm wondering about the timing: can this wait for v6.16, or does it > trigger on some popular config/build-tools combination? On a second look, I think these fixes should go upstream now, so I've applied them to tip:objtool/urgent. Thanks, Ingo
© 2016 - 2026 Red Hat, Inc.