CVE-2026-80853: KVM: SEV: Allocate full pages for {DE,EN}CRYPT ops on SNP-enabled hosts

Published Sep 4, 2026
·
Updated

In the Linux kernel, the following vulnerability has been resolved:

KVM: SEV: Allocate full pages for {DE,EN}CRYPT ops on SNP-enabled hosts

When {de,en}crypting memory of an SEV or SEV-ES guest on an SNP-enabled host via a temporary buffer, allocate a full 4KiB page for the buffer to ensure the page containing the buffer is wholly owned by KVM, i.e. won't be concurrently allocated and accessed by other kernel code while KVM is using the buffer to {de,en}crypt memory. On SNP-enabled platforms, when sending SEV/SEV-ES commands that trigger firmware writes to memory, the to-be-written page(s) must be (temporarily) assigned to Firmware (as required by the SNP architecture, to guard against using such commands as gadgets to attack SNP guests). See snpmapcmdbufdesc() and friends.

Unfortunately, transferring ownership of a page to Firmware makes the page inaccessible to software, and thus writes generate RMP #PF violations. If KVM uses a sub-page allocation for its temporary buffer, some other actor in the kernel can allocate and use the other portions of the page, and thus trigger unexpected (and seemingly spurious) RMP #PF violations due to software attempting to access a Firmware-owned page.

BUG: unable to handle page fault for address: ffff906ae30f0300 #PF: supervisor write access in kernel mode #PF: errorcode(0x80000003) - RMP violation PGD 6b1b80d067 P4D 6b1b80d067 PUD 100231e2063 PMD 10055a88063 PTE 80000100630f0163 SEV-SNP: PFN 0x100630f0 unassigned, dumping non-zero entries in 2M PFN region: [0x10063000 - 0x10063200] Oops: Oops: 0003 [#1] SMP CPU: 70 UID: 0 PID: 10658 Comm: svwWaiterThrea Tainted: G U W O 7.1.0-smp--c22293789940-seanjc-next #1 PREEMPTLAZY Tainted: [U]=USER, [W]=WARN, [O]=OOTMODULE Hardware name: Google, Inc. ArcadiaIT80/ArcadiaIT80, BIOS 34.86.0-102 01/25/2026 RIP: 0010:memset+0xf/0x20 Call Trace: <TASK> kvmallocnodenoprof+0x2a4/0x710 dogetxattr+0x4e/0x130 pathgetxattrat+0x125/0x1b0 dosyscall64+0x10a/0x480 entrySYSCALL64afterhwframe+0x4b/0x53 RIP: 0033:0x7f3a22cb6daa </TASK> Modules linked in: kvmamd kvm irqbypass vfat fat ccp k10temp sha3 libsha3 i2cpiix4 gq(O) cdcacm xhcipci xhcihcd gsmi: Log Shutdown Reason 0x03 CR2: ffff906ae30f0300 ---[ end trace 0000000000000000 ]--- RIP: 0010:memset+0xf/0x20 Kernel panic - not syncing: Fatal exception Kernel Offset: 0x39e00000 from 0xffffffff81000000 (relocation range: 0xffffffff80000000-0xffffffffbfffffff) gsmi: Log Shutdown Reason 0x02

Affected Software

1 affected component
Linux Kernel

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade Linux kernel (KVM SEV-SNP) to a version that resolves this vulnerability.

    Patch KVM: SEV: Allocate full pages for {DE,EN}CRYPT ops on SNP-enabled hosts

Event History

Sep 4, 2026
CVE Published
via MITRE·03:55 PM
Data Sourced
via MITRE·03:55 PM
Description

Frequently Asked Questions

1

Which systems are exposed to this issue?

The issue affects Linux kernel KVM hosts with SNP enabled when handling memory encryption or decryption operations for SEV or SEV-ES guests. Systems not using this combination are not identified as affected by the provided information.

2

What conditions trigger the problem?

The problem occurs when KVM uses a sub-page temporary buffer for SEV or SEV-ES encrypt or decrypt operations and transfers the containing page to Firmware. Another kernel actor can then access a different allocation within that page, causing an RMP page-fault violation because the page is inaccessible to software while owned by Firmware.

3

What is the operational impact?

Concurrent kernel access to another portion of the temporary buffer's page can produce unexpected, seemingly spurious RMP #PF violations. The resolution is to allocate a full 4 KiB page so that KVM exclusively owns the page while it is assigned to Firmware.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203