> -----Original Message-----
> From: KY Srinivasan

> > -----Original Message-----
> > From: Peter Zijlstra [mailto:[email protected]]
> > Sent: Thursday, August 10, 2017 11:57 AM
> > To: Simon Xiao <[email protected]>; Haiyang Zhang
> > <[email protected]>; Jork Loeser <[email protected]>;
> > Stephen Hemminger <[email protected]>; torvalds@linux-
> > foundation.org; [email protected]; [email protected]; [email protected];
> > [email protected]; [email protected];
> > [email protected]; [email protected]; KY Srinivasan
> > <[email protected]>; [email protected]
> > Cc: [email protected]
> > Subject: Re: [tip:x86/platform] x86/hyper-v: Use hypercall for remote
> > TLB flush

> > Hold on.. if we don't IPI for TLB invalidation. What serializes our
> > software page table walkers like fast_gup() ?
> 
> Hypervisor may implement this functionality via an IPI.
> 
> K. Y

HvFlushVirtualAddressList() states:
This call guarantees that by the time control returns back to the caller, the 
observable effects of all flushes on the specified virtual processors have 
occurred.

HvFlushVirtualAddressListEx() refers to HvFlushVirtualAddressList() as adding 
sparse target VP lists.

Is this enough of a guarantee, or do you see other races?

Regards,
Jork

Reply via email to