Re: [v2 PATCH 3/4] x86/kvm: Add host side support for virtual suspend time injection

From: Paolo Bonzini
Date: Wed Aug 18 2021 - 16:49:23 EST


On 18/08/21 11:32, Vitaly Kuznetsov wrote:
On the host side, I'd vote for keeping MSR_KVM_ASYNC_PF_INT for async PF
mechanism only for two reasons:
- We may want to use (currently reserved) upper 56 bits of it for new
asyncPF related features (e.g. flags) and it would be unnatural to add
them to 'MSR_KVM_HYPERVISOR_CALLBACK_INT'
- We should probably leave it to the guest if it wants to share 'suspend
time' notification interrupt with async PF (and if it actually wants to
get one/another).

I agree that it's fine either way. That said, more MSRs are more complexity and more opportunity for getting things wrong (in either KVM or userspace---for example, migration). There are still 14 free bits in MSR_ASYNC_PF_EN (bits 63-52 and 5-4, so it should not be a problem to repurpose MSR_ASYNC_PF_INT.

Paolo

On the guest side, it is perfectly fine to reuse
HYPERVISOR_CALLBACK_VECTOR for everything.