qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] main-loop: drop the BQL if the I/O appears to b


From: Anthony Liguori
Subject: Re: [Qemu-devel] [PATCH] main-loop: drop the BQL if the I/O appears to be spinning
Date: Fri, 05 Apr 2013 10:45:47 -0500
User-agent: Notmuch/0.13.2+93~ged93d79 (http://notmuchmail.org) Emacs/23.3.1 (x86_64-pc-linux-gnu)

Eric Blake <address@hidden> writes:

> On 04/05/2013 07:46 AM, Anthony Liguori wrote:
>> The char-flow refactoring introduced a busy-wait that depended on
>> an action from the VCPU thread.  However, the VCPU thread could
>> never take that action because the busy-wait starved the VCPU thread
>> of the BQL because it never dropped the mutex while running select.
>> 
>> Paolo doesn't want to drop this optimization for fear that we will
>> stop detecting these busy waits.  I'm afraid to keep this optimization
>> even with the busy-wait fixed because I think a similar problem can
>> occur just with heavy I/O thread load manifesting itself as VCPU pauses.
>> 
>> As a compromise, introduce an artificial timeout after a thousand
>> iterations but print a rate limited warning when this happens.  This
>> let's us still detect when this condition occurs without it being
>> a fatal error.
>> 
>
>> +     * print a message to the screen.  If we run into this condition, create
>> +     * an fake timeout in order to give the VCPU threads a chance to run.
>
> s/an fake/a fake/

Drat, I proof read the commit message hoping to avoid such a mistake but
should have reread the comment :-)

Regards,

Anthony Liguori

>
> -- 
> Eric Blake   eblake redhat com    +1-919-301-3266
> Libvirt virtualization library http://libvirt.org




reply via email to

[Prev in Thread] Current Thread [Next in Thread]