Messages in this thread | | | From | Vitaly Kuznetsov <> | Subject | Re: [PATCH] x86/hyper-v: use cheaper HVCALL_FLUSH_VIRTUAL_ADDRESS_{LIST,SPACE} hypercalls when possible | Date | Wed, 20 Jun 2018 10:27:21 +0200 |
| |
KY Srinivasan <kys@microsoft.com> writes:
>> -----Original Message----- >> From: Michael Kelley (EOSG) >> Sent: Tuesday, June 19, 2018 10:57 AM >> To: Vitaly Kuznetsov <vkuznets@redhat.com>; x86@kernel.org >> Cc: devel@linuxdriverproject.org; linux-kernel@vger.kernel.org; KY >> Srinivasan <kys@microsoft.com>; Haiyang Zhang >> <haiyangz@microsoft.com>; Stephen Hemminger >> <sthemmin@microsoft.com>; Thomas Gleixner <tglx@linutronix.de>; Ingo >> Molnar <mingo@redhat.com>; H. Peter Anvin <hpa@zytor.com>; Tianyu Lan >> <Tianyu.Lan@microsoft.com> >> Subject: RE: [PATCH] x86/hyper-v: use cheaper >> HVCALL_FLUSH_VIRTUAL_ADDRESS_{LIST,SPACE} hypercalls when possible >> >> ... >>> >> This is a good idea. We should probably do the same with the hypercalls for >> sending >> IPIs -- try the simpler version first and move to the more complex _EX >> version only >> if necessary. > I am not sure if this would work correctly. When I was developing the IPI enlightenment, > what I remember was that the guest is expected to use the API recommended by the Hypervisor. >
I was under the same impression when I implemented PV TLB flush. Turns out HV_X64_EX_PROCESSOR_MASKS_RECOMMENDED is a misnomer or at least Windows treats it as HV_X64_EX_PROCESSOR_MASKS_AVAILABLE instead using only when needed.
My guess would be that the situation with IPI is the same. In any case I can try to implement Hyper-V style PV IPIs for Windows in KVM and we'll see how Windows uses these hypercalls :-)
-- Vitaly
| |