qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] spawning and killing threads in qemu


From: Stefan Hajnoczi
Subject: Re: [Qemu-devel] spawning and killing threads in qemu
Date: Mon, 6 Feb 2012 10:15:44 +0000
User-agent: Mutt/1.5.21 (2010-09-15)

On Mon, Jan 30, 2012 at 05:52:48PM +0800, 陳韋任 wrote:
> > On Thu, Jan 26, 2012 at 1:35 PM, Paolo Bonzini <address@hidden> wrote:
> > > On 01/26/2012 07:31 PM, Xin Tong wrote:
> > >>
> > >> When i attach gdb to qemu running in system mode, i often get things like
> > >>
> > >> [Thread 0x7ffed2013700 (LWP 29499) exited]
> > >> [New Thread 0x7ffed2013700 (LWP 29500)]
> > >>
> > >> what spawns these threads and what do these threads do ?
> > >
> > >
> > > The block layer's thread pool.
> 
>   Qemu 1.0 enable IO thread by default, I think that's why you can see there 
> are
> two threads. You can check block/raw-posix-aio.h, posix-aio-compat.c and 
> linux-aio.c.

--enable-io-thread is different from posix-aio-compat.c's thread pool.

--enable-io-thread means there is a dedicated thread (created at
startup) which runs the event loop.

The temporary threads you are seeing are indeed posix-aio-compat.c
worker threads.  They execute blocking I/O system calls so that the QEMU
event loop can continue to process events while I/O operations are
running.

Stefan



reply via email to

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