All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH RESEND v3 00/58] qdev: Rework how we plug into the parent bus
@ 2020-06-10  5:31 Markus Armbruster
  2020-06-10  5:31 ` [PATCH RESEND v3 01/58] qdev: Rename qbus_realize() to qbus_init() Markus Armbruster
                   ` (58 more replies)
  0 siblings, 59 replies; 64+ messages in thread
From: Markus Armbruster @ 2020-06-10  5:31 UTC (permalink / raw)
  To: qemu-devel
  Cc: Daniel P . Berrange, Eduardo Habkost, Michael S . Tsirkin,
	Alistair Francis, Mark Cave-Ayland, Gerd Hoffmann, Paolo Bonzini,
	David Gibson

Paolo recently suggested "to move the bus argument (and thus
qdev_set_parent_bus) to qdev_init"[1], and that it "would be quite
large but hopefully scriptable"[2].  Nerd sniped!

The series is big, but at least the bigger patches are all mechanical.

It is based on my "[PATCH v3 00/24] Fixes around device realization".

I'm abstaining from cc'ing maintainers on mechanical conversions.  I
still cc: for patches I deem interesting, with related patches thrown
in for context.  Let me know if you think I should cc: more widely.

PATCH 01-03  	Preliminary cleanup
PATCH 04     	New qdev infrastructure
      	     	Commit message explains why the current state is
      	     	problematic, and how my work improves it.
PATCH 05-12  	Convert direct users of qdev
PATCH 13-17  	Convert PCI
PATCH 18-21  	Convert ISA
PATCH 22-25  	Convert SSI
PATCH 26-29  	Convert USB
PATCH 30     	Garbage collection
PATCH 31-34  	Convert aux-bus
PATCH 35-42  	Clean up around child device initialization
PATCH 43-52  	Convert sysbus
PATCH 53     	Stop pretending recursive realization is about to become
      	     	real
PATCH 54-56  	Convert bus-less devices
PATCH 57	Garbage collection
PATCH 58	Maintain MAINTAINERS

Enjoy!

v3:
* Rebased; noteworthy conflicts
  - PATCH 36+48+56: commit fe0fe4735e7 (new machine opentitan)
  - PATCH 47: commit 26cd0362dd4 (machines spike_v1.9.1 and
    spike_v1.10 are gone)
  - PATCH 48: commit 60bf734e64 and 3d46938bbb (new bmc2835
    children)
  - PATCH 48: v3 of "macio: Fix to realize "mos6522-cuda" and
    "mos6522-pmu" devices"
  Puh!
* PATCH 08: Coccinelle script in commit message fixed; patch unchanged
* PATCH 19+39+50: Coding style

v2:
* Rebased
* PATCH 02+03:
  Old PATCH 02 is actually a revert, replace by propert reverts
  [Philippe]
* PATCH 04:
  - Fix pasto [Alistair]
  - Rephrase qdev_realize_and_unref()'s contract [Paolo]
  - qdev_realize() passes on realize error unprefixed (because
    prefixes can pile up)
* PATCH 08:
  Drop unwanted code motion [Paolo]
* PATCH 09:
  - Make the Coccinelle script safer; output unchanged [Paolo]
  - Delete a Coccinelle rule that due to rebase applies just once;
    move its code changes (hw/char/serial.c, hw/display/ati.c,
    half of hw/display/sm501.c) to the next patch
  - Move changes to hw/arm/highbank.c to next patch, where they belong
* PATCH 31:
  New [Philippe]
* PATCH 32:
  Rename aux_realize_bus() to aux_bus_realize() [Philippe]
* PATCH 47:
  &dev->parent_obj doesn't work after rebase, use SYS_BUS_DEVICE(dev)
  instead
* PATCH 52:
  New [Philippe]
* PATCH 53:
  Clean up on realize error [David]
* PATCH 54:
  Don't restrict qdev_realize_and_unref() to non-null bus [Paolo]

[1]
Subject: Re: Infinite loop in bus_unparent(), qdev bug or qdev misuse?
Date: Mon, 4 May 2020 16:58:54 +0200
Message-ID: <6fc8633a-6d91-b83a-e6cd-5f714ccaf9ea@redhat.com>

[2]
Subject: Re: Infinite loop in bus_unparent(), qdev bug or qdev misuse?
Date: Tue, 5 May 2020 18:26:57 +0200
Message-ID: <a4df3ba3-4759-56ac-68f8-f75eea93e27e@redhat.com>

Based-on: <20200609122339.937862-1-armbru@redhat.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Daniel P. Berrange <berrange@redhat.com>
Cc: Eduardo Habkost <ehabkost@redhat.com>
Cc: Michael S. Tsirkin <mst@redhat.com>
Cc: Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
Cc: Alistair Francis <alistair@alistair23.me>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Cc: David Gibson <david@gibson.dropbear.id.au>

Markus Armbruster (58):
  qdev: Rename qbus_realize() to qbus_init()
  Revert "hw/prep: realize the PCI root bus as part of the prep init"
  Revert "hw/versatile: realize the PCI root bus as part of the
    versatile init"
  qdev: New qdev_new(), qdev_realize(), etc.
  qdev: Put qdev_new() to use with Coccinelle
  qdev: Convert to qbus_realize(), qbus_unrealize()
  qdev: Convert to qdev_unrealize() with Coccinelle
  qdev: Convert to qdev_unrealize() manually
  qdev: Convert uses of qdev_create() with Coccinelle
  qdev: Convert uses of qdev_create() manually
  qdev: Convert uses of qdev_set_parent_bus() with Coccinelle
  qdev: Convert uses of qdev_set_parent_bus() manually
  pci: New pci_new(), pci_realize_and_unref() etc.
  hw/ppc: Eliminate two superfluous QOM casts
  pci: Convert uses of pci_create() etc. with Coccinelle
  pci: Convert uses of pci_create() etc. manually
  pci: pci_create(), pci_create_multifunction() are now unused, drop
  isa: New isa_new(), isa_realize_and_unref() etc.
  isa: Convert uses of isa_create() with Coccinelle
  isa: Convert uses of isa_create(), isa_try_create() manually
  isa: isa_create(), isa_try_create() are now unused, drop
  ssi: ssi_auto_connect_slaves() never does anything, drop
  ssi: Convert uses of ssi_create_slave_no_init() with Coccinelle
  ssi: Convert last use of ssi_create_slave_no_init() manually
  ssi: ssi_create_slave_no_init() is now unused, drop
  usb: New usb_new(), usb_realize_and_unref()
  usb: Convert uses of usb_create()
  usb: usb_create() is now unused, drop
  usb: Eliminate usb_try_create_simple()
  qdev: qdev_create(), qdev_try_create() are now unused, drop
  auxbus: Rename aux_init_bus() to aux_bus_init()
  auxbus: New aux_bus_realize(), pairing with aux_bus_init()
  auxbus: Convert a use of qdev_set_parent_bus()
  auxbus: Eliminate aux_create_slave()
  qom: Tidy up a few object_initialize_child() calls
  qom: Less verbose object_initialize_child()
  macio: Convert use of qdev_set_parent_bus()
  macio: Eliminate macio_init_child_obj()
  sysbus: Drop useless OBJECT() in sysbus_init_child_obj() calls
  microbit: Tidy up sysbus_init_child_obj() @child argument
  sysbus: Tidy up sysbus_init_child_obj()'s @childsize arg, part 1
  hw/arm/armsse: Pass correct child size to sysbus_init_child_obj()
  sysbus: Tidy up sysbus_init_child_obj()'s @childsize arg, part 2
  sysbus: New sysbus_realize(), sysbus_realize_and_unref()
  sysbus: Convert to sysbus_realize() etc. with Coccinelle
  qdev: Drop qdev_realize() support for null bus
  sysbus: Convert qdev_set_parent_bus() use with Coccinelle, part 1
  sysbus: Convert qdev_set_parent_bus() use with Coccinelle, part 2
  sysbus: Convert qdev_set_parent_bus() use with Coccinelle, part 3
  sysbus: Convert qdev_set_parent_bus() use with Coccinelle, part 4
  sysbus: sysbus_init_child_obj() is now unused, drop
  microbit: Eliminate two local variables in microbit_init()
  s390x/event-facility: Simplify creation of SCLP event devices
  qdev: Make qdev_realize() support bus-less devices
  qdev: Use qdev_realize() in qdev_device_add()
  qdev: Convert bus-less devices to qdev_realize() with Coccinelle
  qdev: qdev_init_nofail() is now unused, drop
  MAINTAINERS: Make section QOM cover hw/core/*bus.c as well

 hw/lm32/lm32.h                           |  13 +-
 hw/lm32/milkymist-hw.h                   |  37 ++---
 include/hw/audio/pcspk.h                 |   5 +-
 include/hw/char/cadence_uart.h           |   5 +-
 include/hw/char/cmsdk-apb-uart.h         |   4 +-
 include/hw/char/pl011.h                  |   9 +-
 include/hw/char/xilinx_uartlite.h        |   4 +-
 include/hw/cris/etraxfs.h                |   4 +-
 include/hw/isa/isa.h                     |   5 +-
 include/hw/misc/auxbus.h                 |  18 +--
 include/hw/misc/unimp.h                  |   5 +-
 include/hw/net/ne2000-isa.h              |   5 +-
 include/hw/pci/pci.h                     |   6 +-
 include/hw/qdev-core.h                   |  13 +-
 include/hw/ssi/ssi.h                     |   5 -
 include/hw/sysbus.h                      |  19 +--
 include/hw/timer/cmsdk-apb-timer.h       |   4 +-
 include/hw/timer/i8254.h                 |   9 +-
 include/hw/usb.h                         |   6 +-
 include/qom/object.h                     |  30 +++-
 hw/acpi/pcihp.c                          |   2 +-
 hw/acpi/piix4.c                          |   6 +-
 hw/alpha/typhoon.c                       |   4 +-
 hw/arm/allwinner-a10.c                   |  50 +++----
 hw/arm/allwinner-h3.c                    |  57 +++-----
 hw/arm/armsse.c                          | 174 +++++++++--------------
 hw/arm/armv7m.c                          |  12 +-
 hw/arm/aspeed.c                          |  18 ++-
 hw/arm/aspeed_ast2600.c                  | 110 ++++++--------
 hw/arm/aspeed_soc.c                      |  84 +++++------
 hw/arm/bcm2835_peripherals.c             |  81 +++++------
 hw/arm/bcm2836.c                         |  17 +--
 hw/arm/cubieboard.c                      |   6 +-
 hw/arm/digic.c                           |  16 +--
 hw/arm/digic_boards.c                    |   2 +-
 hw/arm/exynos4210.c                      |  48 +++----
 hw/arm/exynos4_boards.c                  |  11 +-
 hw/arm/fsl-imx25.c                       |  64 ++++-----
 hw/arm/fsl-imx31.c                       |  43 +++---
 hw/arm/fsl-imx6.c                        |  76 ++++------
 hw/arm/fsl-imx6ul.c                      | 105 +++++---------
 hw/arm/fsl-imx7.c                        | 100 +++++--------
 hw/arm/highbank.c                        |  28 ++--
 hw/arm/imx25_pdk.c                       |  10 +-
 hw/arm/integratorcp.c                    |   6 +-
 hw/arm/kzm.c                             |   5 +-
 hw/arm/mcimx6ul-evk.c                    |   7 +-
 hw/arm/mcimx7d-sabre.c                   |   7 +-
 hw/arm/microbit.c                        |  22 ++-
 hw/arm/mps2-tz.c                         |  79 +++++-----
 hw/arm/mps2.c                            |  26 ++--
 hw/arm/msf2-soc.c                        |  25 ++--
 hw/arm/msf2-som.c                        |  12 +-
 hw/arm/musca.c                           |  60 ++++----
 hw/arm/musicpal.c                        |   8 +-
 hw/arm/netduino2.c                       |   4 +-
 hw/arm/netduinoplus2.c                   |   4 +-
 hw/arm/nrf51_soc.c                       |  30 ++--
 hw/arm/nseries.c                         |   8 +-
 hw/arm/omap1.c                           |  16 +--
 hw/arm/omap2.c                           |  16 +--
 hw/arm/orangepi.c                        |   6 +-
 hw/arm/pxa2xx.c                          |   8 +-
 hw/arm/pxa2xx_gpio.c                     |   5 +-
 hw/arm/pxa2xx_pic.c                      |   5 +-
 hw/arm/raspi.c                           |  10 +-
 hw/arm/realview.c                        |  22 +--
 hw/arm/sabrelite.c                       |   6 +-
 hw/arm/sbsa-ref.c                        |  26 ++--
 hw/arm/spitz.c                           |   4 +-
 hw/arm/stellaris.c                       |  12 +-
 hw/arm/stm32f205_soc.c                   |  34 ++---
 hw/arm/stm32f405_soc.c                   |  45 +++---
 hw/arm/strongarm.c                       |   9 +-
 hw/arm/versatilepb.c                     |  18 +--
 hw/arm/vexpress.c                        |  18 +--
 hw/arm/virt.c                            |  38 ++---
 hw/arm/xilinx_zynq.c                     |  44 +++---
 hw/arm/xlnx-versal-virt.c                |  15 +-
 hw/arm/xlnx-versal.c                     |  53 +++----
 hw/arm/xlnx-zcu102.c                     |  26 ++--
 hw/arm/xlnx-zynqmp.c                     |  92 +++++-------
 hw/audio/intel-hda.c                     |   4 +-
 hw/block/fdc.c                           |  16 +--
 hw/block/nand.c                          |   4 +-
 hw/block/pflash_cfi01.c                  |   4 +-
 hw/block/pflash_cfi02.c                  |   4 +-
 hw/block/xen-block.c                     |   4 +-
 hw/char/exynos4210_uart.c                |   5 +-
 hw/char/mcf_uart.c                       |   5 +-
 hw/char/parallel-isa.c                   |   5 +-
 hw/char/serial-isa.c                     |   9 +-
 hw/char/serial-pci-multi.c               |   8 +-
 hw/char/serial-pci.c                     |   7 +-
 hw/char/serial.c                         |  14 +-
 hw/char/spapr_vty.c                      |   4 +-
 hw/core/bus.c                            |  23 ++-
 hw/core/cpu.c                            |   2 +-
 hw/core/empty_slot.c                     |   5 +-
 hw/core/qdev.c                           | 128 ++++++++---------
 hw/core/sysbus.c                         |  27 ++--
 hw/cpu/a15mpcore.c                       |   5 +-
 hw/cpu/a9mpcore.c                        |  23 ++-
 hw/cpu/arm11mpcore.c                     |  18 ++-
 hw/cpu/realview_mpcore.c                 |  10 +-
 hw/cris/axis_dev88.c                     |   4 +-
 hw/display/ati.c                         |   5 +-
 hw/display/milkymist-tmu2.c              |   4 +-
 hw/display/sm501.c                       |  13 +-
 hw/display/virtio-gpu-pci.c              |   3 +-
 hw/display/virtio-vga.c                  |   3 +-
 hw/display/xlnx_dp.c                     |  13 +-
 hw/dma/i8257.c                           |   9 +-
 hw/dma/pxa2xx_dma.c                      |   8 +-
 hw/dma/rc4030.c                          |   5 +-
 hw/dma/sparc32_dma.c                     |  16 +--
 hw/dma/xilinx_axidma.c                   |   9 +-
 hw/hppa/dino.c                           |   4 +-
 hw/hppa/lasi.c                           |   4 +-
 hw/hppa/machine.c                        |   4 +-
 hw/hyperv/hyperv.c                       |   2 +-
 hw/i2c/core.c                            |   5 +-
 hw/i2c/smbus_eeprom.c                    |   4 +-
 hw/i386/amd_iommu.c                      |   3 +-
 hw/i386/pc.c                             |  12 +-
 hw/i386/pc_q35.c                         |  14 +-
 hw/i386/pc_sysfw.c                       |   4 +-
 hw/i386/x86.c                            |   8 +-
 hw/ide/isa.c                             |   5 +-
 hw/ide/microdrive.c                      |   3 +-
 hw/ide/qdev.c                            |   4 +-
 hw/intc/armv7m_nvic.c                    |  15 +-
 hw/intc/exynos4210_gic.c                 |   5 +-
 hw/intc/i8259_common.c                   |   5 +-
 hw/intc/pnv_xive.c                       |  10 +-
 hw/intc/realview_gic.c                   |   4 +-
 hw/intc/s390_flic.c                      |   6 +-
 hw/intc/spapr_xive.c                     |  10 +-
 hw/intc/xics.c                           |   2 +-
 hw/intc/xive.c                           |   2 +-
 hw/isa/isa-bus.c                         |  27 ++--
 hw/isa/isa-superio.c                     |  20 +--
 hw/isa/piix4.c                           |   3 +-
 hw/isa/vt82c686.c                        |  13 +-
 hw/m68k/mcf5208.c                        |   4 +-
 hw/m68k/mcf_intc.c                       |   5 +-
 hw/m68k/next-cube.c                      |  12 +-
 hw/m68k/q800.c                           |  36 ++---
 hw/microblaze/petalogix_ml605_mmu.c      |  26 ++--
 hw/microblaze/petalogix_s3adsp1800_mmu.c |  14 +-
 hw/microblaze/xlnx-zynqmp-pmu.c          |  21 ++-
 hw/mips/boston.c                         |  14 +-
 hw/mips/cps.c                            |  20 ++-
 hw/mips/fuloong2e.c                      |   6 +-
 hw/mips/gt64xxx_pci.c                    |   5 +-
 hw/mips/jazz.c                           |  16 +--
 hw/mips/malta.c                          |  10 +-
 hw/mips/mipssim.c                        |   8 +-
 hw/misc/auxbus.c                         |  20 +--
 hw/misc/mac_via.c                        |  14 +-
 hw/misc/macio/cuda.c                     |   8 +-
 hw/misc/macio/macio.c                    |  56 +++-----
 hw/misc/macio/pmu.c                      |   8 +-
 hw/net/etraxfs_eth.c                     |   4 +-
 hw/net/fsl_etsec/etsec.c                 |   5 +-
 hw/net/lan9118.c                         |   5 +-
 hw/net/lasi_i82596.c                     |   5 +-
 hw/net/smc91c111.c                       |   5 +-
 hw/net/spapr_llan.c                      |   4 +-
 hw/net/xilinx_axienet.c                  |   9 +-
 hw/nios2/10m50_devboard.c                |  12 +-
 hw/nvram/fw_cfg.c                        |   8 +-
 hw/openrisc/openrisc_sim.c               |   8 +-
 hw/pci-bridge/dec.c                      |   6 +-
 hw/pci-bridge/pci_expander_bridge.c      |   8 +-
 hw/pci-host/bonito.c                     |   9 +-
 hw/pci-host/designware.c                 |   6 +-
 hw/pci-host/gpex.c                       |   6 +-
 hw/pci-host/i440fx.c                     |   4 +-
 hw/pci-host/pnv_phb3.c                   |  21 ++-
 hw/pci-host/pnv_phb4.c                   |  11 +-
 hw/pci-host/pnv_phb4_pec.c               |   8 +-
 hw/pci-host/prep.c                       |   7 +-
 hw/pci-host/q35.c                        |   6 +-
 hw/pci-host/sabre.c                      |  13 +-
 hw/pci-host/versatile.c                  |   4 +-
 hw/pci-host/xilinx-pcie.c                |   6 +-
 hw/pci/pci.c                             |  31 ++--
 hw/pci/pcie.c                            |   2 +-
 hw/pci/shpc.c                            |   2 +-
 hw/pcmcia/pxa2xx.c                       |   5 +-
 hw/ppc/e500.c                            |  32 ++---
 hw/ppc/mac_newworld.c                    |  46 +++---
 hw/ppc/mac_oldworld.c                    |  26 ++--
 hw/ppc/pnv.c                             | 103 ++++++--------
 hw/ppc/pnv_bmc.c                         |   2 +-
 hw/ppc/pnv_core.c                        |   2 +-
 hw/ppc/pnv_psi.c                         |  10 +-
 hw/ppc/ppc440_uc.c                       |   8 +-
 hw/ppc/prep.c                            |  35 +++--
 hw/ppc/sam460ex.c                        |   4 +-
 hw/ppc/spapr.c                           |  27 ++--
 hw/ppc/spapr_cpu_core.c                  |   2 +-
 hw/ppc/spapr_drc.c                       |   2 +-
 hw/ppc/spapr_iommu.c                     |   2 +-
 hw/ppc/spapr_irq.c                       |   6 +-
 hw/ppc/spapr_pci.c                       |   3 +-
 hw/ppc/spapr_vio.c                       |   4 +-
 hw/ppc/virtex_ml507.c                    |   9 +-
 hw/riscv/opentitan.c                     |  12 +-
 hw/riscv/riscv_hart.c                    |   7 +-
 hw/riscv/sifive_clint.c                  |   5 +-
 hw/riscv/sifive_e.c                      |  20 +--
 hw/riscv/sifive_e_prci.c                 |   5 +-
 hw/riscv/sifive_plic.c                   |   5 +-
 hw/riscv/sifive_test.c                   |   5 +-
 hw/riscv/sifive_u.c                      |  52 +++----
 hw/riscv/spike.c                         |   7 +-
 hw/riscv/virt.c                          |  15 +-
 hw/rtc/m48t59-isa.c                      |   7 +-
 hw/rtc/m48t59.c                          |   5 +-
 hw/rtc/mc146818rtc.c                     |   4 +-
 hw/rtc/sun4v-rtc.c                       |   5 +-
 hw/s390x/ap-bridge.c                     |   4 +-
 hw/s390x/css-bridge.c                    |   6 +-
 hw/s390x/event-facility.c                |  64 ++++-----
 hw/s390x/s390-pci-bus.c                  |   8 +-
 hw/s390x/s390-skeys.c                    |   2 +-
 hw/s390x/s390-stattrib.c                 |   2 +-
 hw/s390x/s390-virtio-ccw.c               |  16 +--
 hw/s390x/sclp.c                          |  12 +-
 hw/s390x/tod.c                           |   2 +-
 hw/s390x/vhost-vsock-ccw.c               |   3 +-
 hw/s390x/virtio-ccw-9p.c                 |   3 +-
 hw/s390x/virtio-ccw-balloon.c            |   3 +-
 hw/s390x/virtio-ccw-blk.c                |   3 +-
 hw/s390x/virtio-ccw-crypto.c             |   3 +-
 hw/s390x/virtio-ccw-gpu.c                |   3 +-
 hw/s390x/virtio-ccw-input.c              |   3 +-
 hw/s390x/virtio-ccw-net.c                |   3 +-
 hw/s390x/virtio-ccw-rng.c                |   3 +-
 hw/s390x/virtio-ccw-scsi.c               |   6 +-
 hw/s390x/virtio-ccw-serial.c             |   3 +-
 hw/scsi/scsi-bus.c                       |   4 +-
 hw/scsi/spapr_vscsi.c                    |   4 +-
 hw/sd/aspeed_sdhci.c                     |   2 +-
 hw/sd/milkymist-memcard.c                |   4 +-
 hw/sd/pxa2xx_mmci.c                      |   8 +-
 hw/sd/ssi-sd.c                           |   4 +-
 hw/sh4/r2d.c                             |  12 +-
 hw/sparc/leon3.c                         |  20 +--
 hw/sparc/sun4m.c                         |  64 ++++-----
 hw/sparc64/sun4u.c                       |  50 ++++---
 hw/ssi/aspeed_smc.c                      |   1 -
 hw/ssi/imx_spi.c                         |   2 -
 hw/ssi/mss-spi.c                         |   1 -
 hw/ssi/ssi.c                             |  43 +-----
 hw/ssi/xilinx_spi.c                      |   1 -
 hw/ssi/xilinx_spips.c                    |   4 -
 hw/usb/bus.c                             |  52 +++----
 hw/usb/dev-serial.c                      |   4 +-
 hw/virtio/vhost-scsi-pci.c               |   3 +-
 hw/virtio/vhost-user-blk-pci.c           |   3 +-
 hw/virtio/vhost-user-fs-pci.c            |   3 +-
 hw/virtio/vhost-user-scsi-pci.c          |   3 +-
 hw/virtio/vhost-vsock-pci.c              |   3 +-
 hw/virtio/virtio-9p-pci.c                |   3 +-
 hw/virtio/virtio-balloon-pci.c           |   3 +-
 hw/virtio/virtio-blk-pci.c               |   3 +-
 hw/virtio/virtio-crypto-pci.c            |   3 +-
 hw/virtio/virtio-input-pci.c             |   3 +-
 hw/virtio/virtio-iommu-pci.c             |   3 +-
 hw/virtio/virtio-net-pci.c               |   3 +-
 hw/virtio/virtio-pmem-pci.c              |   3 +-
 hw/virtio/virtio-rng-pci.c               |   3 +-
 hw/virtio/virtio-scsi-pci.c              |   3 +-
 hw/virtio/virtio-serial-pci.c            |   3 +-
 hw/virtio/virtio.c                       |   5 +-
 hw/xen/xen-bus.c                         |   4 +-
 hw/xen/xen-legacy-backend.c              |   7 +-
 hw/xtensa/virt.c                         |   4 +-
 hw/xtensa/xtfpga.c                       |   8 +-
 migration/migration.c                    |   2 +-
 qdev-monitor.c                           |   8 +-
 qom/object.c                             |  19 ++-
 target/i386/cpu.c                        |   3 +-
 tests/test-qdev-global-props.c           |   9 +-
 MAINTAINERS                              |   2 +
 288 files changed, 1958 insertions(+), 2378 deletions(-)

-- 
2.26.2



^ permalink raw reply	[flat|nested] 64+ messages in thread

end of thread, other threads:[~2020-06-10  9:38 UTC | newest]

Thread overview: 64+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-06-10  5:31 [PATCH RESEND v3 00/58] qdev: Rework how we plug into the parent bus Markus Armbruster
2020-06-10  5:31 ` [PATCH RESEND v3 01/58] qdev: Rename qbus_realize() to qbus_init() Markus Armbruster
2020-06-10  5:31 ` [PATCH RESEND v3 02/58] Revert "hw/prep: realize the PCI root bus as part of the prep init" Markus Armbruster
2020-06-10  5:31 ` [PATCH RESEND v3 03/58] Revert "hw/versatile: realize the PCI root bus as part of the versatile init" Markus Armbruster
2020-06-10  5:31 ` [PATCH RESEND v3 04/58] qdev: New qdev_new(), qdev_realize(), etc Markus Armbruster
2020-06-10  5:31 ` [PATCH RESEND v3 05/58] qdev: Put qdev_new() to use with Coccinelle Markus Armbruster
2020-06-10  5:31 ` [PATCH RESEND v3 06/58] qdev: Convert to qbus_realize(), qbus_unrealize() Markus Armbruster
2020-06-10  5:31 ` [PATCH RESEND v3 07/58] qdev: Convert to qdev_unrealize() with Coccinelle Markus Armbruster
2020-06-10  5:31 ` [PATCH RESEND v3 08/58] qdev: Convert to qdev_unrealize() manually Markus Armbruster
2020-06-10  5:31 ` [PATCH RESEND v3 09/58] qdev: Convert uses of qdev_create() with Coccinelle Markus Armbruster
2020-06-10  5:31 ` [PATCH RESEND v3 10/58] qdev: Convert uses of qdev_create() manually Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 11/58] qdev: Convert uses of qdev_set_parent_bus() with Coccinelle Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 12/58] qdev: Convert uses of qdev_set_parent_bus() manually Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 13/58] pci: New pci_new(), pci_realize_and_unref() etc Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 14/58] hw/ppc: Eliminate two superfluous QOM casts Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 15/58] pci: Convert uses of pci_create() etc. with Coccinelle Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 16/58] pci: Convert uses of pci_create() etc. manually Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 17/58] pci: pci_create(), pci_create_multifunction() are now unused, drop Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 18/58] isa: New isa_new(), isa_realize_and_unref() etc Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 19/58] isa: Convert uses of isa_create() with Coccinelle Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 20/58] isa: Convert uses of isa_create(), isa_try_create() manually Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 21/58] isa: isa_create(), isa_try_create() are now unused, drop Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 22/58] ssi: ssi_auto_connect_slaves() never does anything, drop Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 23/58] ssi: Convert uses of ssi_create_slave_no_init() with Coccinelle Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 24/58] ssi: Convert last use of ssi_create_slave_no_init() manually Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 25/58] ssi: ssi_create_slave_no_init() is now unused, drop Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 26/58] usb: New usb_new(), usb_realize_and_unref() Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 27/58] usb: Convert uses of usb_create() Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 28/58] usb: usb_create() is now unused, drop Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 29/58] usb: Eliminate usb_try_create_simple() Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 30/58] qdev: qdev_create(), qdev_try_create() are now unused, drop Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 31/58] auxbus: Rename aux_init_bus() to aux_bus_init() Markus Armbruster
2020-06-10  7:54   ` Philippe Mathieu-Daudé
2020-06-10  5:32 ` [PATCH RESEND v3 32/58] auxbus: New aux_bus_realize(), pairing with aux_bus_init() Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 33/58] auxbus: Convert a use of qdev_set_parent_bus() Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 34/58] auxbus: Eliminate aux_create_slave() Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 35/58] qom: Tidy up a few object_initialize_child() calls Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 36/58] qom: Less verbose object_initialize_child() Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 37/58] macio: Convert use of qdev_set_parent_bus() Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 38/58] macio: Eliminate macio_init_child_obj() Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 39/58] sysbus: Drop useless OBJECT() in sysbus_init_child_obj() calls Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 40/58] microbit: Tidy up sysbus_init_child_obj() @child argument Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 41/58] sysbus: Tidy up sysbus_init_child_obj()'s @childsize arg, part 1 Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 42/58] hw/arm/armsse: Pass correct child size to sysbus_init_child_obj() Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 43/58] sysbus: Tidy up sysbus_init_child_obj()'s @childsize arg, part 2 Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 44/58] sysbus: New sysbus_realize(), sysbus_realize_and_unref() Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 45/58] sysbus: Convert to sysbus_realize() etc. with Coccinelle Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 46/58] qdev: Drop qdev_realize() support for null bus Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 47/58] sysbus: Convert qdev_set_parent_bus() use with Coccinelle, part 1 Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 48/58] sysbus: Convert qdev_set_parent_bus() use with Coccinelle, part 2 Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 49/58] sysbus: Convert qdev_set_parent_bus() use with Coccinelle, part 3 Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 50/58] sysbus: Convert qdev_set_parent_bus() use with Coccinelle, part 4 Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 51/58] sysbus: sysbus_init_child_obj() is now unused, drop Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 52/58] microbit: Eliminate two local variables in microbit_init() Markus Armbruster
2020-06-10  7:54   ` Philippe Mathieu-Daudé
2020-06-10  5:32 ` [PATCH RESEND v3 53/58] s390x/event-facility: Simplify creation of SCLP event devices Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 54/58] qdev: Make qdev_realize() support bus-less devices Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 55/58] qdev: Use qdev_realize() in qdev_device_add() Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 56/58] qdev: Convert bus-less devices to qdev_realize() with Coccinelle Markus Armbruster
2020-06-10  8:21   ` Philippe Mathieu-Daudé
2020-06-10  9:37     ` Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 57/58] qdev: qdev_init_nofail() is now unused, drop Markus Armbruster
2020-06-10  5:32 ` [PATCH RESEND v3 58/58] MAINTAINERS: Make section QOM cover hw/core/*bus.c as well Markus Armbruster
2020-06-10  5:41 ` [PATCH RESEND v3 00/58] qdev: Rework how we plug into the parent bus Michael S. Tsirkin

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.