init: Mark [arch_call_]rest_init() __noreturn

In preparation for improving objtool's handling of weak noreturn
functions, mark start_kernel(), arch_call_rest_init(), and rest_init()
__noreturn.

Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
Link: https://lore.kernel.org/r/7194ed8a989a85b98d92e62df660f4a90435a723.1681342859.git.jpoimboe@kernel.org
This commit is contained in:
Josh Poimboeuf
2023-04-12 16:49:31 -07:00
committed by Peter Zijlstra
parent 5743654f5e
commit 9ea7e6b62c
4 changed files with 7 additions and 5 deletions
+2 -2
View File
@@ -683,7 +683,7 @@ static void __init setup_command_line(char *command_line)
static __initdata DECLARE_COMPLETION(kthreadd_done);
noinline void __ref rest_init(void)
noinline void __ref __noreturn rest_init(void)
{
struct task_struct *tsk;
int pid;
@@ -889,7 +889,7 @@ static int __init early_randomize_kstack_offset(char *buf)
early_param("randomize_kstack_offset", early_randomize_kstack_offset);
#endif
void __init __weak arch_call_rest_init(void)
void __init __weak __noreturn arch_call_rest_init(void)
{
rest_init();
}