]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
Merge tag 'objtool-urgent-2025-12-06' of git://git.kernel.org/pub/scm/linux/kernel...
authorLinus Torvalds <torvalds@linux-foundation.org>
Sat, 6 Dec 2025 19:56:51 +0000 (11:56 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sat, 6 Dec 2025 19:56:51 +0000 (11:56 -0800)
Pull objtool fixes from Ingo Molnar:
 "Address various objtool scalability bugs/inefficiencies exposed by
  allmodconfig builds, plus improve the quality of alternatives
  instructions generated code and disassembly"

* tag 'objtool-urgent-2025-12-06' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  objtool: Simplify .annotate_insn code generation output some more
  objtool: Add more robust signal error handling, detect and warn about stack overflows
  objtool: Remove newlines and tabs from annotation macros
  objtool: Consolidate annotation macros
  x86/asm: Remove ANNOTATE_DATA_SPECIAL usage
  x86/alternative: Remove ANNOTATE_DATA_SPECIAL usage
  objtool: Fix stack overflow in validate_branch()

1  2 
arch/um/kernel/asm-offsets.c
arch/x86/include/asm/cpufeature.h
arch/x86/include/asm/nospec-branch.h
arch/x86/include/asm/smap.h
arch/x86/kernel/alternative.c

index d38447e39d5ed2e79b512cb46791ae9f743d7787,a69873aa697f4f5ba1a4f529175c47f42a46fcd7..d620b6f6de9bbadb4a5b5592efb6421c1166a5ff
@@@ -1,45 -1,3 +1,49 @@@
 +/* SPDX-License-Identifier: GPL-2.0 */
  #define COMPILE_OFFSETS
 +#include <linux/stddef.h>
 +#include <linux/sched.h>
 +#include <linux/elf.h>
 +#include <linux/crypto.h>
 +#include <linux/kbuild.h>
 +#include <linux/audit.h>
 +#include <linux/fs.h>
 +#include <asm/mman.h>
 +#include <asm/seccomp.h>
++#include <asm/extable.h>
  
 -#include <sysdep/kernel-offsets.h>
 +/* workaround for a warning with -Wmissing-prototypes */
 +void foo(void);
 +
 +void foo(void)
 +{
 +      DEFINE(KERNEL_MADV_REMOVE, MADV_REMOVE);
 +
 +      DEFINE(UM_KERN_PAGE_SIZE, PAGE_SIZE);
 +      DEFINE(UM_KERN_PAGE_MASK, PAGE_MASK);
 +      DEFINE(UM_KERN_PAGE_SHIFT, PAGE_SHIFT);
 +
 +      DEFINE(UM_GFP_KERNEL, GFP_KERNEL);
 +      DEFINE(UM_GFP_ATOMIC, GFP_ATOMIC);
 +
 +      DEFINE(UM_THREAD_SIZE, THREAD_SIZE);
 +
 +      DEFINE(UM_NSEC_PER_SEC, NSEC_PER_SEC);
 +      DEFINE(UM_NSEC_PER_USEC, NSEC_PER_USEC);
 +
 +      DEFINE(UM_KERN_GDT_ENTRY_TLS_ENTRIES, GDT_ENTRY_TLS_ENTRIES);
 +
 +      DEFINE(UM_SECCOMP_ARCH_NATIVE, SECCOMP_ARCH_NATIVE);
 +
 +      DEFINE(HOSTFS_ATTR_MODE, ATTR_MODE);
 +      DEFINE(HOSTFS_ATTR_UID, ATTR_UID);
 +      DEFINE(HOSTFS_ATTR_GID, ATTR_GID);
 +      DEFINE(HOSTFS_ATTR_SIZE, ATTR_SIZE);
 +      DEFINE(HOSTFS_ATTR_ATIME, ATTR_ATIME);
 +      DEFINE(HOSTFS_ATTR_MTIME, ATTR_MTIME);
 +      DEFINE(HOSTFS_ATTR_CTIME, ATTR_CTIME);
 +      DEFINE(HOSTFS_ATTR_ATIME_SET, ATTR_ATIME_SET);
 +      DEFINE(HOSTFS_ATTR_MTIME_SET, ATTR_MTIME_SET);
++
++      DEFINE(ALT_INSTR_SIZE, sizeof(struct alt_instr));
++      DEFINE(EXTABLE_SIZE,   sizeof(struct exception_table_entry));
 +}
Simple merge
Simple merge
Simple merge
Simple merge