Re: [PATCH v1 2/2] x86/hyperv: make HvNotifyLongSpinWait hypercall

From: Peter Zijlstra
Date: Mon Oct 22 2018 - 13:31:56 EST


On Mon, Oct 22, 2018 at 01:27:27PM -0400, Waiman Long wrote:

> >> I agree with Juergen on that. I would suggest rename the
> >> vcpu_is_preempted hook into a more generic vcpu_stop_spinning, perhaps,
> >> so different hypervisors can act on the information accordingly. Adding
> >> an extra parameter is fine.
> > No; no extra parameters. vcpu_is_preempted() is a simple and intuitive
> > interface. Why would we want to make it complicated?
>
> Hyperv seems to do it in a somewhat different way by looking at the spin
> counter and decide if it should continue. I don't know why they do that
> and what advantage it has.
>
> The current patch is definitely not OK. A revised patch that makes use
> of an existing paravirt hook will be more acceptable. Again, I would
> like to see some performance figure and why they do it this way to see
> if it is worthwhile to change the existing interface.

Note that there are vcpu_is_preempted() users that are not in a
spin-loop.