lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:   Mon, 1 Jun 2020 17:31:14 +0200
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 v5.8

Linus,

Please pull the latest objtool/core git tree from:

   git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git objtool-core-2020-06-01

   # HEAD: 0decf1f8de919782b152daf9c991967a2bac54f0 objtool: Enable compilation of objtool for all architectures

There are a lot of objtool changes in this cycle, all across the map:

 - Speed up objtool significantly, especially when there are large number of sections
 - Improve objtool's understanding of special instructions such as IRET,
   to reduce the number of annotations required
 - Implement 'noinstr' validation
 - Do baby steps for non-x86 objtool use
 - Simplify/fix retpoline decoding
 - Add vmlinux validation
 - Improve documentation
 - Fix various bugs and apply smaller cleanups

 Thanks,

	Ingo

------------------>
Alexandre Chartre (4):
      objtool: Uniquely identify alternative instruction groups
      objtool: is_fentry_call() crashes if call has no destination
      objtool: UNWIND_HINT_RET_OFFSET should not check registers
      objtool: Add support for intra-function calls

Ingo Molnar (3):
      objtool: Constify 'struct elf *' parameters
      objtool: Rename elf_read() to elf_open_read()
      objtool: Constify arch_decode_instruction()

Josh Poimboeuf (2):
      samples/ftrace: Fix asm function ELF annotations
      objtool: Add check_kcov_mode() to the uaccess safelist

Julien Thierry (9):
      objtool: Fix off-by-one in symbol_by_offset()
      objtool: Always do header sync check
      objtool: Remove redundant checks on operand type
      objtool: Clean instruction state before each function validation
      objtool: Ignore empty alternatives
      objtool: Use arch specific values in restore_reg()
      objtool: Split out arch-specific CFI definitions
      objtool: Support multiple stack_op per instruction
      objtool: Remove check preventing branches within alternative

Matt Helsley (3):
      objtool: Exit successfully when requesting help
      objtool: Move struct objtool_file into arch-independent header
      objtool: Enable compilation of objtool for all architectures

Miroslav Benes (1):
      objtool: Move the IRET hack into the arch decoder

Muchun Song (1):
      objtool: Remove redundant .rodata section name comparison

Nick Desaulniers (1):
      objtool: Documentation: document UACCESS warnings

Peter Zijlstra (26):
      objtool: Fix 32bit cross builds
      objtool: Better handle IRET
      objtool: Introduce HINT_RET_OFFSET
      x86,ftrace: Fix ftrace_regs_caller() unwind
      x86,ftrace: Use SIZEOF_PTREGS
      x86,ftrace: Shrink ftrace_regs_caller() by one byte
      objtool: Remove SAVE/RESTORE hints
      objtool: Rename struct cfi_state
      objtool: Fix !CFI insn_state propagation
      objtool: Implement noinstr validation
      objtool: Optimize !vmlinux.o again
      objtool: Use sec_offset_hash() for insn_hash
      kbuild/objtool: Add objtool-vmlinux.o pass
      objtool: Avoid iterating !text section symbols
      objtool: Rearrange validate_section()
      objtool: Add STT_NOTYPE noinstr validation
      objtool: Fix ORC vs alternatives
      x86,smap: Fix smap_{save,restore}() alternatives
      objtool: Rework allocating stack_ops on decode
      objtool: Make handle_insn_ops() unconditional
      objtool: Remove INSN_STACK
      x86/speculation: Change FILL_RETURN_BUFFER to work with objtool
      x86: Simplify retpoline declaration
      x86: Change {JMP,CALL}_NOSPEC argument
      x86/retpoline: Fix retpoline unwind
      objtool: Allow no-op CFI ops in alternatives

Raphael Gault (1):
      objtool: Add abstraction for destination offsets

Sami Tolvanen (2):
      objtool: use gelf_getsymshndx to handle >64k sections
      objtool: optimize add_dead_ends for split sections

Thomas Gleixner (1):
      objtool: Also consider .entry.text as noinstr


 arch/x86/crypto/aesni-intel_asm.S                |   4 +-
 arch/x86/crypto/camellia-aesni-avx-asm_64.S      |   2 +-
 arch/x86/crypto/camellia-aesni-avx2-asm_64.S     |   2 +-
 arch/x86/crypto/crc32c-pcl-intel-asm_64.S        |  26 +-
 arch/x86/entry/entry_32.S                        |   6 +-
 arch/x86/entry/entry_64.S                        |   2 +-
 arch/x86/include/asm/GEN-for-each-reg.h          |  25 +
 arch/x86/include/asm/asm-prototypes.h            |  35 +-
 arch/x86/include/asm/nospec-branch.h             |  76 +--
 arch/x86/include/asm/orc_types.h                 |   3 +-
 arch/x86/include/asm/processor.h                 |   2 -
 arch/x86/include/asm/smap.h                      |  11 +-
 arch/x86/include/asm/unwind_hints.h              |  31 +-
 arch/x86/kernel/ftrace.c                         |  14 +-
 arch/x86/kernel/ftrace_32.S                      |   2 +-
 arch/x86/kernel/ftrace_64.S                      |  44 +-
 arch/x86/lib/checksum_32.S                       |   4 +-
 arch/x86/lib/retpoline.S                         |  63 +-
 arch/x86/platform/efi/efi_stub_64.S              |   2 +-
 include/linux/frame.h                            |  11 +
 lib/Kconfig.debug                                |   5 +
 samples/ftrace/ftrace-direct-modify.c            |   4 +
 samples/ftrace/ftrace-direct-too.c               |   2 +
 samples/ftrace/ftrace-direct.c                   |   2 +
 scripts/link-vmlinux.sh                          |  24 +
 tools/arch/x86/include/asm/orc_types.h           |   3 +-
 tools/objtool/Build                              |  13 +-
 tools/objtool/Documentation/stack-validation.txt |  41 ++
 tools/objtool/Makefile                           |  15 +-
 tools/objtool/arch.h                             |  19 +-
 tools/objtool/arch/x86/decode.c                  | 302 +++++----
 tools/objtool/arch/x86/include/cfi_regs.h        |  25 +
 tools/objtool/builtin-check.c                    |  13 +-
 tools/objtool/builtin-orc.c                      |   3 +-
 tools/objtool/builtin.h                          |   2 +-
 tools/objtool/cfi.h                              |  35 +-
 tools/objtool/check.c                            | 801 +++++++++++++++--------
 tools/objtool/check.h                            |  35 +-
 tools/objtool/elf.c                              | 102 ++-
 tools/objtool/elf.h                              |  37 +-
 tools/objtool/objtool.c                          |   4 +-
 tools/objtool/objtool.h                          |  27 +
 tools/objtool/orc.h                              |  18 -
 tools/objtool/orc_dump.c                         |   3 +-
 tools/objtool/orc_gen.c                          |  12 +-
 tools/objtool/weak.c                             |  40 ++
 46 files changed, 1228 insertions(+), 724 deletions(-)
 create mode 100644 arch/x86/include/asm/GEN-for-each-reg.h
 create mode 100644 tools/objtool/arch/x86/include/cfi_regs.h
 create mode 100644 tools/objtool/objtool.h
 delete mode 100644 tools/objtool/orc.h
 create mode 100644 tools/objtool/weak.c

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ