KVM: s390: Take srcu when importing watchpoint data
In the Linux kernel, the following vulnerability has been resolved: KVM: s390: Take srcu when importing watchpoint data __import_wp_info() backs up the original guest memory contents of a watchpoint with read_guest_abs(), which is kvm_read_guest() and therefore resolves the memslot via __kvm_memslots(). That requires kvm->srcu (or kvm->slots_lock) to be held, otherwise a concurrent memslot update can free the memslots array under us once its SRCU grace period has elapsed. As this is not fast path, following lock ordering (mutex first, then srcu) take the big hammer and hold the srcu for the full import.
- Products
- Kernel
- Affected versions
- Not specified
- Fixed versions
- 6.1.188, 6.12.110, 6.18.51, 6.6.157, 7.2.5
- CVEs
- CVE-2026-89922
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 7 Nov 2026, 00:40 UTC · Revision 1
Source evidence
KVM: s390: Take srcu when importing watchpoint data
core-osv · Original sourcePublished 16 Sept 2026, 10:32 UTC
In the Linux kernel, the following vulnerability has been resolved: KVM: s390: Take srcu when importing watchpoint data __import_wp_info() backs up the original guest memory contents of a watchpoint with read_guest_abs(), which is kvm_read_guest() and therefore resolves the memslot via __kvm_memslots(). That requires kvm->srcu (or kvm->slots_lock) to be held, otherwise a concurrent memslot update can free the memslots array under us once its SRCU grace period has elapsed. As this is not fast path, following lock ordering (mutex first, then srcu) take the big hammer and hold the srcu for the full import.
osv:CVE-2026-89922
Kernel
Fixed versions: 6.1.188, 6.6.157, 6.12.110, 6.18.51, 7.2.5
Complete source record
{
"id": "55cc8dbf93eb41d6f106227cafd94bcb3127a4caf358f567fee0d7c7aab14b2c",
"url": "https://osv.dev/vulnerability/CVE-2026-89922",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "KVM: s390: Take srcu when importing watchpoint data",
"summary": "In the Linux kernel, the following vulnerability has been resolved: KVM: s390: Take srcu when importing watchpoint data __import_wp_info() backs up the original guest memory contents of a watchpoint with read_guest_abs(), which is kvm_read_guest() and therefore resolves the memslot via __kvm_memslots(). That requires kvm->srcu (or kvm->slots_lock) to be held, otherwise a concurrent memslot update can free the memslots array under us once its SRCU grace period has elapsed. As this is not fast path, following lock ordering (mutex first, then srcu) take the big hammer and hold the srcu for the full import.",
"evidence": "osv:CVE-2026-89922",
"products": [
{
"name": {
"value": "Kernel",
"evidence": "/affected/1/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "6.1.188",
"evidence": "/affected/1/ranges"
},
{
"value": "6.6.157",
"evidence": "/affected/1/ranges"
},
{
"value": "6.12.110",
"evidence": "/affected/1/ranges"
},
{
"value": "6.18.51",
"evidence": "/affected/1/ranges"
},
{
"value": "7.2.5",
"evidence": "/affected/1/ranges"
}
],
"affected_versions": []
}
],
"severity": "high",
"structured": {
"id": "CVE-2026-89922",
"aliases": [
"CVE-2026-89922"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "27291e2165b6de70c476b7b675308113edd69a60"
},
{
"fixed": "6830fbc3724bf49c142aae69a4694f115fa9cedd"
},
{
"fixed": "f8e3a9997d5ecd56ebe4b262ff424516c068fecb"
},
{
"fixed": "76f5b4ea9ed0aa5a34bda9d8a878f2c73026ec03"
},
{
"fixed": "cc710ee45395efb4937e042960f791d33924e5f6"
},
{
"fixed": "4c05bf21d1806853e662cc19e744736a3408f155"
},
{
"fixed": "a4e482def8533ebace517d9f67f1465841b1f982"
}
]
}
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-89922.json"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "3.16.0"
},
{
"fixed": "6.1.188"
}
]
},
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "6.2.0"
},
{
"fixed": "6.6.157"
}
]
},
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "6.7.0"
},
{
"fixed": "6.12.110"
}
]
},
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "6.13.0"
},
{
"fixed": "6.18.51"
}
]
},
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "6.19.0"
},
{
"fixed": "7.2.5"
}
]
}
],
"package": {
"name": "Kernel",
"ecosystem": "Linux"
},
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-89922.json"
}
}
],
"modified": "2026-10-28T02:30:48.323952733Z",
"provider": "osv",
"references": [
"https://git.kernel.org/stable/c/4c05bf21d1806853e662cc19e744736a3408f155",
"https://git.kernel.org/stable/c/6830fbc3724bf49c142aae69a4694f115fa9cedd",
"https://git.kernel.org/stable/c/76f5b4ea9ed0aa5a34bda9d8a878f2c73026ec03",
"https://git.kernel.org/stable/c/a4e482def8533ebace517d9f67f1465841b1f982",
"https://git.kernel.org/stable/c/cc710ee45395efb4937e042960f791d33924e5f6",
"https://git.kernel.org/stable/c/f8e3a9997d5ecd56ebe4b262ff424516c068fecb",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/89xxx/CVE-2026-89922.json",
"https://nvd.nist.gov/vuln/detail/CVE-2026-89922",
"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
],
"provider_metadata": {
"cna_assigner": "Linux",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/89xxx/CVE-2026-89922.json"
}
},
"related_cves": [
{
"value": "CVE-2026-89922",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 516689,
"published_at": "2026-09-16T10:32:16.11+00:00"
}