xref: /linux/tools/objtool/noreturns.h (revision 40d269c000bda9fcd276a0412a9cebd3f6e344c5)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 
3 /*
4  * This is a (sorted!) list of all known __noreturn functions in the kernel.
5  * It's needed for objtool to properly reverse-engineer the control flow graph.
6  *
7  * Yes, this is unfortunate.  A better solution is in the works.
8  */
9 NORETURN(__fortify_panic)
10 NORETURN(__kunit_abort)
11 NORETURN(__module_put_and_kthread_exit)
12 NORETURN(__reiserfs_panic)
13 NORETURN(__stack_chk_fail)
14 NORETURN(__tdx_hypercall_failed)
15 NORETURN(__ubsan_handle_builtin_unreachable)
16 NORETURN(arch_cpu_idle_dead)
17 NORETURN(bch2_trans_in_restart_error)
18 NORETURN(bch2_trans_restart_error)
19 NORETURN(cpu_bringup_and_idle)
20 NORETURN(cpu_startup_entry)
21 NORETURN(do_exit)
22 NORETURN(do_group_exit)
23 NORETURN(do_task_dead)
24 NORETURN(ex_handler_msr_mce)
25 NORETURN(hlt_play_dead)
26 NORETURN(hv_ghcb_terminate)
27 NORETURN(kthread_complete_and_exit)
28 NORETURN(kthread_exit)
29 NORETURN(kunit_try_catch_throw)
30 NORETURN(machine_real_restart)
31 NORETURN(make_task_dead)
32 NORETURN(mpt_halt_firmware)
33 NORETURN(nmi_panic_self_stop)
34 NORETURN(panic)
35 NORETURN(panic_smp_self_stop)
36 NORETURN(rest_init)
37 NORETURN(rewind_stack_and_make_dead)
38 NORETURN(sev_es_terminate)
39 NORETURN(snp_abort)
40 NORETURN(start_kernel)
41 NORETURN(stop_this_cpu)
42 NORETURN(usercopy_abort)
43 NORETURN(x86_64_start_kernel)
44 NORETURN(x86_64_start_reservations)
45 NORETURN(xen_cpu_bringup_again)
46 NORETURN(xen_start_kernel)
47