[PATCH v2 00/24] Fixes around device realization

Markus Armbruster posted 24 patches 5 years, 5 months ago
Test docker-mingw@fedora passed
Test checkpatch passed
Test asan passed
Test docker-quick@centos7 passed
Test FreeBSD passed
Failed in applying to current master (apply log)
There is a newer version of this series
include/hw/arm/aspeed.h     |  6 ++++++
include/hw/arm/aspeed_soc.h |  1 -
include/hw/ppc/pnv_psi.h    |  2 +-
include/hw/riscv/sifive_e.h |  2 +-
include/hw/riscv/sifive_u.h |  2 +-
hw/arm/armv7m.c             |  6 ++++--
hw/arm/aspeed.c             | 42 ++++++++++++++++++++++++++++++++-----
hw/arm/aspeed_ast2600.c     | 23 +++++++-------------
hw/arm/aspeed_soc.c         | 12 ++---------
hw/arm/stm32f405_soc.c      | 23 +++++++++++---------
hw/core/qdev.c              | 19 +++++++++++++++++
hw/display/ati.c            |  2 ++
hw/display/sm501.c          |  2 ++
hw/display/xlnx_dp.c        |  4 ++++
hw/misc/auxbus.c            |  2 +-
hw/misc/mac_via.c           |  5 +++++
hw/misc/macio/cuda.c        | 10 ++++-----
hw/misc/macio/macio.c       |  7 +++++--
hw/misc/macio/pmu.c         | 10 ++++-----
hw/pci-host/pnv_phb4_pec.c  |  3 +++
hw/ppc/pnv.c                |  6 +++---
hw/ppc/pnv_psi.c            |  2 +-
hw/ppc/ppc440_uc.c          |  2 --
hw/riscv/sifive_e.c         |  5 ++---
hw/riscv/sifive_u.c         | 14 ++++++-------
hw/riscv/spike.c            | 12 +++++------
hw/riscv/virt.c             |  4 ++--
hw/sd/pxa2xx_mmci.c         |  1 +
hw/sd/sd.c                  | 40 ++++++++++++++++++++++++-----------
hw/sparc/leon3.c            |  4 ++--
MAINTAINERS                 |  2 ++
31 files changed, 177 insertions(+), 98 deletions(-)
[PATCH v2 00/24] Fixes around device realization
Posted by Markus Armbruster 5 years, 5 months ago
This fixes a bunch of bugs I ran into while reworking how qdevs plug
into buses.

I instrumented the code a bit to flush out instances of bug patterns.
I posted these hacks separately as '[PATCH not-for-merge 0/5]
Instrumentation for "Fixes around device realization"'.  PATCH 2/5
since became "[PATCH 0/2] qom: Make "info qom-tree" show children
sorted".  It should be applied first.

v2:
* Rebased
* PATCH 01: Also fix MMIO addresses, with Alistair's help
* PATCH 04+05: Replaced by better patches from Cédric
* PATCH 01-03+06+08-11+18: Commit messages improved [Peter, Paolo]
* PATCH 08+09+18: Avoid qdev_init_nofail() [Peter]
* PATCH 22: Assertion simplified

Based-on: Message-Id: <20200527084754.7531-1-armbru@redhat.com>

Cédric Le Goater (2):
  arm/aspeed: Compute the number of CPUs from the SoC definition
  arm/aspeed: Rework NIC attachment

Markus Armbruster (22):
  arm/stm32f405: Fix realization of "stm32f2xx-adc" devices
  display/xlnx_dp: Fix to realize "i2c-ddc" and "aux-to-i2c-bridge"
  sd/pxa2xx_mmci: Fix to realize "pxa2xx-mmci" device
  armv7m: Delete unused "ARM,bitband-memory" devices
  auxbus: Fix aux-to-i2c-bridge to be a subtype of aux-slave
  mac_via: Fix to realize "mos6522-q800-via*" devices
  macio: Fix to realize "mos6522-cuda" and "mos6522-pmu" devices
  macio: Delete unused "macio-gpio" devices
  pnv/phb4: Delete unused "pnv-phb4-pec-stack" devices
  MAINTAINERS: Make section PowerNV cover pci-host/pnv* as well
  ppc4xx: Drop redundant device realization
  macio: Put "macio-nvram" device on the macio bus
  macio: Fix macio-bus to be a subtype of System bus
  ppc/pnv: Put "*-pnv-chip" and "pnv-xive" on the main system bus
  pnv/psi: Correct the pnv-psi* devices not to be sysbus devices
  display/sm501 display/ati: Fix to realize "i2c-ddc"
  riscv: Fix to put "riscv.hart_array" devices on sysbus
  riscv: Fix type of SiFive[EU]SocState, member parent_obj
  sparc/leon3: Fix to put grlib,* devices on sysbus
  qdev: Assert devices are plugged into a bus that can take them
  sd: Hide the qdev-but-not-quite thing created by sd_init()
  qdev: Assert onboard devices all get realized properly

 include/hw/arm/aspeed.h     |  6 ++++++
 include/hw/arm/aspeed_soc.h |  1 -
 include/hw/ppc/pnv_psi.h    |  2 +-
 include/hw/riscv/sifive_e.h |  2 +-
 include/hw/riscv/sifive_u.h |  2 +-
 hw/arm/armv7m.c             |  6 ++++--
 hw/arm/aspeed.c             | 42 ++++++++++++++++++++++++++++++++-----
 hw/arm/aspeed_ast2600.c     | 23 +++++++-------------
 hw/arm/aspeed_soc.c         | 12 ++---------
 hw/arm/stm32f405_soc.c      | 23 +++++++++++---------
 hw/core/qdev.c              | 19 +++++++++++++++++
 hw/display/ati.c            |  2 ++
 hw/display/sm501.c          |  2 ++
 hw/display/xlnx_dp.c        |  4 ++++
 hw/misc/auxbus.c            |  2 +-
 hw/misc/mac_via.c           |  5 +++++
 hw/misc/macio/cuda.c        | 10 ++++-----
 hw/misc/macio/macio.c       |  7 +++++--
 hw/misc/macio/pmu.c         | 10 ++++-----
 hw/pci-host/pnv_phb4_pec.c  |  3 +++
 hw/ppc/pnv.c                |  6 +++---
 hw/ppc/pnv_psi.c            |  2 +-
 hw/ppc/ppc440_uc.c          |  2 --
 hw/riscv/sifive_e.c         |  5 ++---
 hw/riscv/sifive_u.c         | 14 ++++++-------
 hw/riscv/spike.c            | 12 +++++------
 hw/riscv/virt.c             |  4 ++--
 hw/sd/pxa2xx_mmci.c         |  1 +
 hw/sd/sd.c                  | 40 ++++++++++++++++++++++++-----------
 hw/sparc/leon3.c            |  4 ++--
 MAINTAINERS                 |  2 ++
 31 files changed, 177 insertions(+), 98 deletions(-)

-- 
2.21.3


Re: [PATCH v2 00/24] Fixes around device realization
Posted by Markus Armbruster 5 years, 5 months ago
Needs a rebase now.

Paolo, would you like me to post the pull requests for my recent QOM
work myself?


Re: [PATCH v2 00/24] Fixes around device realization
Posted by Paolo Bonzini 5 years, 5 months ago
Yes please, my next pull request is already at 120 patches...

Paolo

Il ven 5 giu 2020, 17:01 Markus Armbruster <armbru@redhat.com> ha scritto:

> Needs a rebase now.
>
> Paolo, would you like me to post the pull requests for my recent QOM
> work myself?
>
>
Re: [PATCH v2 00/24] Fixes around device realization
Posted by Markus Armbruster 5 years, 5 months ago
Markus Armbruster <armbru@redhat.com> writes:

> This fixes a bunch of bugs I ran into while reworking how qdevs plug
> into buses.
>
> I instrumented the code a bit to flush out instances of bug patterns.
> I posted these hacks separately as '[PATCH not-for-merge 0/5]
> Instrumentation for "Fixes around device realization"'.  PATCH 2/5
> since became "[PATCH 0/2] qom: Make "info qom-tree" show children
> sorted".  It should be applied first.
>
> v2:
> * Rebased
> * PATCH 01: Also fix MMIO addresses, with Alistair's help
> * PATCH 04+05: Replaced by better patches from Cédric
> * PATCH 01-03+06+08-11+18: Commit messages improved [Peter, Paolo]
> * PATCH 08+09+18: Avoid qdev_init_nofail() [Peter]
> * PATCH 22: Assertion simplified
>
> Based-on: Message-Id: <20200527084754.7531-1-armbru@redhat.com>

Peter, you commented on v1 of PATCH 06 and 09.  Please review v2.

Mark, you commented on v1 of PATCH 10.  Please review v2.

PATCH 18 needs review.  Philippe, perhaps?


Re: [PATCH v2 00/24] Fixes around device realization
Posted by Mark Cave-Ayland 5 years, 5 months ago
On 08/06/2020 12:08, Markus Armbruster wrote:

> Markus Armbruster <armbru@redhat.com> writes:
> 
>> This fixes a bunch of bugs I ran into while reworking how qdevs plug
>> into buses.
>>
>> I instrumented the code a bit to flush out instances of bug patterns.
>> I posted these hacks separately as '[PATCH not-for-merge 0/5]
>> Instrumentation for "Fixes around device realization"'.  PATCH 2/5
>> since became "[PATCH 0/2] qom: Make "info qom-tree" show children
>> sorted".  It should be applied first.
>>
>> v2:
>> * Rebased
>> * PATCH 01: Also fix MMIO addresses, with Alistair's help
>> * PATCH 04+05: Replaced by better patches from Cédric
>> * PATCH 01-03+06+08-11+18: Commit messages improved [Peter, Paolo]
>> * PATCH 08+09+18: Avoid qdev_init_nofail() [Peter]
>> * PATCH 22: Assertion simplified
>>
>> Based-on: Message-Id: <20200527084754.7531-1-armbru@redhat.com>
> 
> Peter, you commented on v1 of PATCH 06 and 09.  Please review v2.
> 
> Mark, you commented on v1 of PATCH 10.  Please review v2.
> 
> PATCH 18 needs review.  Philippe, perhaps?

Will do. It has been sat on my TODO list for a while, so I'll quickly have a look now.


ATB,

Mark.