Paolo Bonzini <pbonz...@redhat.com> writes: > On 07/01/20 13:08, Vitaly Kuznetsov wrote: >> Honestly I forgot the story why we filtered out these features upon >> eVMCS enablement in KVM. As there are no corresponding eVMCS fields, >> there's no way a guest can actually use them. > > Well, mostly because we mimicked what Hyper-V was doing I guess. >
An update from reverse-engineering trenches. I ran some tests to see if we can just drop the filtering and there is only one problematic control which Hyper-V enables: SECONDARY_EXEC_VIRTUALIZE_APIC_ACCESSES the problem with it is that we don't have 'apic_access_addr' field in eVMCS ('virtual_apic_page_addr' is there). By running the same setup with eVMCS disabled I figured out which address can be hardcoded to make it boot. My guess was that the fields is present but not documented properly, I tried scanning eVMCS for the value but with no luck so far. I'll try to fish some information out of Microsoft. -- Vitaly