From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1M9z3u-0007VU-H6 for qemu-devel@nongnu.org; Fri, 29 May 2009 06:11:42 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1M9z3p-0007Sx-QO for qemu-devel@nongnu.org; Fri, 29 May 2009 06:11:42 -0400 Received: from [199.232.76.173] (port=59289 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1M9z3p-0007Ss-Ka for qemu-devel@nongnu.org; Fri, 29 May 2009 06:11:37 -0400 Received: from mx2.redhat.com ([66.187.237.31]:43973) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1M9z3p-0003b1-67 for qemu-devel@nongnu.org; Fri, 29 May 2009 06:11:37 -0400 Subject: Re: [Qemu-devel] [PATCH] Change virtio-console to PCI_CLASS_SERIAL_OTHER From: Mark McLoughlin In-Reply-To: <1243590193.13990.73.camel@blaa> References: <1243012478.29542.18.camel@blaa> <200905281353.50463.paul@codesourcery.com> <4A1E8A16.3060101@us.ibm.com> <200905281422.52420.paul@codesourcery.com> <4A1E91AF.9050907@us.ibm.com> <4A1F05DE.6060806@redhat.com> <1243590193.13990.73.camel@blaa> Content-Type: text/plain Date: Fri, 29 May 2009 11:09:31 +0100 Message-Id: <1243591771.13990.86.camel@blaa> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Reply-To: Mark McLoughlin List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: dlaor@redhat.com Cc: Anthony Liguori , ajax@redhat.com, Paul Brook , qemu-devel@nongnu.org On Fri, 2009-05-29 at 10:43 +0100, Mark McLoughlin wrote: > The more I think about it, no matter how much linear ABI versioning > sucks, it's possibly the only way to solve this in a reasonably usable > manners. Distros would just have to suck it up and agree that if they > cherry-pick an ABI changing patch, they must update the entire ABI to > the newer upstream ABI version. Okay, how about this: - Add a saveabi monitor command - Whenever libvirt starts a guest or hotplugs a device, it executes saveabi and retains the output - The abi can be restored with qemu -loadabi or the loadabi monitor command - The abi file doesn't describe the device model, it merely gives hints for building the device model which is described on the command line - If the abi file contains details of a device which is not listed on the command line, it's just ignored and not included in the next saveabi - If the abi file is missing details of a device which is listed on the command line, the device is constructed using the defaults and included in the next saveabi - This means the abi file is opaque to the management tools - unlike the machine config file, libvirt would not need to modify it when devices are added or removed by the user Cheers, Mark.