Re: [PATCH 02/11] init: Mark start_kernel() __noreturn

From: Nick Desaulniers
Date: Wed Apr 12 2023 - 16:30:12 EST


On Fri, Apr 07, 2023 at 05:09:55PM -0700, Josh Poimboeuf wrote:
> Fixes the following warning:
>
> vmlinux.o: warning: objtool: x86_64_start_reservations+0x28: unreachable instruction
>
> Reported-by: kernel test robot <lkp@xxxxxxxxx>
> Link: https://lore.kernel.org/r/202302161142.K3ziREaj-lkp@xxxxxxxxx/
> Signed-off-by: Josh Poimboeuf <jpoimboe@xxxxxxxxxx>

Ah, I just realized that my series will conflict with this.
https://lore.kernel.org/llvm/20230412-no_stackp-v1-1-46a69b507a4b@xxxxxxxxxx/
Perhaps if my series gets positive feedback; I can rebase it on top of
this and it can become part of your series?

For this patch,
Reviewed-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx>

Though I'm curious, it does look like it's necessary because of 01/11 in
the series? Any idea how the 0day bot report happened before 1/11
existed?

(Surely gcc isn't assuming a weak function is implicitly noreturn and
make optimizations based on that (that's one hazard I'm worried about)?)

It looks like perhaps the link to
https://lore.kernel.org/all/202302161142.K3ziREaj-lkp@xxxxxxxxx/
on 2/11 was 0day testing the arch-cpu-idle-dead-noreturn branch of your
kernel tree
https://git.kernel.org/pub/scm/linux/kernel/git/jpoimboe/linux.git/log/?h=arch-cpu-idle-dead-noreturn
, which had 1/11 in it, IIUC? Perhaps this link should go on 1/11
rather than 2/11?

Looking back at 1/11, 3/11, 8/11 I noticed not all patches have links to 0day
reports. Are you able to flesh out more info how/what/when such objtool
warnings are observed? Are the warnings ever results of patches earlier
in the series?