Srivatsa Vaddagiri wrote:
> On Thu, Apr 15, 2010 at 03:33:18PM +0200, Peter Zijlstra wrote:
>> On Thu, 2010-04-15 at 11:18 +0300, Avi Kivity wrote:
>>>
>>> Certainly that has even greater potential for Linux guests. Note
>>> that we spin on mutexes now, so we need to prevent preemption while
>>> the lock owner is running.
>>
>> either that, or disable spinning on (para) virt kernels. Para virt
>> kernels could possibly extend the thing by also checking to see if
>> the owner's vcpu is running.
>
> I suspect we will need a combination of both approaches, given that
> we will not be able to avoid preempting guests in their critical
> section always (too long critical sections or real-time tasks wanting
> to preempt). Other idea is to gang-schedule VCPUs of the same guest
> as much as possible?
Gang-scheduling maybe the ideal solution to solve the issue, and has to change host's scheduler a lot to implement it, and it maybe hard to be upstream. So can we figure out an easy way(maybe not best) for this ?
Xiantao