The kpatch.ko support module is no longer needed by modern upstream and
recent distribution kernels, so update the patch author guide
accordingly.
Signed-off-by: Joe Lawrence <joe.lawrence@redhat.com>
kpatch-build doesn't support GCC's sibling call optimizations in patched
functions to avoid potentially dangerous generated code. Explain the
error message that may result and link to the commit which provided
detailed explanation of why we disabled support for this in kpatch.
Signed-off-by: Joe Lawrence <joe.lawrence@redhat.com>
The kernel's definition of "inline" implies "notrace" and that may lead
to unexpected kpatch-build errors. Explain why that is and how to work
around the issue.
Fixes#983.
Signed-off-by: Joe Lawrence <joe.lawrence@redhat.com>
Referenced kernel documentation has moved from txt file to rst. Update
the hyperlink to point to the correct file.
Signed-off-by: Julien Thierry <jthierry@redhat.com>
Elaborate on the difficulties in using locks/mutexes from the kpatch
callback routines and suggest a few workarounds.
Signed-off-by: Joe Lawrence <joe.lawrence@redhat.com>
Upstream 4.15 kernels provide support for pre and post (un)patch
callbacks, inspired by the kpatch load hooks. Add support for them
in the livepatch-patch-hook.
At the same time, convert the kpatch hooks to use the same API.
Signed-off-by: Joe Lawrence <joe.lawrence@redhat.com>
I couldn't find a good place in the document for this, so I just added
an "Other issues" section at the end.
Fixes#738.
Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com>
This was discovered when trying to patch a netfilter issue and resulted in the following issue:
https://github.com/dynup/kpatch/issues/599
This patch adds some documentation in case this situation is encountered in the future.