Avi Kivity wrote:
> Anthony Liguori wrote:
>   
>> Dong, Eddie wrote:
>>     
>>> In this case, IOCTL return to Qemu will trigger scheduling at least.
>>>   
>>>       
>> I think a scheduling change won't happen until the next timer tick. 
>> AFAICT, there's nothing explicit in the ioctl return path that will
>> result in rescheduling.
>>
>> I'm not entirely confident in how the timer interrupt gets handled
>> when it arrives in the guest.  My understanding is that while the
>> timer interrupt is delivered in the host, since preempt is disabled,
>> the rescheduling opportunity is lost even though the current task is
>> marked as needing rescheduling.  I think the next time that bit will
>> get checked is the next timer interrupt but I may be wrong.
>>
>>     
>
> No, any syscall exit triggers a rescheduling check, otherwise a task
> that spends most of its time in a non-preemt kernel would rarely get
> rescheduled.
>   

Ah, okay.

Regards,

Anthony Liguori

> See arch/x86_64/kernel/entry.S, the various checks for TIF_NEED_RESCHED.
>   



-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
kvm-devel mailing list
kvm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-devel

Reply via email to