aboutsummaryrefslogtreecommitdiffstats
path: root/tools/objtool/check.c
AgeCommit message (Expand)AuthorFilesLines
2024-03-30objtool: Fix compile failure when using the x32 compilerMikulas Patocka1-1/+1
2024-03-22Merge tag 'loongarch-6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/ch...Linus Torvalds1-18/+34
2024-03-12Merge tag 'hardening-v6.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-0/+12
2024-03-11objtool: Check local label in read_unwind_hints()Tiezhu Yang1-1/+11
2024-03-11objtool: Check local label in add_dead_ends()Tiezhu Yang1-17/+23
2024-02-29objtool: Fix UNWIND_HINT_{SAVE,RESTORE} across basic blocksJosh Poimboeuf1-0/+12
2024-01-10x86/bugs: Rename CONFIG_RETHUNK => CONFIG_MITIGATION_RETHUNKBreno Leitao1-1/+1
2024-01-10x86/bugs: Rename CONFIG_RETPOLINE => CONFIG_MITIGATION_RETPOLINEBreno Leitao1-1/+1
2023-11-17objtool: Fix calloc call for new -Walloc-sizeSam James1-1/+1
2023-10-20objtool: Fix return thunk patching in retpolinesJosh Poimboeuf1-0/+16
2023-09-12objtool: Fix _THIS_IP_ detection for cold functionsJosh Poimboeuf1-1/+2
2023-08-17objtool/x86: Fixup frame-pointer vs rethunkPeter Zijlstra1-6/+11
2023-08-16x86/cpu: Rename original retbleed methodsPeter Zijlstra1-1/+1
2023-08-16objtool/x86: Fix SRSO messPeter Zijlstra1-2/+22
2023-08-14x86/retpoline,kprobes: Fix position of thunk sections with CONFIG_LTO_CLANGPetr Pavlu1-1/+1
2023-06-07objtool: Free insns when doneJosh Poimboeuf1-0/+30
2023-06-07objtool: Get rid of reloc->rel[a]Josh Poimboeuf1-13/+7
2023-06-07objtool: Get rid of reloc->jump_table_startJosh Poimboeuf1-12/+23
2023-06-07objtool: Get rid of reloc->addendJosh Poimboeuf1-29/+40
2023-06-07objtool: Get rid of reloc->typeJosh Poimboeuf1-5/+6
2023-06-07objtool: Get rid of reloc->offsetJosh Poimboeuf1-7/+7
2023-06-07objtool: Add for_each_reloc()Josh Poimboeuf1-12/+12
2023-06-07objtool: Add elf_create_section_pair()Josh Poimboeuf1-81/+48
2023-06-07objtool: Consolidate rel/rela handlingJosh Poimboeuf1-6/+6
2023-06-07objtool: Improve reloc namingJosh Poimboeuf1-67/+67
2023-06-07objtool: Remove flags argument from elf_create_section()Josh Poimboeuf1-7/+10
2023-06-07objtool: Allow stack operations in UNWIND_HINT_UNDEFINED regionsJosh Poimboeuf1-0/+12
2023-06-07tools: Remove unnecessary variablesLu Hongfei1-4/+3
2023-05-16objtool: Move noreturn function list to separate fileJosh Poimboeuf1-41/+3
2023-05-16objtool: Remove superfluous global_noreturns entriesJosh Poimboeuf1-2/+0
2023-05-16objtool: Ignore exc_double_fault() __noreturn warningsJosh Poimboeuf1-1/+30
2023-05-16objtool: Detect missing __noreturn annotationsJosh Poimboeuf1-1/+13
2023-05-16objtool: Include backtrace in verbose modeJosh Poimboeuf1-16/+10
2023-05-16objtool: Add verbose option for disassembling affected functionsJosh Poimboeuf1-0/+77
2023-05-16objtool: Limit unreachable warnings to once per functionJosh Poimboeuf1-2/+3
2023-04-28Merge tag 'objtool-core-2023-04-27' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds1-243/+233
2023-04-26Merge tag 'for-6.4-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdav...Linus Torvalds1-0/+1
2023-04-18x86: improve on the non-rep 'copy_user' functionLinus Torvalds1-1/+1
2023-04-18x86: improve on the non-rep 'clear_user' functionLinus Torvalds1-1/+1
2023-04-18x86: inline the 'rep movs' in user copies for the FSRM caseLinus Torvalds1-1/+0
2023-04-18x86: move stac/clac from user copy routines into callersLinus Torvalds1-0/+3
2023-04-18x86: don't use REP_GOOD or ERMS for user memory clearingLinus Torvalds1-2/+0
2023-04-17btrfs: mark btrfs_assertfail() __noreturnJosh Poimboeuf1-0/+1
2023-04-14x86/hyperv: Mark hv_ghcb_terminate() as noreturnGuilherme G. Piccoli1-0/+1
2023-04-14scsi: message: fusion: Mark mpt_halt_firmware() __noreturnJosh Poimboeuf1-0/+1
2023-04-14x86/cpu: Mark {hlt,resume}_play_dead() __noreturnJosh Poimboeuf1-0/+2
2023-04-14btrfs: Mark btrfs_assertfail() __noreturnJosh Poimboeuf1-0/+1
2023-04-14objtool: Include weak functions in global_noreturns checkJosh Poimboeuf1-4/+4
2023-04-14cpu: Mark nmi_panic_self_stop() __noreturnJosh Poimboeuf1-0/+1
2023-04-14cpu: Mark panic_smp_self_stop() __noreturnJosh Poimboeuf1-0/+1
2023-04-14x86/head: Mark *_start_kernel() __noreturnJosh Poimboeuf1-0/+2
2023-04-14init: Mark start_kernel() __noreturnJosh Poimboeuf1-0/+1
2023-04-14init: Mark [arch_call_]rest_init() __noreturnJosh Poimboeuf1-0/+2
2023-04-14objtool: Generate ORC data for __pfx codeJosh Poimboeuf1-0/+14
2023-04-14objtool: Separate prefix code from stack validation codeJosh Poimboeuf1-38/+50
2023-04-14objtool: Remove superfluous dead_end_function() checkJosh Poimboeuf1-2/+1
2023-04-14objtool: Add symbol iteration helpersJosh Poimboeuf1-57/+41
2023-04-14objtool: Add WARN_INSN()Josh Poimboeuf1-109/+62
2023-04-14objtool: Add stackleak instrumentation to uaccess safe listJosh Poimboeuf1-0/+2
2023-04-14Revert "objtool: Support addition to set CFA base"Josh Poimboeuf1-11/+0
2023-03-23x86,objtool: Split UNWIND_HINT_EMPTY in twoJosh Poimboeuf1-1/+1
2023-03-23x86,objtool: Separate unret validation from unwind hintsJosh Poimboeuf1-20/+45
2023-03-23objtool: Add objtool_types.hJosh Poimboeuf1-1/+1
2023-03-08sched/idle: Mark arch_cpu_idle_dead() __noreturnJosh Poimboeuf1-0/+1
2023-03-02Merge tag 'objtool-core-2023-03-02' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds1-144/+231
2023-02-23Merge tag 'mm-stable-2023-02-20-13-37' of git://git.kernel.org/pub/scm/linux/...Linus Torvalds1-0/+2
2023-02-23objtool: Fix ORC 'signal' propagationJosh Poimboeuf1-0/+1
2023-02-23objtool: Remove instruction::listPeter Zijlstra1-60/+106
2023-02-23objtool: Fix overlapping alternativesPeter Zijlstra1-26/+43
2023-02-23objtool: Union instruction::{call_dest,jump_table}Peter Zijlstra1-27/+46
2023-02-23objtool: Remove instruction::relocPeter Zijlstra1-13/+11
2023-02-23objtool: Make instruction::alts a single-linked listPeter Zijlstra1-9/+9
2023-02-23objtool: Make instruction::stack_ops a single-linked listPeter Zijlstra1-6/+5
2023-02-23objtool: Change arch_decode_instruction() signaturePeter Zijlstra1-3/+1
2023-02-23Merge branch 'linus' into objtool/core, to pick up Xen dependenciesIngo Molnar1-0/+24
2023-02-21Merge tag 'for-linus-6.3-rc1-tag' of git://git.kernel.org/pub/scm/linux/kerne...Linus Torvalds1-0/+1
2023-02-20objtool: add UACCESS exceptions for __tsan_volatile_read/writeArnd Bergmann1-0/+2
2023-02-13x86/xen: mark xen_pv_play_dead() as __noreturnJuergen Gross1-0/+1
2023-02-11objtool: mem*() are not uaccess safePeter Zijlstra1-3/+0
2023-01-31Merge tag 'v6.2-rc6' into sched/core, to pick up fixesIngo Molnar1-0/+9
2023-01-21objtool: Check that module init/exit function is an indirect call targetMichal Kubecek1-0/+7
2023-01-13entry, kasan, x86: Disallow overriding mem*() functionsPeter Zijlstra1-0/+3
2023-01-13ubsan: Fix objtool UACCESS warnsPeter Zijlstra1-0/+1
2023-01-13objtool/idle: Validate __cpuidle code as noinstrPeter Zijlstra1-0/+13
2023-01-09objtool: Tolerate STT_NOTYPE symbols at end of sectionNicholas Piggin1-0/+9
2023-01-07objtool: Fix memory leak in create_static_call_sections()Miaoqian Lin1-0/+2
2022-12-19Merge tag 'powerpc-6.2-1' of git://git.kernel.org/pub/scm/linux/kernel/git/po...Linus Torvalds1-24/+29
2022-12-14Merge tag 'x86_core_for_v6.2' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds1-81/+310
2022-11-18objtool: Add arch specific function arch_ftrace_match()Sathvika Vasireddy1-1/+1
2022-11-18objtool: Use macros to define arch specific reloc typesSathvika Vasireddy1-1/+1
2022-11-18objtool: Read special sections with alts only when specific options are selectedSathvika Vasireddy1-3/+5
2022-11-18objtool: Add --mnop as an option to --mcountSathvika Vasireddy1-9/+10
2022-11-18objtool: Use target file class size instead of a compiled constantChristophe Leroy1-8/+10
2022-11-18objtool: Use target file endianness instead of a compiled constantChristophe Leroy1-1/+1
2022-11-18objtool: Fix SEGFAULTChristophe Leroy1-1/+1
2022-11-05objtool: Fix weak hole vs prefix symbolPeter Zijlstra1-1/+21
2022-11-01objtool: Add --cfi to generate the .cfi_sites sectionPeter Zijlstra1-0/+69
2022-11-01objtool: Add option to generate prefix symbolsPeter Zijlstra1-1/+32
2022-10-18objtool, kcsan: Add volatile read/write instrumentation to whitelistMarco Elver1-0/+10
2022-10-17objtool: Allow STT_NOTYPE -> STT_FUNC+0 sibling-callsPeter Zijlstra1-27/+47
2022-10-17objtool: Rework instruction -> symbol mappingPeter Zijlstra1-50/+55
2022-10-17objtool: Allow symbol range comparisons for IBT/ENDBRPeter Zijlstra1-0/+28
2022-10-17objtool: Add --hacks=skylakePeter Zijlstra1-4/+6
2022-10-17objtool: Add .call_sites sectionPeter Zijlstra1-0/+51
2022-10-17objtool: Track init sectionPeter Zijlstra1-7/+10
2022-10-17objtool: Allow !PC relative relocationsPeter Zijlstra1-1/+1
2022-10-10Merge tag 'mm-stable-2022-10-08' of git://git.kernel.org/pub/scm/linux/kernel...Linus Torvalds1-0/+20
2022-10-10Merge tag 'objtool-core-2022-10-07' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds1-4/+1
2022-10-04Merge tag 'net-next-6.1' of git://git.kernel.org/pub/scm/linux/kernel/git/net...Linus Torvalds1-1/+2
2022-10-04Merge tag 'x86_cpu_for_v6.1_rc1' of git://git.kernel.org/pub/scm/linux/kernel...Linus Torvalds1-0/+3
2022-10-03objtool: kmsan: list KMSAN API functions as uaccess-safeAlexander Potapenko1-0/+20
2022-09-26objtool: Disable CFI warningsSami Tolvanen1-1/+6
2022-09-16ftrace: Add HAVE_DYNAMIC_FTRACE_NO_PATCHABLEPeter Zijlstra (Intel)1-1/+2
2022-08-28Merge tag 'x86-urgent-2022-08-28' of git://git.kernel.org/pub/scm/linux/kerne...Linus Torvalds1-16/+18
2022-08-25x86/sev: Mark snp_abort() noreturnBorislav Petkov1-16/+18
2022-08-19objtool: Remove "ANNOTATE_NOENDBR on ENDBR" warningJosh Poimboeuf1-3/+0
2022-08-19objtool: Use arch_jump_destination() in read_intra_function_calls()Chen Zhongjin1-1/+1
2022-08-19x86/ibt, objtool: Add IBT_NOSEAL()Josh Poimboeuf1-1/+2
2022-08-18x86/clear_user: Make it fasterBorislav Petkov1-0/+3
2022-08-02Merge tag 'docs-6.0' of git://git.lwn.net/linuxLinus Torvalds1-1/+1
2022-07-11Merge tag 'x86_bugs_retbleed' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds1-14/+316
2022-07-07objtool: update objtool.txt referencesMauro Carvalho Chehab1-1/+1
2022-07-07x86/ibt, objtool: Don't discard text references from tracepoint sectionPeter Zijlstra1-2/+1
2022-06-29x86/retbleed: Add fine grained Kconfig knobsPeter Zijlstra1-2/+7
2022-06-27objtool: Re-add UNWIND_HINT_{SAVE_RESTORE}Josh Poimboeuf1-0/+40
2022-06-27objtool: Add entry UNRET validationPeter Zijlstra1-9/+168
2022-06-27objtool: Update Retpoline validationPeter Zijlstra1-6/+13
2022-06-27x86: Add magic AMD return-thunkPeter Zijlstra1-3/+19
2022-06-27objtool: Treat .text.__x86.* as noinstrPeter Zijlstra1-1/+2
2022-06-27x86,objtool: Create .return_sitesPeter Zijlstra1-0/+74
2022-05-27x86/extable: Annotate ex_handler_msr_mce() as a dead endBorislav Petkov1-0/+1
2022-05-27objtool: Mark __ubsan_handle_builtin_unreachable() as noreturnPeter Zijlstra1-1/+2
2022-05-20objtool: Fix objtool regression on x32 systemsMikulas Patocka1-4/+5
2022-04-22objtool: Remove --lto and --vmlinux in favor of --linkJosh Poimboeuf1-26/+14
2022-04-22objtool: Make noinstr hacks optionalJosh Poimboeuf1-1/+1
2022-04-22objtool: Make jump label hack optionalJosh Poimboeuf1-1/+1
2022-04-22objtool: Make static call annotation optionalJosh Poimboeuf1-4/+6
2022-04-22objtool: Make stack validation frame-pointer-specificJosh Poimboeuf1-2/+2
2022-04-22objtool: Extricate sls from stack validationJosh Poimboeuf1-13/+43
2022-04-22objtool: Rework ibt and extricate from stack validationJosh Poimboeuf1-133/+147
2022-04-22objtool: Make stack validation optionalJosh Poimboeuf1-13/+15
2022-04-22objtool: Ditch subcommandsJosh Poimboeuf1-0/+8
2022-04-22objtool: Reorganize cmdline optionsJosh Poimboeuf1-31/+31
2022-04-22Merge branch 'tip/x86/urgent'Peter Zijlstra1-8/+5
2022-04-22objtool: Fix type of reloc::addendPeter Zijlstra1-4/+4
2022-04-19objtool: Fix function fallthrough detection for vmlinuxJosh Poimboeuf1-1/+1
2022-04-19objtool: Fix sibling call detection in alternativesJosh Poimboeuf1-19/+17
2022-04-19objtool: Don't set 'jump_dest' for sibling callsJosh Poimboeuf1-13/+22
2022-04-19objtool: Use offstr() to print address of missing ENDBRJosh Poimboeuf1-3/+2
2022-04-19objtool: Print data address for "!ENDBR" data warningsJosh Poimboeuf1-5/+2
2022-04-19x86,objtool: Mark cpu_startup_entry() __noreturnPeter Zijlstra1-0/+1
2022-04-05objtool: Fix SLS validation for kcov tail-call replacementPeter Zijlstra1-0/+11
2022-04-05objtool: Fix IBT tail-call detectionPeter Zijlstra1-5/+14
2022-03-15objtool: Find unused ENDBR instructionsPeter Zijlstra1-2/+67
2022-03-15objtool: Validate IBT assumptionsPeter Zijlstra1-3/+207
2022-03-15objtool: Read the NOENDBR annotationPeter Zijlstra1-0/+27
2022-03-15objtool: Rework ASM_REACHABLEPeter Zijlstra1-13/+20
2022-03-15x86: Mark __invalid_creds() __noreturnPeter Zijlstra1-0/+1
2022-03-15exit: Mark do_group_exit() __noreturnPeter Zijlstra1-0/+1
2022-03-15x86: Mark stop_this_cpu() __noreturnPeter Zijlstra1-0/+1
2022-03-15objtool: Ignore extra-symbol codePeter Zijlstra1-0/+43
2022-03-15objtool: Rename --duplicate to --ltoPeter Zijlstra1-1/+6
2022-03-15objtool: Default ignore INT3 for unreachablePeter Zijlstra1-7/+5
2022-01-24objtool: Fix truncated string warningSergei Trofimovich1-1/+1
2022-01-17Merge branch 'signal-for-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/...Linus Torvalds1-3/+5
2022-01-12Merge tag 'x86_core_for_v5.17_rc1' of git://git.kernel.org/pub/scm/linux/kern...Linus Torvalds1-6/+16
2021-12-15objtool: Add a missing comma to avoid string concatenationEric W. Biederman1-1/+1
2021-12-13exit: Rename complete_and_exit to kthread_complete_and_exitEric W. Biederman1-1/+1
2021-12-13exit: Rename module_put_and_exit to module_put_and_kthread_exitEric W. Biederman1-1/+1
2021-12-13exit: Implement kthread_exitEric W. Biederman1-0/+1
2021-12-13exit: Add and use make_task_dead.Eric W. Biederman1-1/+2
2021-12-11objtool: Remove .fixup handlingPeter Zijlstra1-6/+2
2021-12-09objtool, kcsan: Remove memory barrier instrumentation from noinstrMarco Elver1-6/+31
2021-12-09objtool, kcsan: Add memory barrier instrumentation to whitelistMarco Elver1-0/+4
2021-12-08objtool: Add straight-line-speculation validationPeter Zijlstra1-0/+14
2021-11-11static_call,x86: Robustify trampoline patchingPeter Zijlstra1-0/+3
2021-11-01Merge tag 'trace-v5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/rost...Linus Torvalds1-1/+1
2021-10-28objtool,x86: Replace alternatives with .retpoline_sitesPeter Zijlstra1-39/+93
2021-10-28objtool: Shrink struct instructionPeter Zijlstra1-3/+3
2021-10-28objtool: Explicitly avoid self modifying code in .altinstr_replacementPeter Zijlstra1-11/+31
2021-10-28objtool: Classify symbolsPeter Zijlstra1-12/+22
2021-10-07Merge branch 'objtool/urgent'Peter Zijlstra1-8/+8
2021-10-05objtool: Remove redundant 'len' field from struct sectionJoe Lawrence1-8/+8
2021-09-30objtool: Ignore unwind hints for ignored functionsJosh Poimboeuf1-1/+1
2021-09-17objtool: Support pv_opsindirect calls for noinstrPeter Zijlstra1-10/+141
2021-09-15objtool: Handle __sanitize_cov*() tail callsPeter Zijlstra1-74/+84
2021-09-15objtool: Introduce CFI hashPeter Zijlstra1-18/+136
2021-09-15x86/xen: Mark cpu_bringup_and_idle() as dead_end_functionPeter Zijlstra1-0/+1
2021-05-14objtool: Reflow handle_jump_alt()Peter Zijlstra1-11/+11
2021-05-12objtool: Provide stats for jump_labelsPeter Zijlstra1-2/+20
2021-05-12objtool: Rewrite jump_label instructionsPeter Zijlstra1-0/+14
2021-04-28Merge tag 'objtool-core-2021-04-28' of git://git.kernel.org/pub/scm/linux/ker...Linus Torvalds1-29/+24
2021-04-19objtool: Support asm jump tablesJosh Poimboeuf1-1/+13
2021-04-02objtool: Cache instruction relocsPeter Zijlstra1-6/+22
2021-04-02objtool: Keep track of retpoline call sitesPeter Zijlstra1-5/+29
2021-04-02objtool: Create reloc sections implicitlyPeter Zijlstra1-6/+0
2021-04-02objtool: Add elf_create_reloc() helperPeter Zijlstra1-62/+16
2021-04-02objtool: Rework the elf_rebuild_reloc_section() logicPeter Zijlstra1-6/+0
2021-04-02objtool: Fix static_call list generationPeter Zijlstra1-5/+12
2021-04-02objtool: Handle per arch retpoline namingPeter Zijlstra1-2/+7