On 10/22/2018 01:31 PM, Peter Zijlstra wrote: > 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.
You are right. I forgot about that. In that case, someone has to prove that using an alternative way to stop spinning really has a performance advantage compared to what we already have today. Cheers, Longman