On 16/07/16 15:12, Dario Faggioli wrote:
> On Fri, 2016-07-15 at 19:07 +0100, Andrew Cooper wrote:
>
>> None of the scheduler-accounting functions should be disabling
>> interrupts.
>>
> They don't. But you can't keep irq disabled for some operations and
> enabled for others, on the same lock (because of the irq-safety
> spinlock checks/enforcement).
>
> So you have to always keep IRQ enabled, for all scheduling operations,
> which is ok for _almost_ all of them, with the only exception of the
> wakeup of a vcpu.

I know that it is all or nothing.  What specific action about waking a
vcpu requires holding a lock?

If it is simply re-queueing the vcpu onto the runable queue, there are a
number of lockless queuing algorithms which can be used.

~Andrew

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

Reply via email to