From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MsM0V-0005FZ-77 for qemu-devel@nongnu.org; Mon, 28 Sep 2009 15:35:35 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MsM0Q-00057L-73 for qemu-devel@nongnu.org; Mon, 28 Sep 2009 15:35:34 -0400 Received: from [199.232.76.173] (port=43233 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MsM0P-000575-Tm for qemu-devel@nongnu.org; Mon, 28 Sep 2009 15:35:29 -0400 Received: from qw-out-1920.google.com ([74.125.92.146]:15974) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1MsM0P-0000wN-3p for qemu-devel@nongnu.org; Mon, 28 Sep 2009 15:35:29 -0400 Received: by qw-out-1920.google.com with SMTP id 5so1483049qwc.4 for ; Mon, 28 Sep 2009 12:35:27 -0700 (PDT) Message-ID: <4AC10FFC.9070509@codemonkey.ws> Date: Mon, 28 Sep 2009 14:35:24 -0500 From: Anthony Liguori MIME-Version: 1.0 Subject: Re: [Qemu-devel] Main loop References: <4ABEB6B3.4010102@codemonkey.ws> <4ABF7137.1040502@codemonkey.ws> <20090928135723.GK29735@mothafucka.localdomain> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: malc Cc: Glauber Costa , qemu-devel@nongnu.org malc wrote: > Now that we have talked i see the problem and it basically boils down > to this: kvm can(and does) run multiple vcpus in multiple threads, > qemu always uses one, on top of this you are mainly interested in KVM > and i'm _only_ interested in TCG. The multiple vcpus in multiple threads model is the right one for TCG too. Both Paul and Fabrice have expressed interest in this in the past. For certain architecture combinations, it may not be that bad to implement either. > The way i see it the best approach > would be to factor out main loop into separate file and let QEMU and > KVM go their own separate ways w.r.t. this new entity. > OTOH, if most of the heavy lifting (like IO dispatch) can be refactored to shared functions, two main loops may not be so bad. Regards, Anthony Liguori