[PULL 00/56] Misc HW patches for 2026-08-16

Philippe Mathieu-Daudé <[email protected]>
Newsgroups org.nongnu.qemu-devel
Message-ID <[email protected]>
The following changes since commit af06b5df2610fe5de6c02d17c17bced9e9f0d47d:

  Merge tag 'qom-qdev-20260814' of https://gitlab.com/mcayland-ntx/qemu into staging (2026-08-14 08:44:51 -0700)

are available in the Git repository at:

  https://github.com/philmd/qemu.git tags/hw-misc-20260816

for you to fetch changes up to b409523587c49a08b1ddadd51212a320092347b1:

  hw/core/machine: Move EHCI migration compat properties to 11.1 (2026-08-16 16:35:27 +0200)

----------------------------------------------------------------
Misc HW and Monitor patch queue

- Bug fixes

 . Reinstate x86/pc 'xenfv' machine alias
 . Defend against malformed ELF headers to prevent underflows
 . Restore ROMD mode after migration for Intel PFlash (CFI01)
 . Fix VLAN tag handling on incoming packets on RTL8139 model

- Refactoring (Monitor, common CPU, NMI)

 . Add missing inclusions and remove unnecessary ones
 . Use qdev_is_realized() consistently (no direct field access)
 . Remove deprecated DEFINE_PROP_DMAADDR() macro
 . Renaming churn around cpu_{exec,common}* helpers
 . Simplify NMI API hanlding
 . Move QMP handlers (physmem, nmi) to appropriate subsystems
 . Replace container_of() casts with HMP typed accessors
 . Rename @mon to @hmp in MonitorHMP for clarity

----------------------------------------------------------------

Akihiko Odaki (13):
  qdev: Make qdev_is_realized() take a const DeviceState *
  hw/hyperv/balloon: Use qdev_is_realized()
  hw/intc/apic: Use qdev_is_realized()
  hw/mem/memory-device: Use qdev_is_realized()
  hw/mem/pc-dimm: Use qdev_is_realized()
  hw/nvram: Use qdev_is_realized()
  hw/ppc/pnv_xscom: Use qdev_is_realized()
  hw/vfio: Use qdev_is_realized()
  hw/virtio/virtio-mem: Use qdev_is_realized()
  hw/virtio/virtio-qmp: Use qdev_is_realized()
  target/i386/cpu: Use qdev_is_realized()
  target/s390x: Use qdev_is_realized()
  hw/qdev: Parent device before setting parent bus

Alex Bennée (1):
  hw/elf_ops: defend against weird elf headers

Bin Guo (1):
  hw/block/pflash_cfi01: Restore ROMD mode after migration

Dario Faggioli (1):
  hw/i386/pc: xen: reinstate the "xenfv" machine alias

Jamin Lin (1):
  hw/core/machine: Move EHCI migration compat properties to 11.1

Marc-André Lureau (1):
  hw/mem/nvdimm: fix "size" property typename

Peter Maydell (2):
  hw/net/rtl8139: Fix handling of VLAN tags on incoming short packets
  hw/net/rtl8139: Send whole of vlan-tagged packet when doing loopback

Philippe Mathieu-Daudé (35):
  hw/qdev: Remove DEFINE_PROP_DMAADDR() and 'hw/qdev-dma.h'
  hw/cpu: Correct CPU_GET_CLASS() comment
  hw/cpu: Include missing 'qemu/accel.h' header
  hw/cpu: Move internal declarations to new 'cpu-internal.h' header
  hw/cpu: Rename cpu_common_realizefn() -> cpu_exec_realize()
  hw/cpu: Rename cpu_exec_realizefn() -> cpu_common_realize()
  hw/cpu: Rename cpu_exec_unrealizefn() -> cpu_common_unrealize()
  hw/cpu: Extract cpu_exec_realize() out of cpu_common_realizefn()
  hw/cpu: Move system-specific cpu_exec_realize() to cpu-system.c
  hw/nmi: Use object_child_foreach_recursive() in nmi_children()
  hw/s390x/virtio-ccw: Always inject NMI to first CPU
  hw/nmi: Remove @cpu_index argument from
    NMIClass::nmi_monitor_handler()
  hw/nmi: Remove @cpu_index argument from nmi_inject()
  hw/nmi: Rename nmi_monitor_handler() -> raise_nmi()
  hw/nmi: Remove unused @errp argument from raise_nmi()
  hw/nmi: Raise NMI line only once
  hexagon: Remove unnecessary 'monitor/monitor.h' header
  net/vhost-vdpa: Include missing 'qemu/iov.h' header
  tests/unit: Include 'qemu/main-loop.h' header in test-util-sockets.c
  qapi/qmp-dispatch: Include 'qemu/aio-wait.h' and 'monitor/monitor.h'
  qapi/qmp-registry: Remove unnecessary 'monitor/monitor.h' header
  migration/hmp-cmds: Include 'block/block-global-state.h' header
  monitor: Include missing 'qemu/aio-wait.h' header
  monitor: Include missing 'qemu/lockable.h' header
  monitor: Include missing 'qemu/coroutine-core.h' header
  monitor: Reduce inclusion of 'qapi/qapi-emit-events.h' header
  monitor: Remove unnecessary 'block/block.h' header
  system: Remove unnecessary 'monitor/monitor.h' header
  system/dirtylimit: Extract HMP code to dirtylimit-hmp-cmds.c
  system: Move qmp_inject_nmi() to hw/core/machine-qmp-cmds.c
  system: Extract QMP memsave/pmemsave commands to physmem-qmp-cmds.c
  system: Move runstate-related code from cpus.c to runstate.c
  monitor: Rename MonitorHMP @mon -> @hmp
  monitor: Better express monitor_read()'s opaque arg is of Monitor type
  monitor: Replace container_of(MonitorHMP, parent_obj) -> MONITOR_HMP()

Stefan Hajnoczi (1):
  hw/nvme: add SPDM_SOCKET Kconfig dependency

 MAINTAINERS                      |   3 +
 qapi/machine.json                |   7 +-
 qapi/run-state.json              |   6 +-
 hw/core/cpu-internal.h           |  23 +++
 include/hw/core/cpu.h            |  15 +-
 include/hw/core/nmi.h            |  33 +++-
 include/hw/core/qdev-dma.h       |  16 --
 include/hw/core/qdev.h           |   2 +-
 include/hw/hexagon/hexagon_tlb.h |   2 +-
 include/monitor/monitor.h        |   7 +-
 include/qapi/qmp-registry.h      |   1 -
 monitor/monitor-internal.h       |   3 +-
 target/hexagon/hex_mmu.h         |   3 +-
 include/hw/elf_ops.h.inc         |   5 +
 hw/block/pflash_cfi01.c          |  10 ++
 hw/core/cpu-common.c             |  32 +---
 hw/core/cpu-system.c             |  30 +++-
 hw/core/cpu-user.c               |   8 +-
 hw/core/machine-qmp-cmds.c       |   6 +
 hw/core/machine.c                |   7 +-
 hw/core/nmi.c                    |  48 ++----
 hw/core/qdev.c                   |  51 ++++---
 hw/hppa/machine.c                |   4 +-
 hw/hyperv/hv-balloon.c           |   2 +-
 hw/i386/pc_piix.c                |   1 +
 hw/i386/x86.c                    |   4 +-
 hw/intc/apic_common.c            |   2 +-
 hw/intc/m68k_irqc.c              |   4 +-
 hw/ipmi/ipmi.c                   |   3 +-
 hw/m68k/q800-glue.c              |   4 +-
 hw/mem/memory-device.c           |   4 +-
 hw/mem/nvdimm.c                  |   2 +-
 hw/mem/pc-dimm.c                 |   2 +-
 hw/misc/macio/gpio.c             |   4 +-
 hw/net/rtl8139.c                 |   6 +-
 hw/nvram/xlnx-bbram.c            |   2 +-
 hw/nvram/xlnx-efuse.c            |   2 +-
 hw/ppc/pnv.c                     |   4 +-
 hw/ppc/pnv_xscom.c               |   2 +-
 hw/ppc/spapr.c                   |   4 +-
 hw/s390x/s390-virtio-ccw.c       |   8 +-
 hw/usb/hcd-ohci-pci.c            |   1 -
 hw/usb/hcd-ohci-sysbus.c         |   3 +-
 hw/usb/hcd-ohci.c                |   1 -
 hw/vfio/container-legacy.c       |   4 +-
 hw/vfio/device.c                 |   4 +-
 hw/vfio/iommufd.c                |   2 +-
 hw/virtio/virtio-mem.c           |   4 +-
 hw/virtio/virtio-qmp.c           |   4 +-
 hw/watchdog/watchdog.c           |   2 +-
 migration/migration-hmp-cmds.c   |   1 +
 monitor/fds.c                    |   1 +
 monitor/hmp-cmds.c               |   6 +-
 monitor/hmp.c                    | 136 ++++++++---------
 monitor/monitor.c                |   2 +
 monitor/qmp.c                    |   3 +-
 net/vhost-vdpa.c                 |   1 +
 qapi/qmp-dispatch.c              |   2 +
 system/cpus.c                    | 248 -------------------------------
 system/device_tree.c             |   1 -
 system/dirtylimit-hmp-cmds.c     |  74 +++++++++
 system/dirtylimit.c              |  60 --------
 system/physmem-qmp-cmds.c        | 107 +++++++++++++
 system/physmem.c                 |   2 -
 system/runstate.c                | 154 +++++++++++++++++++
 target/alpha/cpu.c               |   2 +-
 target/arm/cpu.c                 |   2 +-
 target/avr/cpu.c                 |   2 +-
 target/hexagon/cpu.c             |   2 +-
 target/hppa/cpu.c                |   2 +-
 target/i386/cpu.c                |  12 +-
 target/i386/kvm/kvm-cpu.c        |   4 +-
 target/loongarch/cpu.c           |   2 +-
 target/m68k/cpu.c                |   2 +-
 target/microblaze/cpu.c          |   2 +-
 target/mips/cpu.c                |   2 +-
 target/or1k/cpu.c                |   2 +-
 target/ppc/cpu_init.c            |   4 +-
 target/riscv/cpu.c               |   2 +-
 target/riscv/kvm/kvm-cpu.c       |   2 +-
 target/riscv/tcg/tcg-cpu.c       |   2 +-
 target/rx/cpu.c                  |   2 +-
 target/s390x/cpu.c               |   2 +-
 target/s390x/cpu_models.c        |   4 +-
 target/sh4/cpu.c                 |   2 +-
 target/sparc/cpu.c               |   2 +-
 target/tricore/cpu.c             |   2 +-
 target/xtensa/cpu.c              |   2 +-
 tests/unit/test-qdev.c           |  13 ++
 tests/unit/test-util-sockets.c   |   1 +
 ui/ui-hmp-cmds.c                 |   6 +-
 hmp-commands.hx                  |   7 +-
 hw/nvme/Kconfig                  |   1 +
 system/meson.build               |   2 +
 94 files changed, 702 insertions(+), 595 deletions(-)
 create mode 100644 hw/core/cpu-internal.h
 delete mode 100644 include/hw/core/qdev-dma.h
 create mode 100644 system/dirtylimit-hmp-cmds.c
 create mode 100644 system/physmem-qmp-cmds.c

-- 
2.53.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.