2018-04-16 13:08+0200, Vitaly Kuznetsov: > Hyper-V TLB flush hypercalls definitions will be required for KVM so move > them hyperv-tlfs.h. Structures also need to be renamed as '_pcpu' suffix is > invalid for a general-purpose definition. > > Signed-off-by: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx> > --- > arch/x86/hyperv/mmu.c | 40 ++++++++++---------------------------- > arch/x86/include/asm/hyperv-tlfs.h | 20 +++++++++++++++++++ > 2 files changed, 30 insertions(+), 30 deletions(-) > > diff --git a/arch/x86/include/asm/hyperv-tlfs.h b/arch/x86/include/asm/hyperv-tlfs.h > @@ -703,4 +703,24 @@ struct hv_enlightened_vmcs { > #define HV_STIMER_AUTOENABLE (1ULL << 3) > #define HV_STIMER_SINT(config) (__u8)(((config) >> 16) & 0x0F) > > +/* HvFlushVirtualAddressSpace, HvFlushVirtualAddressList hypercalls */ > +struct hv_tlb_flush { > + u64 address_space; > + u64 flags; > + u64 processor_mask; > + u64 gva_list[]; > +}; > + > +/* HvFlushVirtualAddressSpaceEx, HvFlushVirtualAddressListEx hypercalls */ > +struct hv_tlb_flush_ex { > + u64 address_space; > + u64 flags; > + struct { > + u64 format; > + u64 valid_bank_mask; > + u64 bank_contents[]; > + } hv_vp_set; > + u64 gva_list[]; Why is the gva_list there?