From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony Liguori Subject: Re: Qemu disaggregation in Xen environment Date: Mon, 05 Mar 2012 19:45:33 -0600 Message-ID: <4F556C3D.3060008@codemonkey.ws> References: <4F4CBE85.5000006@citrix.com> <4F553C48.8070902@codemonkey.ws> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+gceq-qemu-devel=gmane.org@nongnu.org Sender: qemu-devel-bounces+gceq-qemu-devel=gmane.org@nongnu.org To: Stefano Stabellini Cc: "Julien Grall (Intern)" , "xen-devel@lists.xensource.com" , "qemu-devel@nongnu.org" , Julian Pidancet List-Id: xen-devel@lists.xenproject.org On 03/05/2012 04:53 PM, Stefano Stabellini wrote: > On Mon, 5 Mar 2012, Anthony Liguori wrote: >> On 02/28/2012 05:46 AM, Julien Grall wrote: >>> Hello, >>> >>> In the current model, only one instance of qemu is running for each running HVM >>> domain. >>> >>> We are looking at disaggregating qemu to have, for example, an instance to >>> emulate only >>> network controllers, another to emulate block devices, etc... >> >> Why would you want to do this? > > We are trying to disaggregate QEMU, the same way we do with Linux. > > On Xen we can run a Linux guest to drive the network card, another Linux > guest to drive the SATA controller, another one for the management > stack, etc. This helps both with scalability and isolation. > > In this scenario is only natural that we run a QEMU that only emulates > a SATA controller in the storage domain, a QEMU that only emulates the > network card in the network domain and everything else in a stubdom. > > What's better than using QEMU as emulator? Using three QEMUs per guest > as emulators! :-) My concern is that this moves the Xen use case pretty far from what the typical QEMU use case would be (running one emulator per guest). If it was done in a non-invasive way, maybe it would be acceptable but at a high level, I don't see how that's possible. I almost think you would be better off working to build a second front end (reusing the device model, and nothing else) specifically for Xen. Almost like qemu-io but instead of using the block layer, use the device model. Regards, Anthony Liguori >