From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:57527) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TYn8q-0005M1-Rw for qemu-devel@nongnu.org; Wed, 14 Nov 2012 19:17:15 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TYn8n-0000ND-PJ for qemu-devel@nongnu.org; Wed, 14 Nov 2012 19:17:12 -0500 Received: from e23smtp06.au.ibm.com ([202.81.31.148]:34635) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TYn8n-0000Mp-84 for qemu-devel@nongnu.org; Wed, 14 Nov 2012 19:17:09 -0500 Received: from /spool/local by e23smtp06.au.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 15 Nov 2012 10:14:29 +1000 Received: from d23av04.au.ibm.com (d23av04.au.ibm.com [9.190.235.139]) by d23relay05.au.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id qAF06NPe2163082 for ; Thu, 15 Nov 2012 11:06:26 +1100 Received: from d23av04.au.ibm.com (loopback [127.0.0.1]) by d23av04.au.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id qAF0GtE1029316 for ; Thu, 15 Nov 2012 11:16:55 +1100 Date: Thu, 15 Nov 2012 08:16:53 +0800 From: Wanpeng Li Message-ID: <20121115001653.GA20279@hacker.(null)> References: <1352352972-2510-1-git-send-email-liwanp@linux.vnet.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1352352972-2510-1-git-send-email-liwanp@linux.vnet.ibm.com> Subject: Re: [Qemu-devel] [PATCH v5 0/3] refactor PC machine, i440fx and piix3 to take advantage of QOM Reply-To: Wanpeng Li List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori Cc: Ram Pai , "Michael S. Tsirkin" , Jan Kiszka , qemu-devel@nongnu.org, Liu Ping Fan , Blue Swirl , Stefan Weil , Avi Kivity , Paolo Bonzini , Wanpeng Li On Thu, Nov 08, 2012 at 01:36:09PM +0800, Wanpeng Li wrote: >This series aggressively refactors the PC machine initialization to be more >modelled and less ad-hoc. The highlights of this series are: > >1) Things like -m and -bios-name are now device model properties > >2) The i440fx and piix3 are now modelled in a thorough fashion > >3) i440fx_init is trivialized to creating devices and setting properties > >4) convert PCI host bridge to QOM > >The point (3) is the most important one. As we refactor in this fashion, >we should quickly get to the point where machine->init disappears completely in >favor of just creating a handful of devices. > >The two stage initialization of QOM is important here. instance_init() is when >composed devices are created which means that after you've created a device, all >of its children are visible in the device model. This lets you set properties >of the parent and its children. > >realize() (which is still called DeviceState::init today) will be called right >before the guest starts up for the first time. > Hi Anthony, What's the state of these two patchsets, are they ready to be merged? Regards, Wanpeng Li >Changes in v5: >* fix bisect issues >* take advantage of Andreas's pci_host patchset >* drop convert MemoryRegion to QOM >* drop prepare to create HPET, RTC and i8254 through composition > >Changes in v4: > >*rebase patchset > >Changes in v3: > >* fix coding style issues >* fix rebase error >* add changes log > >Changes in v2: > >* Rebase patch series of i440fx in Anthony's qom-rebase.12 branch to upstream >* convert MemoryRegion to QOM >* convert pci_host to QOM > >Anthony Liguori (3): > eliminate piix_pci.c and module i440fx and piix3 > merge pc_piix.c to pc.c > convert pci-host to QOM > > hw/i386/Makefile.objs | 3 +- > hw/i440fx.c | 434 ++++++++++++++++++++++++++++ > hw/i440fx.h | 76 +++++ > hw/pc.c | 753 ++++++++++++++++++++++++++++++++++++++++++++++--- > hw/pc.h | 41 +--- > hw/pc_piix.c | 716 ---------------------------------------------- > hw/pci_host.c | 9 + > hw/piix3.c | 258 +++++++++++++++++ > hw/piix3.h | 73 +++++ > hw/piix_pci.c | 622 ---------------------------------------- > 10 files changed, 1558 insertions(+), 1427 deletions(-) > create mode 100644 hw/i440fx.c > create mode 100644 hw/i440fx.h > delete mode 100644 hw/pc_piix.c > create mode 100644 hw/piix3.c > create mode 100644 hw/piix3.h > delete mode 100644 hw/piix_pci.c > >-- >1.7.7.6