[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH RFC 00/10] pci: Partial conversion to realize
From: |
Gonglei |
Subject: |
Re: [Qemu-devel] [PATCH RFC 00/10] pci: Partial conversion to realize |
Date: |
Tue, 28 Oct 2014 16:27:08 +0800 |
User-agent: |
Mozilla/5.0 (Windows NT 6.1; rv:11.0) Gecko/20120327 Thunderbird/11.0.1 |
On 2014/10/28 15:35, Markus Armbruster wrote:
> While discussing Gonglei's "[PATCH v2 00/19] usb: convert device init
> to realize", Paolo called the PCI conversion job "Gargantuan". This
> series attempts to crack it into manageable jobs.
>
> The basic idea comes from qdev core: have the core deal with just
> realize, but default the device models' realize() method to one that
> calls the old init() method. Unconverted device models don't set
> their realize(), thus get one that calls their init(). We can then
> convert device by device instead of having to convert of all of PCI in
> one Gargantuan go.
>
Good solution I think :)
Best regards,
-Gonglei
> Since PCI's exit() cannot fail, I chose not to add an unrealize().
> Precedence: USBDeviceClass method handle_destroy(), called on USB
> unrealize.
>
> Aside: USBDeviceClass also has an unrealize() method, but it's never
> set and never called.
>
> PATCH 01 converts the interface between PCI core and qdev to realize.
>
> PATCH 02 adds realize to the interface between PCI core and PCI device
> models. Once all device models are converted to realize, the old init
> interface can be dropped, completing the Gargantuan job.
>
> PATCH 03-04 convert device models that cannot fail initialization.
>
> PATCH 05-10 convert a few that can fail, but are really easy to
> convert.
>
> This series is RFC because it's based on Marcel's "[PATCH v2] hw/pci:
> fixed crash when using rombar=0 with romfile=path for hotplugged
> devices", which is still undergoing review.
>
> Markus Armbruster (10):
> pci: Convert core to realize
> pci: Permit incremental conversion of device models to realize
> pci: Trivial device model conversions to realize
> pcnet: pcnet_common_init() always returns 0, change to void
> pcnet: Convert to realize
> serial-pci: Convert to realize
> ide/ich: Convert to realize
> cirrus-vga: Convert to realize
> qxl: Convert to realize
> pci-assign: Convert to realize
>
> hw/acpi/piix4.c | 5 +-
> hw/audio/ac97.c | 5 +-
> hw/audio/es1370.c | 5 +-
> hw/audio/intel-hda.c | 6 +--
> hw/char/serial-pci.c | 22 ++++-----
> hw/display/cirrus_vga.c | 11 ++---
> hw/display/qxl.c | 36 +++++++--------
> hw/display/vga-pci.c | 11 ++---
> hw/display/vmware_vga.c | 6 +--
> hw/i2c/smbus_ich9.c | 5 +-
> hw/i386/kvm/pci-assign.c | 10 ++--
> hw/ide/cmd646.c | 5 +-
> hw/ide/ich.c | 13 +++---
> hw/ide/piix.c | 10 ++--
> hw/ide/via.c | 6 +--
> hw/ipack/tpci200.c | 6 +--
> hw/isa/i82378.c | 6 +--
> hw/isa/piix4.c | 5 +-
> hw/isa/vt82c686.c | 24 ++++------
> hw/misc/pci-testdev.c | 6 +--
> hw/net/e1000.c | 6 +--
> hw/net/eepro100.c | 6 +--
> hw/net/lance.c | 3 +-
> hw/net/ne2000.c | 6 +--
> hw/net/pcnet-pci.c | 6 +--
> hw/net/pcnet.c | 4 +-
> hw/net/pcnet.h | 2 +-
> hw/net/rtl8139.c | 6 +--
> hw/net/vmxnet3.c | 6 +--
> hw/pci-bridge/dec.c | 5 +-
> hw/pci-host/apb.c | 5 +-
> hw/pci-host/bonito.c | 6 +--
> hw/pci-host/grackle.c | 5 +-
> hw/pci-host/piix.c | 12 ++---
> hw/pci-host/ppce500.c | 6 +--
> hw/pci-host/prep.c | 6 +--
> hw/pci-host/q35.c | 5 +-
> hw/pci-host/uninorth.c | 20 ++++----
> hw/pci-host/versatile.c | 5 +-
> hw/pci/pci.c | 111
> ++++++++++++++++++++++++++-------------------
> hw/usb/hcd-ehci-pci.c | 6 +--
> hw/usb/hcd-xhci.c | 6 +--
> hw/watchdog/wdt_i6300esb.c | 6 +--
> include/hw/pci/pci.h | 3 +-
> 44 files changed, 199 insertions(+), 256 deletions(-)
>
- Re: [Qemu-devel] [PATCH RFC 06/10] serial-pci: Convert to realize, (continued)
- [Qemu-devel] [PATCH RFC 02/10] pci: Permit incremental conversion of device models to realize, Markus Armbruster, 2014/10/28
- [Qemu-devel] [PATCH RFC 05/10] pcnet: Convert to realize, Markus Armbruster, 2014/10/28
- [Qemu-devel] [PATCH RFC 07/10] ide/ich: Convert to realize, Markus Armbruster, 2014/10/28
- [Qemu-devel] [PATCH RFC 08/10] cirrus-vga: Convert to realize, Markus Armbruster, 2014/10/28
- [Qemu-devel] [PATCH RFC 09/10] qxl: Convert to realize, Markus Armbruster, 2014/10/28
- Re: [Qemu-devel] [PATCH RFC 00/10] pci: Partial conversion to realize,
Gonglei <=
- Re: [Qemu-devel] [PATCH RFC 00/10] pci: Partial conversion to realize, Andreas Färber, 2014/10/31