The patch titled Subject: x86/alternatives: fix writable address in cfi_rewrite_endbr() has been added to the -mm mm-unstable branch. Its filename is x86-module-prepare-module-loading-for-rox-allocations-of-text-fix.patch This patch will shortly appear at https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patches/x86-module-prepare-module-loading-for-rox-allocations-of-text-fix.patch This patch will later appear in the mm-unstable branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next via the mm-everything branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm and is updated there every 2-3 working days ------------------------------------------------------ From: "Mike Rapoport (Microsoft)" <rppt@xxxxxxxxxx> Subject: x86/alternatives: fix writable address in cfi_rewrite_endbr() Date: Tue, 5 Nov 2024 10:49:57 +0200 Commit ("x86/module: prepare module loading for ROX allocations of text") missed the offset that should be added to the writable address passed to poison_endbr() from cfi_rewrite_endbr() and this causes boot failures on kernels running with cfi=fineibt on machines that support IBT. Add required offset to wr_addr argument to fix the issue. Link: https://lkml.kernel.org/r/ZysRwR29Ji8CcbXc@xxxxxxxxxx Signed-off-by: Mike Rapoport (Microsoft) <rppt@xxxxxxxxxx> Reported-by: Nathan Chancellor <nathan@xxxxxxxxxx> Tested-by: Nathan Chancellor <nathan@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- arch/x86/kernel/alternative.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/arch/x86/kernel/alternative.c~x86-module-prepare-module-loading-for-rox-allocations-of-text-fix +++ a/arch/x86/kernel/alternative.c @@ -1241,7 +1241,7 @@ static void cfi_rewrite_endbr(s32 *start void *addr = (void *)s + *s; void *wr_addr = module_writable_address(mod, addr); - poison_endbr(addr+16, wr_addr, false); + poison_endbr(addr + 16, wr_addr + 16, false); } } _ Patches currently in -mm which might be from rppt@xxxxxxxxxx are mm-vmalloc-group-declarations-depending-on-config_mmu-together.patch mm-vmalloc-dont-account-for-number-of-nodes-for-huge_vmap-allocations.patch asm-generic-introduce-text-patchingh.patch module-prepare-to-handle-rox-allocations-for-text.patch arch-introduce-set_direct_map_valid_noflush.patch x86-module-prepare-module-loading-for-rox-allocations-of-text.patch x86-module-prepare-module-loading-for-rox-allocations-of-text-fix.patch execmem-add-support-for-cache-of-large-rox-pages.patch x86-module-enable-rox-caches-for-module-text-on-64-bit.patch