Messages in this thread | | | Date | Fri, 27 Jan 2023 13:50:04 +0100 (CET) | From | Miroslav Benes <> | Subject | Re: [PATCH 2/2] powerpc/module_64: Fix "expected nop" error on module re-patching |
| |
On Tue, 24 Jan 2023, Josh Poimboeuf wrote:
> When a module with a livepatched function is unloaded and then reloaded, > klp attempts to dynamically re-patch it. On ppc64, that fails with the > following error: > > module_64: livepatch_nfsd: Expected nop after call, got e8410018 at e_show+0x60/0x548 [livepatch_nfsd] > livepatch: failed to initialize patch 'livepatch_nfsd' for module 'nfsd' (-8) > livepatch: patch 'livepatch_nfsd' failed for module 'nfsd', refusing to load module 'nfsd' > > The error happens because the restore r2 instruction had already > previously been written into the klp module's replacement function when > the original function was patched the first time. So the instruction > wasn't a nop as expected. > > When the restore r2 instruction has already been patched in, detect that > and skip the warning and the instruction write. > > Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org>
Reviewed-by: Miroslav Benes <mbenes@suse.cz>
M
| |