KVM: s390: Free guest debug data on vcpu destroy
Summary
| CVE | CVE-2026-89923 |
| State | PUBLISHED |
| Assigner | Linux |
| Source Priority | CVE Program / NVD first with legacy fallback |
| Published | 2026-09-16 11:17:01 UTC |
| Updated | 2026-09-16 11:17:01 UTC |
| Description | In the Linux kernel, the following vulnerability has been resolved:
KVM: s390: Free guest debug data on vcpu destroy
kvm_s390_clear_bp_data() is only called from
kvm_arch_vcpu_ioctl_set_guest_debug(), i.e. when user space changes or
disables debugging. A vCPU that is destroyed while hardware breakpoints
are still armed - the normal case when the VMM just exits or crashes -
leaks hw_bp_info, hw_wp_info and all old_data buffers, since generic KVM
frees the vCPU right after kvm_arch_vcpu_destroy().
That is bounded by MAX_BP_COUNT entries, so roughly 8 KiB per vCPU, but
it is unbounded over VM lifetimes. The allocations are
GFP_KERNEL_ACCOUNT, so the charge also outlives the exiting process and
pins dying memcgs.
Fix by clearing the debug data on vCPU destruction. Calling it
unconditionally is fine: struct kvm_vcpu is zero allocated, so for a vCPU
that never enabled debugging the counters are 0 and the pointers NULL. |
Vendor Declared Affected Products
| Source | Vendor | Product | Version | Platforms |
|---|
| CNA |
Linux |
Linux |
affected 27291e2165b6de70c476b7b675308113edd69a60 053f2068cf9b0654b651fed5ad7649d3deb982bf git |
Not specified |
| CNA |
Linux |
Linux |
affected 27291e2165b6de70c476b7b675308113edd69a60 6c996b12bbe4a6023076e8eee3cfaf2cc99db76c git |
Not specified |
| CNA |
Linux |
Linux |
affected 27291e2165b6de70c476b7b675308113edd69a60 d6280fc540d8f4653c9b54a78cb747e128070f5e git |
Not specified |
| CNA |
Linux |
Linux |
affected 27291e2165b6de70c476b7b675308113edd69a60 544a5a665019cef394ce8bda97fa7a2cab253781 git |
Not specified |
| CNA |
Linux |
Linux |
affected 27291e2165b6de70c476b7b675308113edd69a60 9a32c4c6a6c23b7f5bf765eb5b83ba7f64a8ec63 git |
Not specified |
| CNA |
Linux |
Linux |
affected 27291e2165b6de70c476b7b675308113edd69a60 b5acacfdb8966abff91836c1c5bd7da59d8a526e git |
Not specified |
| CNA |
Linux |
Linux |
affected 27291e2165b6de70c476b7b675308113edd69a60 e4d8b7f176b976474e0800ba71ee2dfa3ce263c9 git |
Not specified |
| CNA |
Linux |
Linux |
affected 27291e2165b6de70c476b7b675308113edd69a60 e7f698b09d4a7c36b299acf680fc50fe868e2bcd git |
Not specified |
| CNA |
Linux |
Linux |
affected 3.16 |
Not specified |
| CNA |
Linux |
Linux |
unaffected 3.16 semver |
Not specified |
| CNA |
Linux |
Linux |
unaffected 5.10.270 5.10.* semver |
Not specified |
| CNA |
Linux |
Linux |
unaffected 5.15.221 5.15.* semver |
Not specified |
| CNA |
Linux |
Linux |
unaffected 6.1.188 6.1.* semver |
Not specified |
| CNA |
Linux |
Linux |
unaffected 6.6.157 6.6.* semver |
Not specified |
| CNA |
Linux |
Linux |
unaffected 6.12.110 6.12.* semver |
Not specified |
| CNA |
Linux |
Linux |
unaffected 6.18.51 6.18.* semver |
Not specified |
| CNA |
Linux |
Linux |
unaffected 7.2.5 7.2.* semver |
Not specified |
| CNA |
Linux |
Linux |
unaffected 7.3-rc1 * original_commit_for_fix |
Not specified |
References
| Reference | Source | Link | Tags |
|---|
| git.kernel.org/stable/c/e7f698b09d4a7c36b299acf680fc50fe868e2bcd |
416baaa9-dc9f-4396-8d5f-8c081fb06d67 |
git.kernel.org |
|
| git.kernel.org/stable/c/6c996b12bbe4a6023076e8eee3cfaf2cc99db76c |
416baaa9-dc9f-4396-8d5f-8c081fb06d67 |
git.kernel.org |
|
| git.kernel.org/stable/c/9a32c4c6a6c23b7f5bf765eb5b83ba7f64a8ec63 |
416baaa9-dc9f-4396-8d5f-8c081fb06d67 |
git.kernel.org |
|
| git.kernel.org/stable/c/544a5a665019cef394ce8bda97fa7a2cab253781 |
416baaa9-dc9f-4396-8d5f-8c081fb06d67 |
git.kernel.org |
|
| git.kernel.org/stable/c/e4d8b7f176b976474e0800ba71ee2dfa3ce263c9 |
416baaa9-dc9f-4396-8d5f-8c081fb06d67 |
git.kernel.org |
|
| git.kernel.org/stable/c/053f2068cf9b0654b651fed5ad7649d3deb982bf |
416baaa9-dc9f-4396-8d5f-8c081fb06d67 |
git.kernel.org |
|
| git.kernel.org/stable/c/b5acacfdb8966abff91836c1c5bd7da59d8a526e |
416baaa9-dc9f-4396-8d5f-8c081fb06d67 |
git.kernel.org |
|
| git.kernel.org/stable/c/d6280fc540d8f4653c9b54a78cb747e128070f5e |
416baaa9-dc9f-4396-8d5f-8c081fb06d67 |
git.kernel.org |
|
| CVE Program record |
CVE.ORG |
www.cve.org |
canonical |
| NVD vulnerability detail |
NVD |
nvd.nist.gov |
canonical, analysis |
No vendor comments have been submitted for this CVE.
There are currently no legacy QID mappings associated with this CVE.