{"id":"CVE-2026-64163","title":"test_kprobes: clear kprobes between test runs","summary":"In the Linux kernel, the following vulnerability has been resolved:\n\ntest_kprobes: clear kprobes between test runs\n\nRunning the kprobes sanity tests twice makes all tests fail and\neventually crashes the kernel.\n\n[root@martin-riscv-1 ~]# …","severity":"none","vendor":"Linux","product":"Linux","affected":["Linux >= e44e81c5b90f698025eadceb7eef8661eda117d5 < 29ec976006dfab171a7e007976e38af56ce286e4","Linux >= e44e81c5b90f698025eadceb7eef8661eda117d5 < 08d355936fcf70c81c94f9fe7310450b65c53399","Linux >= e44e81c5b90f698025eadceb7eef8661eda117d5 < accc0004c501a9918313142282b094d408af06fb","Linux >= e44e81c5b90f698025eadceb7eef8661eda117d5 < 1c24cf1fd67f6702c719ab73499392cb7af956ae","Linux >= e44e81c5b90f698025eadceb7eef8661eda117d5 < 96515819d79f356f40da5540968d838ea570fab9","Linux >= e44e81c5b90f698025eadceb7eef8661eda117d5 < ef5581bb30efb939cc2bf093475c6cc85258e5cd","Linux 5.16"],"published":"2026-07-19","updated":"2026-10-30","sourceUpdated":"2026-10-30T12:27:39.441Z","source":"CVEORG","sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-64163","references":[{"url":"https://git.kernel.org/stable/c/29ec976006dfab171a7e007976e38af56ce286e4"},{"url":"https://git.kernel.org/stable/c/08d355936fcf70c81c94f9fe7310450b65c53399"},{"url":"https://git.kernel.org/stable/c/accc0004c501a9918313142282b094d408af06fb"},{"url":"https://git.kernel.org/stable/c/1c24cf1fd67f6702c719ab73499392cb7af956ae"},{"url":"https://git.kernel.org/stable/c/96515819d79f356f40da5540968d838ea570fab9"},{"url":"https://git.kernel.org/stable/c/ef5581bb30efb939cc2bf093475c6cc85258e5cd"}],"tags":["cve.org"],"epss":0.0012,"epssPercentile":0.01808,"ingestedAt":"2026-11-05T15:02:32.421Z","slug":"CVE-2026-64163","body":"## Overview\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\ntest_kprobes: clear kprobes between test runs\n\nRunning the kprobes sanity tests twice makes all tests fail and\neventually crashes the kernel.\n\n[root@martin-riscv-1 ~]# echo 1 > /sys/kernel/debug/kunit/kprobes_test/run\n...\n   # Totals: pass:5 fail:0 skip:0 total:5\n   ok 1 kprobes_test\n[root@martin-riscv-1 ~]# echo 1 > /sys/kernel/debug/kunit/kprobes_test/run\n...\n  # test_kprobe: EXPECTATION FAILED at lib/tests/test_kprobes.c:64\n  Expected 0 == register_kprobe(&kp), but\n      register_kprobe(&kp) == -22 (0xffffffffffffffea)\n...\n  Unable to handle kernel paging request ...\n\nThe testsuite defines several kprobes and kretprobes as static variables\nthat are preserved across test runs.\n\nAfter register_kprobe and unregister_kprobe, a kprobe contains some\nleftover data that must be cleared before the kprobe can be registered\nagain. The tests are setting symbol_name to define the probe location.\nAddress and flags must be cleared.\n\nThe existing code clears some of the probes between subsequent tests, but\nnot between two test runs. The leftover data from a previous test run\nmakes the registrations fail in the next run.\n\nMove the cleanups for all kprobes into kprobes_test_init, this function\nis called before each single test (including the first test of a test\nrun).\n\n## Affected\n\n- `Linux >= e44e81c5b90f698025eadceb7eef8661eda117d5 < 29ec976006dfab171a7e007976e38af56ce286e4`\n- `Linux >= e44e81c5b90f698025eadceb7eef8661eda117d5 < 08d355936fcf70c81c94f9fe7310450b65c53399`\n- `Linux >= e44e81c5b90f698025eadceb7eef8661eda117d5 < accc0004c501a9918313142282b094d408af06fb`\n- `Linux >= e44e81c5b90f698025eadceb7eef8661eda117d5 < 1c24cf1fd67f6702c719ab73499392cb7af956ae`\n- `Linux >= e44e81c5b90f698025eadceb7eef8661eda117d5 < 96515819d79f356f40da5540968d838ea570fab9`\n- `Linux >= e44e81c5b90f698025eadceb7eef8661eda117d5 < ef5581bb30efb939cc2bf093475c6cc85258e5cd`\n- `Linux 5.16`\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.","depth":"sunlit","depthScore":3,"depthScoreParts":{"impact":2.8,"likelihood":0,"exploitation":0,"ransomware":0},"changes":[]}