[PATCH v9 3/6] KVM: arm64: Block cacheable PFNMAP mapping
David Hildenbrand
david at redhat.com
Fri Jul 4 07:09:26 PDT 2025
On 21.06.25 06:21, ankita at nvidia.com wrote:
> From: Ankit Agrawal <ankita at nvidia.com>
>
> Fixes a security bug due to mismatched attributes between S1 and
> S2 mapping.
>
> Currently, it is possible for a region to be cacheable in the userspace
> VMA, but mapped non cached in S2. This creates a potential issue where
> the VMM may sanitize cacheable memory across VMs using cacheable stores,
> ensuring it is zeroed. However, if KVM subsequently assigns this memory
> to a VM as uncached, the VM could end up accessing stale, non-zeroed data
> from a previous VM, leading to unintended data exposure. This is a security
> risk.
>
> Block such mismatch attributes case by returning EINVAL when userspace
> try to map PFNMAP cacheable. Only allow NORMAL_NC and DEVICE_*.
>
> CC: Oliver Upton <oliver.upton at linux.dev>
> CC: Catalin Marinas <catalin.marinas at arm.com>
> CC: Sean Christopherson <seanjc at google.com>
> Suggested-by: Jason Gunthorpe <jgg at nvidia.com>
> Signed-off-by: Ankit Agrawal <ankita at nvidia.com>
> ---
Reviewed-by: David Hildenbrand <david at redhat.com>
--
Cheers,
David / dhildenb
More information about the linux-arm-kernel
mailing list