qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] Block I/O outside the QEMU global mutex was "Re: [RFC P


From: Jan Kiszka
Subject: Re: [Qemu-devel] Block I/O outside the QEMU global mutex was "Re: [RFC PATCH 00/17] Support for multiple "AIO contexts""
Date: Tue, 09 Oct 2012 14:18:07 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666

On 2012-10-09 14:01, Paolo Bonzini wrote:
> Il 09/10/2012 13:55, Avi Kivity ha scritto:
>> Oh, agree 100% raw + native aio wants to bypass coroutines/threads
>> completely.
> 
> Even posix-aio-compat can bypass coroutines.
> 
>> We could perhaps even avoid refcounting, by shutting down the device
>> thread as part of hotunplug.
> 
> Yes, you "just" join the thread, ask it to exit, and not hot-unplug
> until it's done.
> 
>> [could we also avoid refcounting by doing the equivalent of
>> stop_machine() during hotunplug?]
> 
> That's quite an interesting alternative.

Not sure about the full context of this discussion, but I played with
"stop-machine" (pause_all_vcpus) recently. The problem is, at least ATM,
that it drops the BQL to wait for those threads, and that creates an
unexpected rescheduling point over which a lot of code stumbles. But if
this case here is about new, accordingly written code that is also not
called from unprepared corners, it may work.

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux



reply via email to

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