[ 100.726101] Running test [R:13291901 T:7 - Livepatch kselftests - Kernel: 5.14.0-245.1851_758818640.el9.x86_64] [ 125.363645] livepatch: kernel.ftrace_enabled = 1 [ 125.377226] ===== TEST: target module before livepatch ===== [ 125.390169] % modprobe test_klp_callbacks_mod [ 125.395906] test_klp_callbacks_mod: test_klp_callbacks_mod_init [ 125.413662] % modprobe test_klp_callbacks_demo [ 125.420069] test_klp_callbacks_demo: tainting kernel with TAINT_LIVEPATCH [ 125.421396] livepatch: enabling patch 'test_klp_callbacks_demo' [ 125.422221] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 125.422647] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 125.423460] test_klp_callbacks_demo: pre_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_LIVE] Normal state [ 125.424846] livepatch: 'test_klp_callbacks_demo': starting patching transition [ 125.426737] livepatch: 'test_klp_callbacks_demo': completing patching transition [ 125.426772] test_klp_callbacks_demo: post_patch_callback: vmlinux [ 125.427615] test_klp_callbacks_demo: post_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_LIVE] Normal state [ 125.429001] livepatch: 'test_klp_callbacks_demo': patching complete [ 125.433886] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo/enabled [ 125.435040] livepatch: 'test_klp_callbacks_demo': initializing unpatching transition [ 125.435091] test_klp_callbacks_demo: pre_unpatch_callback: vmlinux [ 125.435942] test_klp_callbacks_demo: pre_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_LIVE] Normal state [ 125.437336] livepatch: 'test_klp_callbacks_demo': starting unpatching transition [ 125.438752] livepatch: 'test_klp_callbacks_demo': completing unpatching transition [ 125.438773] test_klp_callbacks_demo: post_unpatch_callback: vmlinux [ 125.439635] test_klp_callbacks_demo: post_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_LIVE] Normal state [ 125.441040] livepatch: 'test_klp_callbacks_demo': unpatching complete [ 125.444136] % rmmod test_klp_callbacks_demo [ 125.450915] % rmmod test_klp_callbacks_mod [ 125.454281] test_klp_callbacks_mod: test_klp_callbacks_mod_exit [ 125.472167] ===== TEST: module_coming notifier ===== [ 125.484416] % modprobe test_klp_callbacks_demo [ 125.489868] livepatch: enabling patch 'test_klp_callbacks_demo' [ 125.490725] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 125.490820] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 125.491638] livepatch: 'test_klp_callbacks_demo': starting patching transition [ 125.493008] livepatch: 'test_klp_callbacks_demo': completing patching transition [ 125.493033] test_klp_callbacks_demo: post_patch_callback: vmlinux [ 125.493867] livepatch: 'test_klp_callbacks_demo': patching complete [ 125.510032] % modprobe test_klp_callbacks_mod [ 125.515445] livepatch: applying patch 'test_klp_callbacks_demo' to loading module 'test_klp_callbacks_mod' [ 125.516737] test_klp_callbacks_demo: pre_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_COMING] Full formed, running module_init [ 125.518330] test_klp_callbacks_demo: post_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_COMING] Full formed, running module_init [ 125.520202] test_klp_callbacks_mod: test_klp_callbacks_mod_init [ 125.522480] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo/enabled [ 125.523583] livepatch: 'test_klp_callbacks_demo': initializing unpatching transition [ 125.523679] test_klp_callbacks_demo: pre_unpatch_callback: vmlinux [ 125.524537] test_klp_callbacks_demo: pre_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_LIVE] Normal state [ 125.525951] livepatch: 'test_klp_callbacks_demo': starting unpatching transition [ 125.527369] livepatch: 'test_klp_callbacks_demo': completing unpatching transition [ 125.527412] test_klp_callbacks_demo: post_unpatch_callback: vmlinux [ 125.528271] test_klp_callbacks_demo: post_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_LIVE] Normal state [ 125.529641] livepatch: 'test_klp_callbacks_demo': unpatching complete [ 125.532867] % rmmod test_klp_callbacks_demo [ 125.539299] % rmmod test_klp_callbacks_mod [ 125.542473] test_klp_callbacks_mod: test_klp_callbacks_mod_exit [ 125.561691] ===== TEST: module_going notifier ===== [ 125.573667] % modprobe test_klp_callbacks_mod [ 125.578815] test_klp_callbacks_mod: test_klp_callbacks_mod_init [ 125.592862] % modprobe test_klp_callbacks_demo [ 125.598525] livepatch: enabling patch 'test_klp_callbacks_demo' [ 125.599380] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 125.599487] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 125.600298] test_klp_callbacks_demo: pre_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_LIVE] Normal state [ 125.601689] livepatch: 'test_klp_callbacks_demo': starting patching transition [ 125.603087] livepatch: 'test_klp_callbacks_demo': completing patching transition [ 125.603112] test_klp_callbacks_demo: post_patch_callback: vmlinux [ 125.603949] test_klp_callbacks_demo: post_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_LIVE] Normal state [ 125.605264] livepatch: 'test_klp_callbacks_demo': patching complete [ 125.611715] % rmmod test_klp_callbacks_mod [ 125.615153] test_klp_callbacks_mod: test_klp_callbacks_mod_exit [ 125.616252] test_klp_callbacks_demo: pre_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_GOING] Going away [ 125.617651] livepatch: reverting patch 'test_klp_callbacks_demo' on unloading module 'test_klp_callbacks_mod' [ 125.618958] test_klp_callbacks_demo: post_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_GOING] Going away [ 125.621675] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo/enabled [ 125.622731] livepatch: 'test_klp_callbacks_demo': initializing unpatching transition [ 125.622828] test_klp_callbacks_demo: pre_unpatch_callback: vmlinux [ 125.623681] livepatch: 'test_klp_callbacks_demo': starting unpatching transition [ 125.625095] livepatch: 'test_klp_callbacks_demo': completing unpatching transition [ 125.625117] test_klp_callbacks_demo: post_unpatch_callback: vmlinux [ 125.625976] livepatch: 'test_klp_callbacks_demo': unpatching complete [ 125.629115] % rmmod test_klp_callbacks_demo [ 125.654306] ===== TEST: module_coming and module_going notifiers ===== [ 125.667802] % modprobe test_klp_callbacks_demo [ 125.673727] livepatch: enabling patch 'test_klp_callbacks_demo' [ 125.674573] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 125.674670] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 125.675486] livepatch: 'test_klp_callbacks_demo': starting patching transition [ 125.676855] livepatch: 'test_klp_callbacks_demo': completing patching transition [ 125.676880] test_klp_callbacks_demo: post_patch_callback: vmlinux [ 125.677721] livepatch: 'test_klp_callbacks_demo': patching complete [ 125.693565] % modprobe test_klp_callbacks_mod [ 125.698642] livepatch: applying patch 'test_klp_callbacks_demo' to loading module 'test_klp_callbacks_mod' [ 125.699952] test_klp_callbacks_demo: pre_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_COMING] Full formed, running module_init [ 125.701575] test_klp_callbacks_demo: post_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_COMING] Full formed, running module_init [ 125.703371] test_klp_callbacks_mod: test_klp_callbacks_mod_init [ 125.707561] % rmmod test_klp_callbacks_mod [ 125.710856] test_klp_callbacks_mod: test_klp_callbacks_mod_exit [ 125.711890] test_klp_callbacks_demo: pre_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_GOING] Going away [ 125.713281] livepatch: reverting patch 'test_klp_callbacks_demo' on unloading module 'test_klp_callbacks_mod' [ 125.714594] test_klp_callbacks_demo: post_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_GOING] Going away [ 125.717247] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo/enabled [ 125.718338] livepatch: 'test_klp_callbacks_demo': initializing unpatching transition [ 125.718441] test_klp_callbacks_demo: pre_unpatch_callback: vmlinux [ 125.719289] livepatch: 'test_klp_callbacks_demo': starting unpatching transition [ 125.720698] livepatch: 'test_klp_callbacks_demo': completing unpatching transition [ 125.720720] test_klp_callbacks_demo: post_unpatch_callback: vmlinux [ 125.721580] livepatch: 'test_klp_callbacks_demo': unpatching complete [ 125.724628] % rmmod test_klp_callbacks_demo [ 125.745548] ===== TEST: target module not present ===== [ 125.757866] % modprobe test_klp_callbacks_demo [ 125.763213] livepatch: enabling patch 'test_klp_callbacks_demo' [ 125.763958] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 125.764051] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 125.764857] livepatch: 'test_klp_callbacks_demo': starting patching transition [ 125.766242] livepatch: 'test_klp_callbacks_demo': completing patching transition [ 125.766274] test_klp_callbacks_demo: post_patch_callback: vmlinux [ 125.767017] livepatch: 'test_klp_callbacks_demo': patching complete [ 125.771134] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo/enabled [ 125.772084] livepatch: 'test_klp_callbacks_demo': initializing unpatching transition [ 125.772141] test_klp_callbacks_demo: pre_unpatch_callback: vmlinux [ 125.772897] livepatch: 'test_klp_callbacks_demo': starting unpatching transition [ 125.774140] livepatch: 'test_klp_callbacks_demo': completing unpatching transition [ 125.774158] test_klp_callbacks_demo: post_unpatch_callback: vmlinux [ 125.774929] livepatch: 'test_klp_callbacks_demo': unpatching complete [ 125.777715] % rmmod test_klp_callbacks_demo [ 125.799563] ===== TEST: pre-patch callback -ENODEV ===== [ 125.811734] % modprobe test_klp_callbacks_mod [ 125.816928] test_klp_callbacks_mod: test_klp_callbacks_mod_init [ 125.819248] % modprobe test_klp_callbacks_demo pre_patch_ret=-19 [ 125.825032] livepatch: enabling patch 'test_klp_callbacks_demo' [ 125.825871] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 125.825969] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 125.826735] livepatch: pre-patch callback failed for object 'vmlinux' [ 125.827575] livepatch: failed to enable patch 'test_klp_callbacks_demo' [ 125.828470] livepatch: 'test_klp_callbacks_demo': canceling patching transition, going to unpatch [ 125.828471] livepatch: 'test_klp_callbacks_demo': completing unpatching transition [ 125.828735] livepatch: 'test_klp_callbacks_demo': unpatching complete [ 125.830477] modprobe: ERROR: could not insert 'test_klp_callbacks_demo': No such device [ 125.833490] % rmmod test_klp_callbacks_mod [ 125.836668] test_klp_callbacks_mod: test_klp_callbacks_mod_exit [ 125.855802] ===== TEST: module_coming + pre-patch callback -ENODEV ===== [ 125.868396] % modprobe test_klp_callbacks_demo [ 125.873885] livepatch: enabling patch 'test_klp_callbacks_demo' [ 125.874654] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 125.874751] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 125.875481] livepatch: 'test_klp_callbacks_demo': starting patching transition [ 125.876750] livepatch: 'test_klp_callbacks_demo': completing patching transition [ 125.876776] test_klp_callbacks_demo: post_patch_callback: vmlinux [ 125.877572] livepatch: 'test_klp_callbacks_demo': patching complete [ 125.882027] % echo -19 > /sys/module/test_klp_callbacks_demo/parameters/pre_patch_ret [ 125.885002] % modprobe test_klp_callbacks_mod [ 125.890008] livepatch: applying patch 'test_klp_callbacks_demo' to loading module 'test_klp_callbacks_mod' [ 125.891177] test_klp_callbacks_demo: pre_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_COMING] Full formed, running module_init [ 125.892637] livepatch: pre-patch callback failed for object 'test_klp_callbacks_mod' [ 125.893557] livepatch: patch 'test_klp_callbacks_demo' failed for module 'test_klp_callbacks_mod', refusing to load module 'test_klp_callbacks_mod' [ 125.895875] modprobe: ERROR: could not insert 'test_klp_callbacks_mod': No such device [ 125.897025] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo/enabled [ 125.898137] livepatch: 'test_klp_callbacks_demo': initializing unpatching transition [ 125.898244] test_klp_callbacks_demo: pre_unpatch_callback: vmlinux [ 125.899043] livepatch: 'test_klp_callbacks_demo': starting unpatching transition [ 125.900440] livepatch: 'test_klp_callbacks_demo': completing unpatching transition [ 125.900469] test_klp_callbacks_demo: post_unpatch_callback: vmlinux [ 125.901234] livepatch: 'test_klp_callbacks_demo': unpatching complete [ 125.904070] % rmmod test_klp_callbacks_demo [ 125.926385] ===== TEST: multiple target modules ===== [ 125.941328] % modprobe test_klp_callbacks_busy block_transition=N [ 125.946845] test_klp_callbacks_busy: test_klp_callbacks_busy_init [ 125.947634] test_klp_callbacks_busy: busymod_work_func enter [ 125.948380] test_klp_callbacks_busy: busymod_work_func exit [ 125.962123] % modprobe test_klp_callbacks_demo [ 125.969096] livepatch: enabling patch 'test_klp_callbacks_demo' [ 125.969848] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 125.969945] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 125.970675] test_klp_callbacks_demo: pre_patch_callback: test_klp_callbacks_busy -> [MODULE_STATE_LIVE] Normal state [ 125.976135] livepatch: 'test_klp_callbacks_demo': starting patching transition [ 125.977467] livepatch: 'test_klp_callbacks_demo': completing patching transition [ 125.977488] test_klp_callbacks_demo: post_patch_callback: vmlinux [ 125.978230] test_klp_callbacks_demo: post_patch_callback: test_klp_callbacks_busy -> [MODULE_STATE_LIVE] Normal state [ 125.979481] livepatch: 'test_klp_callbacks_demo': patching complete [ 125.995612] % modprobe test_klp_callbacks_mod [ 126.000628] livepatch: applying patch 'test_klp_callbacks_demo' to loading module 'test_klp_callbacks_mod' [ 126.001812] test_klp_callbacks_demo: pre_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_COMING] Full formed, running module_init [ 126.003259] test_klp_callbacks_demo: post_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_COMING] Full formed, running module_init [ 126.004897] test_klp_callbacks_mod: test_klp_callbacks_mod_init [ 126.009040] % rmmod test_klp_callbacks_mod [ 126.012141] test_klp_callbacks_mod: test_klp_callbacks_mod_exit [ 126.013076] test_klp_callbacks_demo: pre_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_GOING] Going away [ 126.014319] livepatch: reverting patch 'test_klp_callbacks_demo' on unloading module 'test_klp_callbacks_mod' [ 126.015631] test_klp_callbacks_demo: post_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_GOING] Going away [ 126.018290] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo/enabled [ 126.019254] livepatch: 'test_klp_callbacks_demo': initializing unpatching transition [ 126.019349] test_klp_callbacks_demo: pre_unpatch_callback: vmlinux [ 126.020092] test_klp_callbacks_demo: pre_unpatch_callback: test_klp_callbacks_busy -> [MODULE_STATE_LIVE] Normal state [ 126.021353] livepatch: 'test_klp_callbacks_demo': starting unpatching transition [ 126.022661] livepatch: 'test_klp_callbacks_demo': completing unpatching transition [ 126.136394] test_klp_callbacks_demo: post_unpatch_callback: vmlinux [ 126.137220] test_klp_callbacks_demo: post_unpatch_callback: test_klp_callbacks_busy -> [MODULE_STATE_LIVE] Normal state [ 126.138500] livepatch: 'test_klp_callbacks_demo': unpatching complete [ 126.141864] % rmmod test_klp_callbacks_demo [ 126.148408] % rmmod test_klp_callbacks_busy [ 126.151526] test_klp_callbacks_busy: test_klp_callbacks_busy_exit [ 126.171753] ===== TEST: busy target module ===== [ 126.183855] % modprobe test_klp_callbacks_busy block_transition=Y [ 126.189240] test_klp_callbacks_busy: test_klp_callbacks_busy_init [ 126.190036] test_klp_callbacks_busy: busymod_work_func enter [ 126.211124] % modprobe test_klp_callbacks_demo [ 126.222783] livepatch: enabling patch 'test_klp_callbacks_demo' [ 126.223550] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 126.223650] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 126.224435] test_klp_callbacks_demo: pre_patch_callback: test_klp_callbacks_busy -> [MODULE_STATE_LIVE] Normal state [ 126.229479] livepatch: 'test_klp_callbacks_demo': starting patching transition [ 126.245801] % modprobe test_klp_callbacks_mod [ 126.250721] livepatch: applying patch 'test_klp_callbacks_demo' to loading module 'test_klp_callbacks_mod' [ 126.251903] test_klp_callbacks_demo: pre_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_COMING] Full formed, running module_init [ 126.253521] test_klp_callbacks_mod: test_klp_callbacks_mod_init [ 126.257473] % rmmod test_klp_callbacks_mod [ 126.260529] test_klp_callbacks_mod: test_klp_callbacks_mod_exit [ 126.261465] livepatch: reverting patch 'test_klp_callbacks_demo' on unloading module 'test_klp_callbacks_mod' [ 126.262648] test_klp_callbacks_demo: post_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_GOING] Going away [ 126.265099] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo/enabled [ 126.266096] livepatch: 'test_klp_callbacks_demo': reversing transition from patching to unpatching [ 126.266280] livepatch: 'test_klp_callbacks_demo': starting unpatching transition [ 127.032530] livepatch: 'test_klp_callbacks_demo': completing unpatching transition [ 127.136349] test_klp_callbacks_demo: post_unpatch_callback: vmlinux [ 127.137192] test_klp_callbacks_demo: post_unpatch_callback: test_klp_callbacks_busy -> [MODULE_STATE_LIVE] Normal state [ 127.138467] livepatch: 'test_klp_callbacks_demo': unpatching complete [ 127.187211] % rmmod test_klp_callbacks_demo [ 127.193626] % rmmod test_klp_callbacks_busy [ 127.202196] test_klp_callbacks_busy: busymod_work_func exit [ 127.202910] test_klp_callbacks_busy: test_klp_callbacks_busy_exit [ 127.222559] ===== TEST: multiple livepatches ===== [ 127.234458] % modprobe test_klp_callbacks_demo [ 127.239568] livepatch: enabling patch 'test_klp_callbacks_demo' [ 127.240336] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 127.240436] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 127.241161] livepatch: 'test_klp_callbacks_demo': starting patching transition [ 127.242420] livepatch: 'test_klp_callbacks_demo': completing patching transition [ 127.242452] test_klp_callbacks_demo: post_patch_callback: vmlinux [ 127.243196] livepatch: 'test_klp_callbacks_demo': patching complete [ 127.258593] % modprobe test_klp_callbacks_demo2 [ 127.263583] livepatch: enabling patch 'test_klp_callbacks_demo2' [ 127.264359] livepatch: 'test_klp_callbacks_demo2': initializing patching transition [ 127.264449] test_klp_callbacks_demo2: pre_patch_callback: vmlinux [ 127.265183] livepatch: 'test_klp_callbacks_demo2': starting patching transition [ 127.266446] livepatch: 'test_klp_callbacks_demo2': completing patching transition [ 127.266469] test_klp_callbacks_demo2: post_patch_callback: vmlinux [ 127.267268] livepatch: 'test_klp_callbacks_demo2': patching complete [ 127.271302] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo2/enabled [ 127.272266] livepatch: 'test_klp_callbacks_demo2': initializing unpatching transition [ 127.272318] test_klp_callbacks_demo2: pre_unpatch_callback: vmlinux [ 127.273075] livepatch: 'test_klp_callbacks_demo2': starting unpatching transition [ 127.274285] livepatch: 'test_klp_callbacks_demo2': completing unpatching transition [ 127.274301] test_klp_callbacks_demo2: post_unpatch_callback: vmlinux [ 127.275066] livepatch: 'test_klp_callbacks_demo2': unpatching complete [ 127.276071] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo/enabled [ 127.277035] livepatch: 'test_klp_callbacks_demo': initializing unpatching transition [ 127.277058] test_klp_callbacks_demo: pre_unpatch_callback: vmlinux [ 127.277814] livepatch: 'test_klp_callbacks_demo': starting unpatching transition [ 127.278903] livepatch: 'test_klp_callbacks_demo': completing unpatching transition [ 127.278917] test_klp_callbacks_demo: post_unpatch_callback: vmlinux [ 127.279685] livepatch: 'test_klp_callbacks_demo': unpatching complete [ 127.282438] % rmmod test_klp_callbacks_demo2 [ 127.288486] % rmmod test_klp_callbacks_demo [ 127.311614] ===== TEST: atomic replace ===== [ 127.323513] % modprobe test_klp_callbacks_demo [ 127.328640] livepatch: enabling patch 'test_klp_callbacks_demo' [ 127.329417] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 127.329510] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 127.330232] livepatch: 'test_klp_callbacks_demo': starting patching transition [ 127.331493] livepatch: 'test_klp_callbacks_demo': completing patching transition [ 127.331522] test_klp_callbacks_demo: post_patch_callback: vmlinux [ 127.332266] livepatch: 'test_klp_callbacks_demo': patching complete [ 127.347203] % modprobe test_klp_callbacks_demo2 replace=1 [ 127.352322] livepatch: enabling patch 'test_klp_callbacks_demo2' [ 127.353094] livepatch: 'test_klp_callbacks_demo2': initializing patching transition [ 127.353192] test_klp_callbacks_demo2: pre_patch_callback: vmlinux [ 127.353920] livepatch: 'test_klp_callbacks_demo2': starting patching transition [ 127.355173] livepatch: 'test_klp_callbacks_demo2': completing patching transition [ 127.355201] test_klp_callbacks_demo2: post_patch_callback: vmlinux [ 127.355949] livepatch: 'test_klp_callbacks_demo2': patching complete [ 127.359985] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo2/enabled [ 127.360946] livepatch: 'test_klp_callbacks_demo2': initializing unpatching transition [ 127.361012] test_klp_callbacks_demo2: pre_unpatch_callback: vmlinux [ 127.361783] livepatch: 'test_klp_callbacks_demo2': starting unpatching transition [ 127.363031] livepatch: 'test_klp_callbacks_demo2': completing unpatching transition [ 127.363049] test_klp_callbacks_demo2: post_unpatch_callback: vmlinux [ 127.363829] livepatch: 'test_klp_callbacks_demo2': unpatching complete [ 127.366679] % rmmod test_klp_callbacks_demo2 [ 127.372898] % rmmod test_klp_callbacks_demo