[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