CVE-2023-54092
Description
In the Linux kernel, the following vulnerability has been resolved:
KVM: s390: pv: fix index value of replaced ASCE
The index field of the struct page corresponding to a guest ASCE should be 0. When replacing the ASCE in s390_replace_asce(), the index of the new ASCE should also be set to 0.
Having the wrong index might lead to the wrong addresses being passed around when notifying pte invalidations, and eventually to validity intercepts (VM crash) if the prefix gets unmapped and the notifier gets called with the wrong address.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
In the Linux kernel, KVM/s390's s390_replace_asce() fails to reset the index field of the new ASCE page struct for the new ASCE, potentially causing VM crashes via invalid pte invalidation notifications.
Vulnerability
Description
In the Linux kernel, the KVM for s390 (KVM/s390) protected virtualization (PV) code contains a bug in the s390_replace_asce() function.ce() function. When replacing a guest's Address Space Control Element (ASCE), the function fails to set the index field of the new struct page` to 0. The index field of the page corresponding to a guest ASCE should always be 0; failing to reset it means the new ASCE retains a stale index value from the old page orignal page, leading to incorrect addresses being used during page table invalidation notifications [1][2].
Exploitation and
Attack Surface
This vulnerability is triggered during normal KVM operation when the host replaces a guest's ASCE, for example during certain memory management operations. The bug manifests when the guest's prefix (lowcore) is unmapped and the invalidation notifier is called with the wrong address derived from the non-zero index. No special attacker privileges are required beyond the ability to run a KVM guest on an s390 host with protected virtualization enabled; the issue is a logic error in the host kernel code, not in guest-controlled data.
Impact
If the index is incorrect, the kernel may pass wrong addresses to the pte invalidation notifier. This can result in a validity intercept, which typically causes the VM to crash (i.e., a denial of service). The crash is triggered by the host kernel, not by malicious guest input, but it can be reliably provoked by normal guest operations that cause ASCE replacement.
Mitigation
Status
The fix has been applied to the Linux kernel stable tree. The commits referenced (017f686bcb536ff23d49c143fdf9d1fd89a9a924 and f1c7a776338f2ac5e34da40e58fe9f33ea390a5e correct the issue by ensuring the index field is set to 0 in s390_replace_asce() [1][2]. Users should update their kernels containing these commits.
AI Insight generated on May 19, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.
Affected products
1Patches
58e635da0e0d349a2686addde017f686bcb53f1c7a776338fc2fceb59bbdaVulnerability mechanics
Generated on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.
References
5- git.kernel.org/stable/c/017f686bcb536ff23d49c143fdf9d1fd89a9a924nvd
- git.kernel.org/stable/c/49a2686adddebe1ae76b4d368383208656ef6606nvd
- git.kernel.org/stable/c/8e635da0e0d3cb45e32fa79b36218fb98281bc10nvd
- git.kernel.org/stable/c/c2fceb59bbda16468bda82b002383bff59de89abnvd
- git.kernel.org/stable/c/f1c7a776338f2ac5e34da40e58fe9f33ea390a5envd
News mentions
0No linked articles in our index yet.