{"id":"CVE-2026-98268","state":"PUBLISHED","title":"perf: Fix null pointer access in is_include_guest_event()","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nperf: Fix null pointer access in is_include_guest_event()\n\nA typical module unload occurring event when there is an active perf\nconnection leads to freeing of the pmu pointer. The call log is something\nlike:\n ..\n __pmu_detach_event\n pmu_detach_event\n pmu_detach_events\n perf_pmu_unregister\n ..\n\n__pmu_detach_event() sets event->pmu to null. When the perf connection\nfinally is closed, the following stack trace is observed:\n\n Oops: general protection fault, kernel NULL pointer dereference\n ...\n RIP: 0010:_free_event+0x3e/0x370\n ...\n Call Trace:\n ...\n perf_event_release_kernel+0x260/0x2d0\n perf_release+0x12/0x20\n\nA call to mediated_pmu_unaccount_event() inside _free_event() is the root\ncause of this crash. Adding a check inside is_include_guest_event() ensures\nwe don't accidentally access a null pmu ptr. In addition to this, we will\nnow call mediated_pmu_unaccount_event() before clearing the pmu ptr so that\nnr_include_guest_events counts are maintained correctly.","publishedAt":"2026-10-06T08:45:30.917Z","updatedAt":"2026-10-19T09:16:39.095Z","severity":null,"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"eff95e170275d9e80b968f335cd03d0ac250d2d1","status":"affected","lessThan":"7fa9a465ae8f07c0e4685db6edb6a6f984dbd784","versionType":"git"},{"version":"eff95e170275d9e80b968f335cd03d0ac250d2d1","status":"affected","lessThan":"88aed0422f39b22406f35f1e758cea25e7bbcfb5","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["kernel/events/core.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"7.0","status":"affected"},{"version":"0","status":"unaffected","lessThan":"7.0","versionType":"semver"},{"version":"7.2.8","status":"unaffected","lessThanOrEqual":"7.2.*","versionType":"semver"},{"version":"7.3","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["kernel/events/core.c"]}],"references":["https://git.kernel.org/stable/c/7fa9a465ae8f07c0e4685db6edb6a6f984dbd784","https://git.kernel.org/stable/c/88aed0422f39b22406f35f1e758cea25e7bbcfb5"],"weaknesses":[],"ingestedAt":"2026-10-29T20:13:43.249Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/98xxx/CVE-2026-98268.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-98268","state":"PUBLISHED","datePublished":"2026-10-06T08:45:30.917Z","dateUpdated":"2026-10-19T09:16:39.095Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2026-09-25T10:25:14.333Z"},"containers":{"cna":{"title":"perf: Fix null pointer access in is_include_guest_event()","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nperf: Fix null pointer access in is_include_guest_event()\n\nA typical module unload occurring event when there is an active perf\nconnection leads to freeing of the pmu pointer. The call log is something\nlike:\n ..\n __pmu_detach_event\n pmu_detach_event\n pmu_detach_events\n perf_pmu_unregister\n ..\n\n__pmu_detach_event() sets event->pmu to null. When the perf connection\nfinally is closed, the following stack trace is observed:\n\n Oops: general protection fault, kernel NULL pointer dereference\n ...\n RIP: 0010:_free_event+0x3e/0x370\n ...\n Call Trace:\n ...\n perf_event_release_kernel+0x260/0x2d0\n perf_release+0x12/0x20\n\nA call to mediated_pmu_unaccount_event() inside _free_event() is the root\ncause of this crash. Adding a check inside is_include_guest_event() ensures\nwe don't accidentally access a null pmu ptr. In addition to this, we will\nnow call mediated_pmu_unaccount_event() before clearing the pmu ptr so that\nnr_include_guest_events counts are maintained correctly."}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"eff95e170275d9e80b968f335cd03d0ac250d2d1","status":"affected","lessThan":"7fa9a465ae8f07c0e4685db6edb6a6f984dbd784","versionType":"git"},{"version":"eff95e170275d9e80b968f335cd03d0ac250d2d1","status":"affected","lessThan":"88aed0422f39b22406f35f1e758cea25e7bbcfb5","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["kernel/events/core.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"7.0","status":"affected"},{"version":"0","status":"unaffected","lessThan":"7.0","versionType":"semver"},{"version":"7.2.8","status":"unaffected","lessThanOrEqual":"7.2.*","versionType":"semver"},{"version":"7.3","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["kernel/events/core.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/7fa9a465ae8f07c0e4685db6edb6a6f984dbd784"},{"url":"https://git.kernel.org/stable/c/88aed0422f39b22406f35f1e758cea25e7bbcfb5"}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-10-19T09:16:39.095Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"7.0","versionEndExcluding":"7.2.8"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"7.0","versionEndExcluding":"7.3"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}}}}}