• Linus Torvalds's avatar
    Merge tag 'objtool-core-2023-03-02' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 857f1268
    Linus Torvalds authored
    Pull objtool updates from Ingo Molnar:
    
     - Shrink 'struct instruction', to improve objtool performance & memory
       footprint
    
     - Other maximum memory usage reductions - this makes the build both
       faster, and fixes kernel build OOM failures on allyesconfig and
       similar configs when they try to build the final (large) vmlinux.o
    
     - Fix ORC unwinding when a kprobe (INT3) is set on a stack-modifying
       single-byte instruction (PUSH/POP or LEAVE). This requires the
       extension of the ORC metadata structure with a 'signal' field
    
     - Misc fixes & cleanups
    
    * tag 'objtool-core-2023-03-02' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (22 commits)
      objtool: Fix ORC 'signal' propagation
      objtool: Remove instruction::list
      x86: Fix FILL_RETURN_BUFFER
      objtool: Fix overlapping alternatives
      objtool: Union instruction::{call_dest,jump_table}
      objtool: Remove instruction::reloc
      objtool: Shrink instruction::{type,visited}
      objtool: Make instruction::alts a single-linked list
      objtool: Make instruction::stack_ops a single-linked list
      objtool: Change arch_decode_instruction() signature
      x86/entry: Fix unwinding from kprobe on PUSH/POP instruction
      x86/unwind/orc: Add 'signal' field to ORC metadata
      objtool: Optimize layout of struct special_alt
      objtool: Optimize layout of struct symbol
      objtool: Allocate multiple structures with calloc()
      objtool: Make struct check_options static
      objtool: Make struct entries[] static and const
      objtool: Fix HOSTCC flag usage
      objtool: Properly support make V=1
      objtool: Install libsubcmd in build
      ...
    857f1268
check.c 108 KB