[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <Z44enghLS7wRNIDA@gmail.com>
Date: Mon, 20 Jan 2025 10:59:58 +0100
From: Ingo Molnar <mingo@...nel.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: linux-kernel@...r.kernel.org, Peter Zijlstra <a.p.zijlstra@...llo.nl>,
Josh Poimboeuf <jpoimboe@...hat.com>,
Thomas Gleixner <tglx@...utronix.de>,
Borislav Petkov <bp@...en8.de>,
Andrew Morton <akpm@...ux-foundation.org>
Subject: [GIT PULL] objtool changes for v6.14
Linus,
Please pull the latest objtool/core Git tree from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git objtool-core-2025-01-20
# HEAD: 41a1e976623eb430f7b5a8619d3810b44e6235ad x86/mm: Convert unreachable() to BUG()
Objtool changes for v6.14:
- Introduce the generic section-based annotation
infrastructure a.k.a. ASM_ANNOTATE/ANNOTATE (Peter Zijlstra)
- Convert various facilities to ASM_ANNOTATE/ANNOTATE: (Peter Zijlstra)
- ANNOTATE_NOENDBR
- ANNOTATE_RETPOLINE_SAFE
- instrumentation_{begin,end}()
- VALIDATE_UNRET_BEGIN
- ANNOTATE_IGNORE_ALTERNATIVE
- ANNOTATE_INTRA_FUNCTION_CALL
- {.UN}REACHABLE
- Optimize the annotation-sections parsing code (Peter Zijlstra)
- Centralize annotation definitions in <linux/objtool.h>
- Unify & simplify the barrier_before_unreachable()/unreachable()
definitions (Peter Zijlstra)
- Convert unreachable() calls to BUG() in x86 code, as
unreachable() has unreliable code generation (Peter Zijlstra)
- Remove annotate_reachable() and annotate_unreachable(), as it's
unreliable against compiler optimizations (Peter Zijlstra)
- Fix non-standard ANNOTATE_REACHABLE annotation order (Peter Zijlstra)
- Robustify the annotation code by warning about unknown annotation
types (Peter Zijlstra)
- Allow arch code to discover jump table size, in preparation of
annotated jump table support (Ard Biesheuvel)
Thanks,
Ingo
------------------>
Ard Biesheuvel (1):
objtool: Allow arch code to discover jump table size
Peter Zijlstra (17):
objtool: Generic annotation infrastructure
objtool: Convert ANNOTATE_NOENDBR to ANNOTATE
objtool: Convert ANNOTATE_RETPOLINE_SAFE to ANNOTATE
objtool: Convert instrumentation_{begin,end}() to ANNOTATE
objtool: Convert VALIDATE_UNRET_BEGIN to ANNOTATE
objtool: Convert ANNOTATE_IGNORE_ALTERNATIVE to ANNOTATE
objtool: Convert ANNOTATE_INTRA_FUNCTION_CALL to ANNOTATE
objtool: Collapse annotate sequences
objtool: Collect more annotations in objtool.h
unreachable: Unify
x86: Convert unreachable() to BUG()
loongarch: Use ASM_REACHABLE
objtool: Remove annotate_{,un}reachable()
objtool: Convert {.UN}REACHABLE to ANNOTATE
objtool: Fix ANNOTATE_REACHABLE to be a normal annotation
objtool: Warn about unknown annotation types
x86/mm: Convert unreachable() to BUG()
arch/loongarch/include/asm/bug.h | 13 +-
arch/x86/entry/entry_64.S | 9 +-
arch/x86/include/asm/alternative.h | 22 +-
arch/x86/include/asm/bug.h | 2 +-
arch/x86/include/asm/irq_stack.h | 4 +-
arch/x86/include/asm/nospec-branch.h | 18 --
arch/x86/kernel/process.c | 2 +-
arch/x86/kernel/reboot.c | 2 +-
arch/x86/kvm/svm/sev.c | 2 +-
arch/x86/mm/fault.c | 2 +-
include/linux/compiler-gcc.h | 12 -
include/linux/compiler.h | 37 +--
include/linux/instrumentation.h | 11 +-
include/linux/objtool.h | 126 ++++++----
include/linux/objtool_types.h | 12 +
tools/include/linux/objtool_types.h | 12 +
tools/objtool/arch/loongarch/special.c | 3 +-
tools/objtool/arch/powerpc/special.c | 3 +-
tools/objtool/arch/x86/special.c | 4 +-
tools/objtool/check.c | 426 +++++++++-----------------------
tools/objtool/include/objtool/check.h | 5 +-
tools/objtool/include/objtool/special.h | 3 +-
22 files changed, 267 insertions(+), 463 deletions(-)
Powered by blists - more mailing lists