On Fri, Feb 14, 2025 at 09:51:41AM -0800, Song Liu wrote: > > Ignorant arm64 question: is the module's text further away from slab > > memory than vmlinux text, thus requiring a different instruction (or > > GOT/TOC) to access memory further away in the address space? > > It appears to me the module text is very close to vmlinux text: > > vmlinux: ffff8000800b4b68 T copy_process > module: ffff80007b0f06d0 t copy_process > [livepatch_always_inline_special_static]
Hm... the only other thing I can think of is that the klp relas might be wrong somewhere. If you share patched.o and .ko files from the same build I could take a look. BTW, I realized the wrong function size shown in the WARNING stack trace is probably just due to a kallsyms quirk. It calculates a symbol's size by subtracting its start address from the next symbol's start address. It doesn't actually use the ELF symbol size. So the next symbol after copy_process() in the loaded module's address space might just be far away. That kallsyms issue has caused other headaches. It really needs to be fixed to use the actual ELF symbol size. -- Josh