[PATCH 0/5] KVM: SEV: Drop user-triggerable WARN clean up REG_REGION

From: Sean Christopherson

Date: Thu Mar 12 2026 - 20:33:35 EST


Drop a WARN in sev_pin_memory() that is comically easy to trigger, and then
clean up the code a bit.

*** WARNING ***

The last patch impacts KVM's ABI due to a size restriction that's applied to
kvmalloc() but not vmalloc(). If my math is correct (definitely a big "if),
it will only impact VMMs that attempt to do KVM_MEMORY_ENCRYPT_REG_REGION with
a single region of ~1TiB+.

Liam, I Cc'd you specifically because it looks like Oracle supports SEV VMs
with more than 1TiB of _total_ memory. I assume that's spread across multiple
memslots and thus multiple KVM_MEMORY_ENCRYPT_REG_REGION calls, but I wanted to
double check before potentially breaking userspace.

Sean Christopherson (5):
KVM: SEV: Drop WARN on large size for KVM_MEMORY_ENCRYPT_REG_REGION
KVM: SEV: Drop useless sanity checks in sev_mem_enc_register_region()
KVM: SEV: Disallow pinning more pages than exist in the system
KVM: SEV: Use PFN_DOWN() to simplify "number of pages" math when
pinning memory
KVM: SEV: Use kvzalloc_objs() when pinning userpages

arch/x86/kvm/svm/sev.c | 51 +++++++++++++++++++++---------------------
1 file changed, 25 insertions(+), 26 deletions(-)


base-commit: bfd7f4adc1230373c25e1b787a6f1ee407eb0656
--
2.53.0.851.ga537e3e6e9-goog