livepatch: add (un)patch callbacks
Provide livepatch modules a klp_object (un)patching notification mechanism. Pre and post-(un)patch callbacks allow livepatch modules to setup or synchronize changes that would be difficult to support in only patched-or-unpatched code contexts. Callbacks can be registered for target module or vmlinux klp_objects, but each implementation is klp_object specific. - Pre-(un)patch callbacks run before any (un)patching transition starts. - Post-(un)patch callbacks run once an object has been (un)patched and the klp_patch fully transitioned to its target state. Example use cases include modification of global data and registration of newly available services/handlers. See Documentation/livepatch/callbacks.txt for details and samples/livepatch/ for examples. Signed-off-by:Joe Lawrence <joe.lawrence@redhat.com> Acked-by:
Josh Poimboeuf <jpoimboe@redhat.com> Acked-by:
Miroslav Benes <mbenes@suse.cz> Signed-off-by:
Jiri Kosina <jkosina@suse.cz>
Showing
- Documentation/livepatch/callbacks.txt 605 additions, 0 deletionsDocumentation/livepatch/callbacks.txt
- include/linux/livepatch.h 26 additions, 0 deletionsinclude/linux/livepatch.h
- kernel/livepatch/core.c 41 additions, 10 deletionskernel/livepatch/core.c
- kernel/livepatch/core.h 38 additions, 0 deletionskernel/livepatch/core.h
- kernel/livepatch/patch.c 1 addition, 0 deletionskernel/livepatch/patch.c
- kernel/livepatch/transition.c 18 additions, 3 deletionskernel/livepatch/transition.c
- samples/livepatch/Makefile 3 additions, 0 deletionssamples/livepatch/Makefile
- samples/livepatch/livepatch-callbacks-busymod.c 72 additions, 0 deletionssamples/livepatch/livepatch-callbacks-busymod.c
- samples/livepatch/livepatch-callbacks-demo.c 234 additions, 0 deletionssamples/livepatch/livepatch-callbacks-demo.c
- samples/livepatch/livepatch-callbacks-mod.c 53 additions, 0 deletionssamples/livepatch/livepatch-callbacks-mod.c
Loading
Please register or sign in to comment