From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MxMur-0007tA-OV for qemu-devel@nongnu.org; Mon, 12 Oct 2009 11:34:29 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MxMun-0007md-Jq for qemu-devel@nongnu.org; Mon, 12 Oct 2009 11:34:29 -0400 Received: from [199.232.76.173] (port=47958 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MxMun-0007mG-DA for qemu-devel@nongnu.org; Mon, 12 Oct 2009 11:34:25 -0400 Received: from mx1.redhat.com ([209.132.183.28]:36152) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1MxMum-0001Dh-UC for qemu-devel@nongnu.org; Mon, 12 Oct 2009 11:34:25 -0400 Message-ID: <4AD34C75.8090803@redhat.com> Date: Mon, 12 Oct 2009 17:34:13 +0200 From: Gerd Hoffmann MIME-Version: 1.0 Subject: Re: [Qemu-devel] Re: [PATCH v2 9/9] Add -kvm option References: <1254953315-5761-2-git-send-email-glommer@redhat.com> <1254953315-5761-3-git-send-email-glommer@redhat.com> <1254953315-5761-4-git-send-email-glommer@redhat.com> <1254953315-5761-5-git-send-email-glommer@redhat.com> <1254953315-5761-6-git-send-email-glommer@redhat.com> <1254953315-5761-7-git-send-email-glommer@redhat.com> <1254953315-5761-8-git-send-email-glommer@redhat.com> <1254953315-5761-9-git-send-email-glommer@redhat.com> <1254953315-5761-10-git-send-email-glommer@redhat.com> <4ACD1D92.8080607@us.ibm.com> <20091007231405.GQ8092@mothafucka.localdomain> <4ACD2414.9000401@codemonkey.ws> <4AD319F6.70506@redhat.com> <4AD33774.1030001@us.ibm.com> In-Reply-To: <4AD33774.1030001@us.ibm.com> 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: Anthony Liguori Cc: Andre Przywara , Glauber Costa , qemu-devel@nongnu.org On 10/12/09 16:04, Anthony Liguori wrote: > Gerd Hoffmann wrote: >> -M $machine gives you a barebone machine with all core devices which >> belong to it. You can't easily remove and/or replace devices. >> Especially not something central as the IRQ controller. But also no >> other core components, i.e. you wouldn't stick a piix4 ide controller >> into a Q35 machine. Just say 'no'. > > This seems fundamentally flawed to me. If you cannot remove a device > from a machine using command line options, then how do we support > something like -net none? '-net none' does not remove a nic. It makes qemu not add the default nic. > Do we make the default machine not contain a nic? > > The value of a machine type to a user is that it presents a useful > machine--not a barebones machine. A user should not have to think about > which type of nic they need or whether they want to enable usb. There are a bunch of places where qemu does something like if (user-did-not-specify-a-$foo-device) { add_$foo_device_with_defaults() } That applies (for pc) to: * nic. * vga. * serial port. * parallel port. * cdrom drive. For all of these (except cdrom) you can disable the creation of the default device via "-$dev none". I don't consider them core devices. Core devices are the ones which a machine can't live without, i.e. rtc, pic, ... You can't add/remove core stuff like rtc, interrupt controller. The virtual machine will simply not work then ... >> (1) create two devices, create new machines which use the kvm >> versions (aka -M pc-kvm). >> (2) make using the in-kernel kvm code a device property. > > (3) Add the ability to remove device from a machine type. -rtc none ? Have fun booting your machine. cheers, Gerd