On Fri, Mar 07, 2025 at 10:26:25PM +0100, Nathan Chancellor wrote: > On Wed, Mar 05, 2025 at 06:48:26PM +0100, Greg Kroah-Hartman wrote: > > 6.13-stable review patch. If anyone has any objections, please let me know. > > > > ------------------ > > > > From: Peter Zijlstra <peterz@xxxxxxxxxxxxx> > > > > [ Upstream commit 06e24745985c8dd0da18337503afcf2f2fdbdff1 ] > > > > There are no users of annotate_reachable() left. > > This is not true in 6.13.y because it was taken without upstream commit > 624bde3465f6 ("loongarch: Use ASM_REACHABLE"), resulting in: > > In file included from include/linux/bug.h:5, > from include/linux/thread_info.h:13, > from include/asm-generic/current.h:6, > from ./arch/loongarch/include/generated/asm/current.h:1, > from include/linux/sched.h:12, > from arch/loongarch/kernel/asm-offsets.c:8: > include/linux/thread_info.h: In function 'check_copy_size': > arch/loongarch/include/asm/bug.h:47:9: error: implicit declaration of function 'annotate_reachable' [-Wimplicit-function-declaration] > 47 | annotate_reachable(); \ > | ^~~~~~~~~~~~~~~~~~ > include/asm-generic/bug.h:113:17: note: in expansion of macro '__WARN_FLAGS' > 113 | __WARN_FLAGS(BUGFLAG_ONCE | \ > | ^~~~~~~~~~~~ > include/linux/thread_info.h:262:13: note: in expansion of macro 'WARN_ON_ONCE' > 262 | if (WARN_ON_ONCE(bytes > INT_MAX)) > | ^~~~~~~~~~~~ > > when trying to build ARCH=loongarch now. That applies cleanly and > resolves the build failure. > > > And the annotate_unreachable() usage in unreachable() is plain wrong; > > it will hide dangerous fall-through code-gen. > > This may be reason enough to take this patch into stable... (but then > why wasn't it Cc'd in the first place, the tip folks are usually good > about that?) > > > Remove both. > > > > Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx> > > Acked-by: Josh Poimboeuf <jpoimboe@xxxxxxxxxx> > > Link: https://lore.kernel.org/r/20241128094312.235637588@xxxxxxxxxxxxx > > Stable-dep-of: 73cfc53cc3b6 ("objtool: Fix C jump table annotations for Clang") > > But I do not think avoiding the conflict generated by this patch is... > With the "diff3" merge.conflictstyle setting in git, I only see this > conflict in that change: > > /* Annotate a C jump table to allow objtool to follow the code flow */ > <<<<<<< HEAD > #define __annotate_jump_table __section(".rodata..c_jump_table,\"a\",@progbits #") > > ||||||| parent of 73cfc53cc3b6 (objtool: Fix C jump table annotations for Clang) > #define __annotate_jump_table __section(".rodata..c_jump_table,\"a\",@progbits #") > ======= > #define __annotate_jump_table __section(".data.rel.ro.c_jump_table") > >>>>>>> 73cfc53cc3b6 (objtool: Fix C jump table annotations for Clang) > > which seems incredibly simple to resolve without dragging in two extra > patches. > > If we do want to keep this change in 6.13.y, maybe it would be worth > dragging in > > 2190966fbc14 ("x86: Convert unreachable() to BUG()") > 41a1e976623e ("x86/mm: Convert unreachable() to BUG()") > > as well? Both are already in the release, thanks! greg k-h