{"id":24610,"date":"2026-09-16T20:32:32","date_gmt":"2026-09-16T12:32:32","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-89923"},"modified":"2026-09-16T20:32:32","modified_gmt":"2026-09-16T12:32:32","slug":"cve-2026-89923","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-89923","title":{"rendered":"CVE-2026-89923 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nKVM: s390: Free guest"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>KVM: s390: Free guest debug data on vcpu destroy<\/p>\n<p>kvm_s390_clear_bp_data() is only called from<br \/>\nkvm_arch_vcpu_ioctl_set_guest_debug(), i.e. when user space changes or<br \/>\ndisables debugging. A vCPU that is destroyed while hardware breakpoints<br \/>\nare still armed &#8211; the normal case when the VMM just exits or crashes &#8211;<br \/>\nleaks hw_bp_info, hw_wp_info and all old_data buffers, since generic KVM<br \/>\nfrees the vCPU right after kvm_arch_vcpu_destroy().<\/p>\n<p>That is bounded by MAX_BP_COUNT entries, so roughly 8 KiB per vCPU, but<br \/>\nit is unbounded over VM lifetimes. The allocations are<br \/>\nGFP_KERNEL_ACCOUNT, so the charge also outlives the exiting process and<br \/>\npins dying memcgs.<\/p>\n<p>Fix by clearing the debug data on vCPU destruction. Calling it<br \/>\nunconditionally is fine: struct kvm_vcpu is zero allocated, so for a vCPU<br \/>\nthat never enabled debugging the counters are 0 and the pointers NULL.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>KVM: s390: Free guest debug data on vcpu destroy<\/p>\n<p>kvm_s390_clear_bp_data() is only called from<br \/>\nkvm_arch_vcpu_ioctl_set_guest_debug(<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-24610","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/24610","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln"}],"about":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/types\/vuln"}],"wp:attachment":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=24610"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=24610"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=24610"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}