qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Anthony Liguori <anthony@codemonkey.ws>
To: Anthony Liguori <aliguori@us.ibm.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH v3 0/28] qom: add QEMU Object Model type hierarchy to qdev
Date: Fri, 27 Jan 2012 11:34:42 -0600	[thread overview]
Message-ID: <4F22E032.6060401@codemonkey.ws> (raw)
In-Reply-To: <1327433600-7403-1-git-send-email-aliguori@us.ibm.com>

On 01/24/2012 01:32 PM, Anthony Liguori wrote:
> This series makes qdev a proper Object and converts qdev's type inheritance to
> QOM inheritance.
>
> The first half of the series are manual cleanups/refactorings.  The second half
> is mostly scripted conversion, separated out into reviewable and bisectable
> chunks.
>
> I've tested this series extensively for the pc target including bisectability.
> I have not tested any other targets yet so your mileage may vary.
>
> Since the original RFC, I've fixed any of the not-for-upstream issues.  This
> also includes some uni-north patches that are in ppc-next.
>
> Paolo and Andreas have asked that I declare a date when I'll merge this so that
> people can be prepared for the rebase fall out.  I will merge this on Friday
> unless there is a major problem found in review.

Applied (with the few changes requested).

Even anyone encounters a problem rebasing after this series, please feel free to 
poke me for help.  There should be ample examples of how to use the new 
infrastructure too.

Regards,

Anthony Liguori

>
> This is also available at:
>
> https://github.com/aliguori/qemu/tree/qom-upstream.10
>
> For full context, the whole tree is located at:
>
> https://github.com/aliguori/qemu/commits/qom-rebase.7
>
> git diffstat origin/master HEAD
>   Makefile                   |    2
>   Makefile.hw                |    1
>   Makefile.objs              |    3
>   Makefile.target            |    2
>   configure                  |    2
>   hw/9pfs/virtio-9p-device.c |   44 ++--
>   hw/a9mpcore.c              |   21 +
>   hw/ac97.c                  |   39 ++-
>   hw/acpi_piix4.c            |   59 +++--
>   hw/ads7846.c               |   17 +
>   hw/alpha_typhoon.c         |   17 +
>   hw/apb_pci.c               |   71 ++++--
>   hw/apic.c                  |   21 +
>   hw/apic_common.c           |   88 +++++---
>   hw/apic_internal.h         |   32 +-
>   hw/applesmc.c              |   18 +
>   hw/arm11mpcore.c           |   68 +++---
>   hw/arm_l2x0.c              |   25 +-
>   hw/arm_mptimer.c           |   23 +-
>   hw/arm_sysctl.c            |   31 +-
>   hw/arm_timer.c             |   46 +++-
>   hw/armv7m.c                |   25 +-
>   hw/armv7m_nvic.c           |   21 +
>   hw/bitbang_i2c.c           |   17 +
>   hw/bonito.c                |   47 ++--
>   hw/ccid-card-emulated.c    |   27 +-
>   hw/ccid-card-passthru.c    |   27 +-
>   hw/ccid.h                  |   28 +-
>   hw/cirrus_vga.c            |   50 ++--
>   hw/container.c             |   17 +
>   hw/cs4231.c                |   27 +-
>   hw/cs4231a.c               |   20 +
>   hw/debugcon.c              |   16 +
>   hw/dec_pci.c               |   74 ++++--
>   hw/ds1225y.c               |   29 +-
>   hw/ds1338.c                |   31 +-
>   hw/e1000.c                 |   45 ++--
>   hw/eccmemctl.c             |   29 +-
>   hw/eepro100.c              |  202 +++++++++++-------
>   hw/empty_slot.c            |   15 +
>   hw/es1370.c                |   36 +--
>   hw/escc.c                  |   43 ++-
>   hw/esp.c                   |   27 +-
>   hw/etraxfs_eth.c           |   33 +--
>   hw/etraxfs_pic.c           |   25 +-
>   hw/etraxfs_ser.c           |   17 +
>   hw/etraxfs_timer.c         |   16 +
>   hw/fdc.c                   |   84 +++++--
>   hw/fw_cfg.c                |   33 +--
>   hw/g364fb.c                |   33 +--
>   hw/grackle_pci.c           |   44 ++--
>   hw/grlib_apbuart.c         |   25 +-
>   hw/grlib_gptimer.c         |   31 +-
>   hw/grlib_irqmp.c           |   29 +-
>   hw/gt64xxx.c               |   39 ++-
>   hw/gus.c                   |   20 +
>   hw/hda-audio.c             |   60 +++--
>   hw/hpet.c                  |   33 +--
>   hw/i2c.c                   |  111 +++++++---
>   hw/i2c.h                   |   52 ++--
>   hw/i82374.c                |   19 +
>   hw/i82378.c                |   31 +-
>   hw/i8254.c                 |   22 +-
>   hw/i8259.c                 |   15 +
>   hw/i8259_common.c          |   45 ++--
>   hw/i8259_internal.h        |   27 +-
>   hw/ide/cmd646.c            |   41 ++-
>   hw/ide/ich.c               |   37 +--
>   hw/ide/internal.h          |   20 +
>   hw/ide/isa.c               |   20 +
>   hw/ide/piix.c              |   91 +++++---
>   hw/ide/qdev.c              |  111 ++++++----
>   hw/ide/via.c               |   27 +-
>   hw/integratorcp.c          |   40 ++-
>   hw/intel-hda.c             |   91 +++++---
>   hw/intel-hda.h             |   26 +-
>   hw/ioapic.c                |   17 +
>   hw/ioapic_common.c         |   49 +++-
>   hw/ioapic_internal.h       |   26 +-
>   hw/ioh3420.c               |   59 +++--
>   hw/isa-bus.c               |   57 +++--
>   hw/isa.h                   |   23 +-
>   hw/ivshmem.c               |   47 ++--
>   hw/kvm/apic.c              |   19 +
>   hw/kvm/clock.c             |   19 +
>   hw/kvm/i8259.c             |   19 +
>   hw/kvm/ioapic.c            |   23 +-
>   hw/lan9118.c               |   31 +-
>   hw/lance.c                 |   33 +--
>   hw/lm32_juart.c            |   19 +
>   hw/lm32_pic.c              |   19 +
>   hw/lm32_sys.c              |   29 +-
>   hw/lm32_timer.c            |   31 +-
>   hw/lm32_uart.c             |   19 +
>   hw/lm832x.c                |   33 +--
>   hw/lsi53c895a.c            |   33 +--
>   hw/m48t59.c                |   51 +++-
>   hw/macio.c                 |   50 +++-
>   hw/marvell_88w8618_audio.c |   35 +--
>   hw/max111x.c               |   34 ++-
>   hw/max7310.c               |   35 +--
>   hw/mc146818rtc.c           |   22 +-
>   hw/milkymist-ac97.c        |   19 +
>   hw/milkymist-hpdmc.c       |   19 +
>   hw/milkymist-memcard.c     |   19 +
>   hw/milkymist-minimac2.c    |   37 ++-
>   hw/milkymist-pfpu.c        |   19 +
>   hw/milkymist-softusb.c     |   43 ++-
>   hw/milkymist-sysctl.c      |   43 ++-
>   hw/milkymist-tmu2.c        |   19 +
>   hw/milkymist-uart.c        |   19 +
>   hw/milkymist-vgafb.c       |   31 +-
>   hw/mips_malta.c            |   19 +
>   hw/mipsnet.c               |   33 +--
>   hw/mpc8544_guts.c          |   15 +
>   hw/mst_fpga.c              |   19 +
>   hw/musicpal.c              |  153 ++++++++++----
>   hw/nand.c                  |   33 +--
>   hw/ne2000-isa.c            |   18 +
>   hw/ne2000.c                |   37 ++-
>   hw/omap_gpio.c             |   70 ++++--
>   hw/omap_intc.c             |   62 +++--
>   hw/onenand.c               |   35 ++-
>   hw/opencores_eth.c         |   31 +-
>   hw/openpic.c               |   30 --
>   hw/openpic.h               |    2
>   hw/parallel.c              |   16 +
>   hw/pc.c                    |   20 +
>   hw/pci.c                   |  140 +++++-------
>   hw/pci.h                   |   80 +++----
>   hw/pci_bridge.c            |    2
>   hw/pcie.c                  |    2
>   hw/pckbd.c                 |   18 +
>   hw/pcnet-pci.c             |   39 ++-
>   hw/pcnet.c                 |    2
>   hw/piix4.c                 |   35 +--
>   hw/piix_pci.c              |  126 +++++++----
>   hw/pl011.c                 |   36 ++-
>   hw/pl022.c                 |   15 +
>   hw/pl031.c                 |   19 +
>   hw/pl041.c                 |   34 +--
>   hw/pl050.c                 |   34 ++-
>   hw/pl061.c                 |   34 ++-
>   hw/pl080.c                 |   38 ++-
>   hw/pl110.c                 |   57 +++--
>   hw/pl181.c                 |   23 +-
>   hw/pl190.c                 |   21 +
>   hw/ppc4xx_pci.c            |   38 ++-
>   hw/ppc_newworld.c          |    2
>   hw/ppce500_pci.c           |   38 ++-
>   hw/ppce500_spin.c          |   15 +
>   hw/prep_pci.c              |   52 ++--
>   hw/pxa2xx.c                |   96 ++++++--
>   hw/pxa2xx_dma.c            |   29 +-
>   hw/pxa2xx_gpio.c           |   29 +-
>   hw/pxa2xx_pic.c            |   19 +
>   hw/pxa2xx_timer.c          |   66 +++---
>   hw/qdev-properties.c       |   20 -
>   hw/qdev.c                  |  123 ++++++++---
>   hw/qdev.h                  |   40 +++
>   hw/qxl.c                   |   66 +++---
>   hw/realview.c              |   15 +
>   hw/realview_gic.c          |   16 +
>   hw/rtl8139.c               |   43 ++-
>   hw/s390-virtio-bus.c       |  110 +++++++---
>   hw/sb16.c                  |   20 +
>   hw/sbi.c                   |   19 +
>   hw/scsi-bus.c              |   95 ++++++--
>   hw/scsi-disk.c             |  159 ++++++++------
>   hw/scsi-generic.c          |   29 +-
>   hw/scsi.h                  |   31 +-
>   hw/serial.c                |   18 +
>   hw/sga.c                   |   15 -
>   hw/sh_pci.c                |   37 ++-
>   hw/slavio_intctl.c         |   19 +
>   hw/slavio_misc.c           |   34 ++-
>   hw/slavio_timer.c          |   29 +-
>   hw/smbus.c                 |   85 +++++--
>   hw/smbus.h                 |   42 ++-
>   hw/smbus_eeprom.c          |   27 +-
>   hw/smc91c111.c             |   31 +-
>   hw/spapr_llan.c            |   41 ++-
>   hw/spapr_pci.c             |   31 ++
>   hw/spapr_vio.c             |   72 ++++--
>   hw/spapr_vio.h             |   35 ++-
>   hw/spapr_vscsi.c           |   37 ++-
>   hw/spapr_vty.c             |   37 ++-
>   hw/sparc32_dma.c           |   31 +-
>   hw/spitz.c                 |   94 +++++---
>   hw/ssd0303.c               |   33 +--
>   hw/ssd0323.c               |   17 +
>   hw/ssi-sd.c                |   17 +
>   hw/ssi.c                   |   23 +-
>   hw/ssi.h                   |   18 +
>   hw/stellaris.c             |   65 +++++-
>   hw/stellaris_enet.c        |   27 +-
>   hw/strongarm.c             |  124 +++++++----
>   hw/sun4c_intctl.c          |   19 +
>   hw/sun4m.c                 |   78 +++++--
>   hw/sun4m_iommu.c           |   29 +-
>   hw/sun4u.c                 |   71 ++++--
>   hw/sysbus.c                |   40 ++-
>   hw/sysbus.h                |   25 +-
>   hw/tcx.c                   |   37 ++-
>   hw/tmp105.c                |   37 ++-
>   hw/tosa.c                  |   50 ++--
>   hw/tusb6010.c              |   17 +
>   hw/twl92230.c              |   35 +--
>   hw/unin_pci.c              |  204 +++++++++++++-----
>   hw/usb-audio.c             |   38 ++-
>   hw/usb-bt.c                |   33 +--
>   hw/usb-bus.c               |  190 +++++++++++++----
>   hw/usb-ccid.c              |  114 +++++++---
>   hw/usb-desc.c              |   22 +-
>   hw/usb-ehci.c              |   63 +++--
>   hw/usb-hid.c               |  108 +++++-----
>   hw/usb-hub.c               |   35 +--
>   hw/usb-msd.c               |   41 ++-
>   hw/usb-net.c               |   43 ++-
>   hw/usb-ohci.c              |   58 +++--
>   hw/usb-serial.c            |   74 +++---
>   hw/usb-uhci.c              |  189 +++++++++++------
>   hw/usb-wacom.c             |   36 +--
>   hw/usb-xhci.c              |   37 ++-
>   hw/usb.c                   |   24 --
>   hw/usb.h                   |   50 +++-
>   hw/versatile_pci.c         |   53 +++-
>   hw/versatilepb.c           |   19 +
>   hw/vga-isa.c               |   18 +
>   hw/vga-pci.c               |   27 +-
>   hw/virtio-console.c        |   69 +++---
>   hw/virtio-net.c            |    2
>   hw/virtio-pci.c            |  210 +++++++++++--------
>   hw/virtio-serial-bus.c     |   68 +++---
>   hw/virtio-serial.h         |   81 ++++---
>   hw/vmmouse.c               |   22 +-
>   hw/vmport.c                |   16 +
>   hw/vmware_vga.c            |   34 +--
>   hw/vt82c686.c              |  120 ++++++-----
>   hw/wdt_i6300esb.c          |   33 +--
>   hw/wdt_ib700.c             |   18 +
>   hw/wm8750.c                |   37 ++-
>   hw/xen_platform.c          |   34 +--
>   hw/xilinx_axidma.c         |   27 +-
>   hw/xilinx_axienet.c        |   35 ++-
>   hw/xilinx_ethlite.c        |   31 +-
>   hw/xilinx_intc.c           |   25 +-
>   hw/xilinx_timer.c          |   27 +-
>   hw/xilinx_uartlite.c       |   16 +
>   hw/xio3130_downstream.c    |   59 +++--
>   hw/xio3130_upstream.c      |   53 ++--
>   hw/z2.c                    |   52 +++-
>   hw/zaurus.c                |   27 +-
>   include/qemu/object.h      |  436 ++++++++++++++++++++++++++++++++++++++++
>   qom/Makefile               |    1
>   qom/object.c               |  485 +++++++++++++++++++++++++++++++++++++++++++++
>   usb-bsd.c                  |   29 +-
>   usb-linux.c                |   37 +--
>   usb-redir.c                |   33 +--
>   259 files changed, 7764 insertions(+), 3755 deletions(-)
>
>
>

      parent reply	other threads:[~2012-01-27 17:34 UTC|newest]

Thread overview: 74+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-24 19:32 [Qemu-devel] [PATCH v3 0/28] qom: add QEMU Object Model type hierarchy to qdev Anthony Liguori
2012-01-24 19:32 ` [Qemu-devel] [PATCH 01/28] macio: convert " Anthony Liguori
2012-01-26 23:17   ` [Qemu-devel] [PATCH] macio: Convert " Andreas Färber
2012-03-06 22:56     ` Alexander Graf
2012-01-24 19:32 ` [Qemu-devel] [PATCH 02/28] openpic: remove dead code to make a PCI device version Anthony Liguori
2012-01-26 23:57   ` Andreas Färber
2012-01-24 19:32 ` [Qemu-devel] [PATCH 03/28] pci: call reset unconditionally Anthony Liguori
2012-01-25 12:42   ` Michael S. Tsirkin
2012-01-25 13:28     ` Anthony Liguori
2012-01-24 19:32 ` [Qemu-devel] [PATCH 04/28] qom: add the base Object class (v2) Anthony Liguori
2012-01-25 21:30   ` Andreas Färber
2012-01-25 21:37     ` Anthony Liguori
2012-01-26  7:43       ` Paolo Bonzini
2012-01-27 15:05       ` Andreas Färber
2012-01-27 15:42         ` Anthony Liguori
2012-01-27 15:43           ` Andreas Färber
2012-01-24 19:32 ` [Qemu-devel] [PATCH 05/28] qdev: integrate with QEMU Object Model (v2) Anthony Liguori
2012-01-24 19:32 ` [Qemu-devel] [PATCH 06/28] qdev: move qdev->info to class Anthony Liguori
2012-01-24 19:32 ` [Qemu-devel] [PATCH 07/28] qdev: don't access name through info Anthony Liguori
2012-01-24 19:33 ` [Qemu-devel] [PATCH 08/28] qdev: use a wrapper to access reset and promote reset to a class method Anthony Liguori
2012-01-24 19:33 ` [Qemu-devel] [PATCH 09/28] qdev: add a interface to register subclasses Anthony Liguori
2012-01-24 19:33 ` [Qemu-devel] [PATCH 10/28] qdev: add class_init to DeviceInfo Anthony Liguori
2012-01-24 19:33 ` [Qemu-devel] [PATCH 11/28] qdev: prepare source tree for code conversion Anthony Liguori
2012-01-26 17:35   ` [Qemu-devel] [PATCH 1/3] es1370: Drop dead code Andreas Färber
2012-01-26 17:35     ` [Qemu-devel] [PATCH 2/3] marvell_88w8618_audio: Use DEFINE_PROP_* macros Andreas Färber
2012-01-26 17:35     ` [Qemu-devel] [PATCH 3/3] qdev: prepare source tree for code conversion Andreas Färber
2012-01-24 19:33 ` [Qemu-devel] [PATCH 12/28] isa: pic: convert to QEMU Object Model Anthony Liguori
2012-01-24 19:33 ` [Qemu-devel] [PATCH 13/28] usb: " Anthony Liguori
2012-01-24 19:33 ` [Qemu-devel] [PATCH 14/28] ccid: " Anthony Liguori
2012-01-24 19:33 ` [Qemu-devel] [PATCH 15/28] ssi: " Anthony Liguori
2012-01-24 19:33 ` [Qemu-devel] [PATCH 16/28] i2c: rename i2c_slave -> I2CSlave Anthony Liguori
2012-01-24 19:33 ` [Qemu-devel] [PATCH 17/28] i2c: smbus: convert to QEMU Object Model Anthony Liguori
2012-01-24 19:33 ` [Qemu-devel] [PATCH 18/28] hda-codec: " Anthony Liguori
2012-01-24 19:33 ` [Qemu-devel] [PATCH 19/28] ide: " Anthony Liguori
2012-01-24 19:33 ` [Qemu-devel] [PATCH 20/28] scsi: " Anthony Liguori
2012-01-24 19:33 ` [Qemu-devel] [PATCH 21/28] spapr: convert to QEMU Object Model (v2) Anthony Liguori
2012-01-24 19:33 ` [Qemu-devel] [PATCH 22/28] virtio-serial: convert to QEMU Object Model Anthony Liguori
2012-01-24 19:59   ` Amit Shah
2012-01-24 20:13     ` Anthony Liguori
2012-01-24 19:33 ` [Qemu-devel] [PATCH 23/28] unin_pci: Clean up qdev names Anthony Liguori
2012-01-24 19:33 ` [Qemu-devel] [PATCH 24/28] unin_pci: Drop duplicate busdev Anthony Liguori
2012-01-24 19:33 ` [Qemu-devel] [PATCH 25/28] unin_pci: Drop unused reset handler Anthony Liguori
2012-01-24 19:33 ` [Qemu-devel] [PATCH 26/28] pci: convert to QEMU Object Model Anthony Liguori
2012-01-25 12:41   ` Michael S. Tsirkin
2012-01-25 13:34     ` Anthony Liguori
2012-01-24 19:33 ` [Qemu-devel] [PATCH 27/28] sysbus: apic: ioapic: " Anthony Liguori
2012-01-24 20:01   ` Jan Kiszka
2012-01-24 20:21     ` Anthony Liguori
2012-01-24 21:01       ` Jan Kiszka
2012-01-24 21:11         ` Anthony Liguori
2012-01-24 21:31           ` Jan Kiszka
2012-01-24 21:53             ` Anthony Liguori
2012-01-24 22:06               ` Jan Kiszka
2012-01-24 23:03                 ` Anthony Liguori
2012-01-25  8:33                   ` Andreas Färber
2012-01-25 12:09                     ` Avi Kivity
2012-01-25 13:02                     ` Paul Brook
2012-01-25 14:25                     ` Anthony Liguori
2012-01-25  8:37                   ` Jan Kiszka
2012-01-25 10:15                     ` Paolo Bonzini
2012-01-25 10:27                       ` Jan Kiszka
2012-01-25 11:15                         ` Paolo Bonzini
2012-01-25 14:00                     ` Anthony Liguori
2012-01-25 14:23                       ` Jan Kiszka
2012-01-25 14:40                         ` Anthony Liguori
2012-01-25 15:18                           ` Andreas Färber
2012-01-25 15:34                           ` Eric Blake
2012-01-24 19:33 ` [Qemu-devel] [PATCH 28/28] virtio-s390: " Anthony Liguori
2012-01-24 23:13 ` [Qemu-devel] [PATCH v3 0/28] qom: add QEMU Object Model type hierarchy to qdev Peter Maydell
2012-01-24 23:16   ` Anthony Liguori
2012-01-25 18:31 ` Blue Swirl
2012-01-25 19:43   ` Anthony Liguori
2012-01-25 20:09     ` Blue Swirl
2012-01-27 17:34 ` Anthony Liguori [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4F22E032.6060401@codemonkey.ws \
    --to=anthony@codemonkey.ws \
    --cc=aliguori@us.ibm.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).