On 11/12/2025 10:31 am, Alejandro Vallejo wrote:
> Seeing how both you and Andrew seem onboard with dropping cross-vendor support

I found another cross-vendor dropping which you'll want to look into.

struct svm_vcpu contains three guest_sysenter_* MSRs.

In AMD CPUs, these MSRs only have 32 bits of storage, with the upper
halfs write-discard.  They are switched via VMLOAD/VMSAVE.

However, in the cross-vendor case, the upper halves are needed for 64bit
kernels setting up SYSENTER support.  Therefore, they're unconditionally
intercepted so we can avoid losing the upper half.

By dropping cross-vendor support, we can get rid of these fields, allow
the guest unconditional access, and simply the MSR intercept logic a little.

~Andrew

Reply via email to