mirror of https://github.com/dynup/kpatch
b311112702
we remove the pre_patch_callback/post_unpatch_callback from the stop_machine context. If a schedule/sleep happend in callbacks while the process to be scheuded later will send IPI, because all interrupts are disabled, the machine will trap into a deadlock in such situation. So we remove the pre_patch_callback and post_unpatch_callback from the stop_machine to avoid such situation. On the other hand, to avoid the race between the patched code and post-patch/pre-unpatch callbacks when run in parallel, we didn't remove the post_patch_callback and pre_unpatch_callback from stop_machine. |
||
---|---|---|
.. | ||
Makefile | ||
core.c | ||
kpatch.h | ||
shadow.c |