[ 105.908782] Running test [R:13216505 T:7 - Livepatch kselftests - Kernel: 5.14.0-233.1838_745666537.el9.x86_64] [ 134.775788] livepatch: kernel.ftrace_enabled = 1 [ 134.797839] ===== TEST: target module before livepatch ===== [ 134.816516] % modprobe test_klp_callbacks_mod [ 134.823324] test_klp_callbacks_mod: test_klp_callbacks_mod_init [ 134.844284] % modprobe test_klp_callbacks_demo [ 134.850641] test_klp_callbacks_demo: tainting kernel with TAINT_LIVEPATCH [ 134.852052] livepatch: enabling patch 'test_klp_callbacks_demo' [ 134.852884] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 134.853210] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 134.854031] test_klp_callbacks_demo: pre_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_LIVE] Normal state [ 134.855418] livepatch: 'test_klp_callbacks_demo': starting patching transition [ 134.857421] livepatch: 'test_klp_callbacks_demo': completing patching transition [ 134.857449] test_klp_callbacks_demo: post_patch_callback: vmlinux [ 134.858294] test_klp_callbacks_demo: post_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_LIVE] Normal state [ 134.859698] livepatch: 'test_klp_callbacks_demo': patching complete [ 134.865036] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo/enabled [ 134.866196] livepatch: 'test_klp_callbacks_demo': initializing unpatching transition [ 134.866256] test_klp_callbacks_demo: pre_unpatch_callback: vmlinux [ 134.867114] test_klp_callbacks_demo: pre_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_LIVE] Normal state [ 134.868507] livepatch: 'test_klp_callbacks_demo': starting unpatching transition [ 134.870026] livepatch: 'test_klp_callbacks_demo': completing unpatching transition [ 134.870051] test_klp_callbacks_demo: post_unpatch_callback: vmlinux [ 134.870925] test_klp_callbacks_demo: post_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_LIVE] Normal state [ 134.872336] livepatch: 'test_klp_callbacks_demo': unpatching complete [ 134.875715] % rmmod test_klp_callbacks_demo [ 134.883389] % rmmod test_klp_callbacks_mod [ 134.886907] test_klp_callbacks_mod: test_klp_callbacks_mod_exit [ 134.907876] ===== TEST: module_coming notifier ===== [ 134.921533] % modprobe test_klp_callbacks_demo [ 134.927809] livepatch: enabling patch 'test_klp_callbacks_demo' [ 134.928661] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 134.928744] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 134.929558] livepatch: 'test_klp_callbacks_demo': starting patching transition [ 134.930938] livepatch: 'test_klp_callbacks_demo': completing patching transition [ 134.930964] test_klp_callbacks_demo: post_patch_callback: vmlinux [ 134.931815] livepatch: 'test_klp_callbacks_demo': patching complete [ 134.948865] % modprobe test_klp_callbacks_mod [ 134.954477] livepatch: applying patch 'test_klp_callbacks_demo' to loading module 'test_klp_callbacks_mod' [ 134.955822] test_klp_callbacks_demo: pre_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_COMING] Full formed, running module_init [ 134.957443] test_klp_callbacks_demo: post_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_COMING] Full formed, running module_init [ 134.959311] test_klp_callbacks_mod: test_klp_callbacks_mod_init [ 134.961670] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo/enabled [ 134.962901] livepatch: 'test_klp_callbacks_demo': initializing unpatching transition [ 134.962974] test_klp_callbacks_demo: pre_unpatch_callback: vmlinux [ 134.963837] test_klp_callbacks_demo: pre_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_LIVE] Normal state [ 134.965235] livepatch: 'test_klp_callbacks_demo': starting unpatching transition [ 134.966612] livepatch: 'test_klp_callbacks_demo': completing unpatching transition [ 134.966638] test_klp_callbacks_demo: post_unpatch_callback: vmlinux [ 134.967499] test_klp_callbacks_demo: post_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_LIVE] Normal state [ 134.968913] livepatch: 'test_klp_callbacks_demo': unpatching complete [ 134.972214] % rmmod test_klp_callbacks_demo [ 134.979055] % rmmod test_klp_callbacks_mod [ 134.982505] test_klp_callbacks_mod: test_klp_callbacks_mod_exit [ 135.002696] ===== TEST: module_going notifier ===== [ 135.015986] % modprobe test_klp_callbacks_mod [ 135.021761] test_klp_callbacks_mod: test_klp_callbacks_mod_init [ 135.037067] % modprobe test_klp_callbacks_demo [ 135.043236] livepatch: enabling patch 'test_klp_callbacks_demo' [ 135.044089] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 135.044161] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 135.044988] test_klp_callbacks_demo: pre_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_LIVE] Normal state [ 135.046387] livepatch: 'test_klp_callbacks_demo': starting patching transition [ 135.051332] livepatch: 'test_klp_callbacks_demo': completing patching transition [ 135.051407] test_klp_callbacks_demo: post_patch_callback: vmlinux [ 135.052297] test_klp_callbacks_demo: post_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_LIVE] Normal state [ 135.053695] livepatch: 'test_klp_callbacks_demo': patching complete [ 135.060810] % rmmod test_klp_callbacks_mod [ 135.064392] test_klp_callbacks_mod: test_klp_callbacks_mod_exit [ 135.065387] test_klp_callbacks_demo: pre_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_GOING] Going away [ 135.066791] livepatch: reverting patch 'test_klp_callbacks_demo' on unloading module 'test_klp_callbacks_mod' [ 135.068115] test_klp_callbacks_demo: post_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_GOING] Going away [ 135.071018] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo/enabled [ 135.072069] livepatch: 'test_klp_callbacks_demo': initializing unpatching transition [ 135.072141] test_klp_callbacks_demo: pre_unpatch_callback: vmlinux [ 135.073001] livepatch: 'test_klp_callbacks_demo': starting unpatching transition [ 135.074440] livepatch: 'test_klp_callbacks_demo': completing unpatching transition [ 135.074469] test_klp_callbacks_demo: post_unpatch_callback: vmlinux [ 135.075340] livepatch: 'test_klp_callbacks_demo': unpatching complete [ 135.078590] % rmmod test_klp_callbacks_demo [ 135.102258] ===== TEST: module_coming and module_going notifiers ===== [ 135.116183] % modprobe test_klp_callbacks_demo [ 135.122402] livepatch: enabling patch 'test_klp_callbacks_demo' [ 135.123274] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 135.123346] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 135.124160] livepatch: 'test_klp_callbacks_demo': starting patching transition [ 135.125543] livepatch: 'test_klp_callbacks_demo': completing patching transition [ 135.125566] test_klp_callbacks_demo: post_patch_callback: vmlinux [ 135.126401] livepatch: 'test_klp_callbacks_demo': patching complete [ 135.143690] % modprobe test_klp_callbacks_mod [ 135.149343] livepatch: applying patch 'test_klp_callbacks_demo' to loading module 'test_klp_callbacks_mod' [ 135.150690] test_klp_callbacks_demo: pre_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_COMING] Full formed, running module_init [ 135.152305] test_klp_callbacks_demo: post_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_COMING] Full formed, running module_init [ 135.154186] test_klp_callbacks_mod: test_klp_callbacks_mod_init [ 135.158665] % rmmod test_klp_callbacks_mod [ 135.162240] test_klp_callbacks_mod: test_klp_callbacks_mod_exit [ 135.163239] test_klp_callbacks_demo: pre_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_GOING] Going away [ 135.164645] livepatch: reverting patch 'test_klp_callbacks_demo' on unloading module 'test_klp_callbacks_mod' [ 135.165961] test_klp_callbacks_demo: post_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_GOING] Going away [ 135.168852] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo/enabled [ 135.169953] livepatch: 'test_klp_callbacks_demo': initializing unpatching transition [ 135.170029] test_klp_callbacks_demo: pre_unpatch_callback: vmlinux [ 135.170900] livepatch: 'test_klp_callbacks_demo': starting unpatching transition [ 135.172332] livepatch: 'test_klp_callbacks_demo': completing unpatching transition [ 135.172355] test_klp_callbacks_demo: post_unpatch_callback: vmlinux [ 135.173228] livepatch: 'test_klp_callbacks_demo': unpatching complete [ 135.176524] % rmmod test_klp_callbacks_demo [ 135.200482] ===== TEST: target module not present ===== [ 135.214368] % modprobe test_klp_callbacks_demo [ 135.220687] livepatch: enabling patch 'test_klp_callbacks_demo' [ 135.221559] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 135.221631] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 135.222444] livepatch: 'test_klp_callbacks_demo': starting patching transition [ 135.223825] livepatch: 'test_klp_callbacks_demo': completing patching transition [ 135.223864] test_klp_callbacks_demo: post_patch_callback: vmlinux [ 135.224691] livepatch: 'test_klp_callbacks_demo': patching complete [ 135.229486] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo/enabled [ 135.230571] livepatch: 'test_klp_callbacks_demo': initializing unpatching transition [ 135.230638] test_klp_callbacks_demo: pre_unpatch_callback: vmlinux [ 135.231488] livepatch: 'test_klp_callbacks_demo': starting unpatching transition [ 135.232930] livepatch: 'test_klp_callbacks_demo': completing unpatching transition [ 135.232952] test_klp_callbacks_demo: post_unpatch_callback: vmlinux [ 135.233816] livepatch: 'test_klp_callbacks_demo': unpatching complete [ 135.237107] % rmmod test_klp_callbacks_demo [ 135.261133] ===== TEST: pre-patch callback -ENODEV ===== [ 135.274733] % modprobe test_klp_callbacks_mod [ 135.280663] test_klp_callbacks_mod: test_klp_callbacks_mod_init [ 135.283167] % modprobe test_klp_callbacks_demo pre_patch_ret=-19 [ 135.289554] livepatch: enabling patch 'test_klp_callbacks_demo' [ 135.290401] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 135.290475] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 135.291293] livepatch: pre-patch callback failed for object 'vmlinux' [ 135.292155] livepatch: failed to enable patch 'test_klp_callbacks_demo' [ 135.293038] livepatch: 'test_klp_callbacks_demo': canceling patching transition, going to unpatch [ 135.293040] livepatch: 'test_klp_callbacks_demo': completing unpatching transition [ 135.293289] livepatch: 'test_klp_callbacks_demo': unpatching complete [ 135.295229] modprobe: ERROR: could not insert 'test_klp_callbacks_demo': No such device [ 135.298675] % rmmod test_klp_callbacks_mod [ 135.302166] test_klp_callbacks_mod: test_klp_callbacks_mod_exit [ 135.326998] ===== TEST: module_coming + pre-patch callback -ENODEV ===== [ 135.341521] % modprobe test_klp_callbacks_demo [ 135.347871] livepatch: enabling patch 'test_klp_callbacks_demo' [ 135.348737] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 135.348809] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 135.349622] livepatch: 'test_klp_callbacks_demo': starting patching transition [ 135.351050] livepatch: 'test_klp_callbacks_demo': completing patching transition [ 135.351080] test_klp_callbacks_demo: post_patch_callback: vmlinux [ 135.351925] livepatch: 'test_klp_callbacks_demo': patching complete [ 135.365389] % echo -19 > /sys/module/test_klp_callbacks_demo/parameters/pre_patch_ret [ 135.377152] % modprobe test_klp_callbacks_mod [ 135.383219] livepatch: applying patch 'test_klp_callbacks_demo' to loading module 'test_klp_callbacks_mod' [ 135.384564] test_klp_callbacks_demo: pre_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_COMING] Full formed, running module_init [ 135.386188] livepatch: pre-patch callback failed for object 'test_klp_callbacks_mod' [ 135.387222] livepatch: patch 'test_klp_callbacks_demo' failed for module 'test_klp_callbacks_mod', refusing to load module 'test_klp_callbacks_mod' [ 135.390035] modprobe: ERROR: could not insert 'test_klp_callbacks_mod': No such device [ 135.391244] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo/enabled [ 135.392395] livepatch: 'test_klp_callbacks_demo': initializing unpatching transition [ 135.392469] test_klp_callbacks_demo: pre_unpatch_callback: vmlinux [ 135.393325] livepatch: 'test_klp_callbacks_demo': starting unpatching transition [ 135.394657] livepatch: 'test_klp_callbacks_demo': completing unpatching transition [ 135.394678] test_klp_callbacks_demo: post_unpatch_callback: vmlinux [ 135.395538] livepatch: 'test_klp_callbacks_demo': unpatching complete [ 135.398886] % rmmod test_klp_callbacks_demo [ 135.423813] ===== TEST: multiple target modules ===== [ 135.437621] % modprobe test_klp_callbacks_busy block_transition=N [ 135.443804] test_klp_callbacks_busy: test_klp_callbacks_busy_init [ 135.444683] test_klp_callbacks_busy: busymod_work_func enter [ 135.445456] test_klp_callbacks_busy: busymod_work_func exit [ 135.460868] % modprobe test_klp_callbacks_demo [ 135.469330] livepatch: enabling patch 'test_klp_callbacks_demo' [ 135.470193] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 135.470264] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 135.471091] test_klp_callbacks_demo: pre_patch_callback: test_klp_callbacks_busy -> [MODULE_STATE_LIVE] Normal state [ 135.476565] livepatch: 'test_klp_callbacks_demo': starting patching transition [ 135.477958] livepatch: 'test_klp_callbacks_demo': completing patching transition [ 135.477980] test_klp_callbacks_demo: post_patch_callback: vmlinux [ 135.478817] test_klp_callbacks_demo: post_patch_callback: test_klp_callbacks_busy -> [MODULE_STATE_LIVE] Normal state [ 135.480214] livepatch: 'test_klp_callbacks_demo': patching complete [ 135.497780] % modprobe test_klp_callbacks_mod [ 135.503481] livepatch: applying patch 'test_klp_callbacks_demo' to loading module 'test_klp_callbacks_mod' [ 135.504836] test_klp_callbacks_demo: pre_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_COMING] Full formed, running module_init [ 135.506464] test_klp_callbacks_demo: post_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_COMING] Full formed, running module_init [ 135.508364] test_klp_callbacks_mod: test_klp_callbacks_mod_init [ 135.513028] % rmmod test_klp_callbacks_mod [ 135.516636] test_klp_callbacks_mod: test_klp_callbacks_mod_exit [ 135.517630] test_klp_callbacks_demo: pre_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_GOING] Going away [ 135.519032] livepatch: reverting patch 'test_klp_callbacks_demo' on unloading module 'test_klp_callbacks_mod' [ 135.520347] test_klp_callbacks_demo: post_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_GOING] Going away [ 135.523324] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo/enabled [ 135.524397] livepatch: 'test_klp_callbacks_demo': initializing unpatching transition [ 135.524469] test_klp_callbacks_demo: pre_unpatch_callback: vmlinux [ 135.525320] test_klp_callbacks_demo: pre_unpatch_callback: test_klp_callbacks_busy -> [MODULE_STATE_LIVE] Normal state [ 135.526734] livepatch: 'test_klp_callbacks_demo': starting unpatching transition [ 135.528159] livepatch: 'test_klp_callbacks_demo': completing unpatching transition [ 135.637932] test_klp_callbacks_demo: post_unpatch_callback: vmlinux [ 135.638916] test_klp_callbacks_demo: post_unpatch_callback: test_klp_callbacks_busy -> [MODULE_STATE_LIVE] Normal state [ 135.640437] livepatch: 'test_klp_callbacks_demo': unpatching complete [ 135.646382] % rmmod test_klp_callbacks_demo [ 135.653792] % rmmod test_klp_callbacks_busy [ 135.657575] test_klp_callbacks_busy: test_klp_callbacks_busy_exit [ 135.685260] ===== TEST: busy target module ===== [ 135.707774] % modprobe test_klp_callbacks_busy block_transition=Y [ 135.714979] test_klp_callbacks_busy: test_klp_callbacks_busy_init [ 135.716034] test_klp_callbacks_busy: busymod_work_func enter [ 135.734131] % modprobe test_klp_callbacks_demo [ 135.742110] livepatch: enabling patch 'test_klp_callbacks_demo' [ 135.743089] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 135.743163] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 135.744105] test_klp_callbacks_demo: pre_patch_callback: test_klp_callbacks_busy -> [MODULE_STATE_LIVE] Normal state [ 135.750179] livepatch: 'test_klp_callbacks_demo': starting patching transition [ 135.768353] % modprobe test_klp_callbacks_mod [ 135.774131] livepatch: applying patch 'test_klp_callbacks_demo' to loading module 'test_klp_callbacks_mod' [ 135.775469] test_klp_callbacks_demo: pre_patch_callback: test_klp_callbacks_mod -> [MODULE_STATE_COMING] Full formed, running module_init [ 135.777673] test_klp_callbacks_mod: test_klp_callbacks_mod_init [ 135.782686] % rmmod test_klp_callbacks_mod [ 135.786428] test_klp_callbacks_mod: test_klp_callbacks_mod_exit [ 135.787445] livepatch: reverting patch 'test_klp_callbacks_demo' on unloading module 'test_klp_callbacks_mod' [ 135.788791] test_klp_callbacks_demo: post_unpatch_callback: test_klp_callbacks_mod -> [MODULE_STATE_GOING] Going away [ 135.791737] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo/enabled [ 135.792802] livepatch: 'test_klp_callbacks_demo': reversing transition from patching to unpatching [ 135.792886] livepatch: 'test_klp_callbacks_demo': starting unpatching transition [ 137.142047] livepatch: 'test_klp_callbacks_demo': completing unpatching transition [ 137.253829] test_klp_callbacks_demo: post_unpatch_callback: vmlinux [ 137.254758] test_klp_callbacks_demo: post_unpatch_callback: test_klp_callbacks_busy -> [MODULE_STATE_LIVE] Normal state [ 137.256263] livepatch: 'test_klp_callbacks_demo': unpatching complete [ 137.332302] % rmmod test_klp_callbacks_demo [ 137.340343] % rmmod test_klp_callbacks_busy [ 137.344670] test_klp_callbacks_busy: busymod_work_func exit [ 137.345501] test_klp_callbacks_busy: test_klp_callbacks_busy_exit [ 137.370229] ===== TEST: multiple livepatches ===== [ 137.384891] % modprobe test_klp_callbacks_demo [ 137.391690] livepatch: enabling patch 'test_klp_callbacks_demo' [ 137.392557] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 137.392645] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 137.393560] livepatch: 'test_klp_callbacks_demo': starting patching transition [ 137.395014] livepatch: 'test_klp_callbacks_demo': completing patching transition [ 137.395044] test_klp_callbacks_demo: post_patch_callback: vmlinux [ 137.395950] livepatch: 'test_klp_callbacks_demo': patching complete [ 137.415587] % modprobe test_klp_callbacks_demo2 [ 137.421936] livepatch: enabling patch 'test_klp_callbacks_demo2' [ 137.422814] livepatch: 'test_klp_callbacks_demo2': initializing patching transition [ 137.422888] test_klp_callbacks_demo2: pre_patch_callback: vmlinux [ 137.423728] livepatch: 'test_klp_callbacks_demo2': starting patching transition [ 137.425129] livepatch: 'test_klp_callbacks_demo2': completing patching transition [ 137.425155] test_klp_callbacks_demo2: post_patch_callback: vmlinux [ 137.426014] livepatch: 'test_klp_callbacks_demo2': patching complete [ 137.430972] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo2/enabled [ 137.432073] livepatch: 'test_klp_callbacks_demo2': initializing unpatching transition [ 137.432136] test_klp_callbacks_demo2: pre_unpatch_callback: vmlinux [ 137.433010] livepatch: 'test_klp_callbacks_demo2': starting unpatching transition [ 137.434464] livepatch: 'test_klp_callbacks_demo2': completing unpatching transition [ 137.434488] test_klp_callbacks_demo2: post_unpatch_callback: vmlinux [ 137.435364] livepatch: 'test_klp_callbacks_demo2': unpatching complete [ 137.436510] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo/enabled [ 137.437606] livepatch: 'test_klp_callbacks_demo': initializing unpatching transition [ 137.437650] test_klp_callbacks_demo: pre_unpatch_callback: vmlinux [ 137.438499] livepatch: 'test_klp_callbacks_demo': starting unpatching transition [ 137.439914] livepatch: 'test_klp_callbacks_demo': completing unpatching transition [ 137.439935] test_klp_callbacks_demo: post_unpatch_callback: vmlinux [ 137.440816] livepatch: 'test_klp_callbacks_demo': unpatching complete [ 137.444197] % rmmod test_klp_callbacks_demo2 [ 137.451368] % rmmod test_klp_callbacks_demo [ 137.478188] ===== TEST: atomic replace ===== [ 137.492380] % modprobe test_klp_callbacks_demo [ 137.498811] livepatch: enabling patch 'test_klp_callbacks_demo' [ 137.499689] livepatch: 'test_klp_callbacks_demo': initializing patching transition [ 137.499761] test_klp_callbacks_demo: pre_patch_callback: vmlinux [ 137.500576] livepatch: 'test_klp_callbacks_demo': starting patching transition [ 137.501980] livepatch: 'test_klp_callbacks_demo': completing patching transition [ 137.502003] test_klp_callbacks_demo: post_patch_callback: vmlinux [ 137.502857] livepatch: 'test_klp_callbacks_demo': patching complete [ 137.521218] % modprobe test_klp_callbacks_demo2 replace=1 [ 137.527749] livepatch: enabling patch 'test_klp_callbacks_demo2' [ 137.528646] livepatch: 'test_klp_callbacks_demo2': initializing patching transition [ 137.528718] test_klp_callbacks_demo2: pre_patch_callback: vmlinux [ 137.529547] livepatch: 'test_klp_callbacks_demo2': starting patching transition [ 137.530995] livepatch: 'test_klp_callbacks_demo2': completing patching transition [ 137.531029] test_klp_callbacks_demo2: post_patch_callback: vmlinux [ 137.531897] livepatch: 'test_klp_callbacks_demo2': patching complete [ 137.536787] % echo 0 > /sys/kernel/livepatch/test_klp_callbacks_demo2/enabled [ 137.537864] livepatch: 'test_klp_callbacks_demo2': initializing unpatching transition [ 137.537938] test_klp_callbacks_demo2: pre_unpatch_callback: vmlinux [ 137.538810] livepatch: 'test_klp_callbacks_demo2': starting unpatching transition [ 137.540330] livepatch: 'test_klp_callbacks_demo2': completing unpatching transition [ 137.540350] test_klp_callbacks_demo2: post_unpatch_callback: vmlinux [ 137.541231] livepatch: 'test_klp_callbacks_demo2': unpatching complete [ 137.544652] % rmmod test_klp_callbacks_demo2 [ 137.551938] % rmmod test_klp_callbacks_demo