On Tue, 2024-03-19 at 17:15 -0700, Sean Christopherson wrote: > Add a helper to check that the incoming length for a gfn_to_pfn_cache is > valid with respect to the cache's GPA and/or HVA. To avoid activating a > cache with a bogus GPA, a future fix will fork the page split check in > the inner refresh path into activate() and the public rerfresh() APIs, at > which point KVM will check the length in three separate places. > > Deliberately keep the "page offset" logic open coded, as the only other > path that consumes the offset, __kvm_gpc_refresh(), already needs to > differentiate between GPA-based and HVA-based caches, and it's not obvious > that using a helper is a net positive in overall code readability. > > Note, for GPA-based caches, this has a subtle side effect of using the GPA > instead of the resolved HVA in the check() path, but that should be a nop > as the HVA offset is derived from the GPA, i.e. the two offsets are > identical, barring a KVM bug. > > Signed-off-by: Sean Christopherson <seanjc@xxxxxxxxxx> Reviewed-by: David Woodhouse <dwmw@xxxxxxxxxxxx>
Attachment:
smime.p7s
Description: S/MIME cryptographic signature