All of lore.kernel.org
 help / color / mirror / Atom feed
* [GIT PULL v2 00/23] Fix various QOM object life-cycle issues
@ 2026-06-06  5:15 Marc-André Lureau
  2026-06-06  5:15 ` [GIT PULL v2 01/23] hw/pci: handle missing bus in prop_pci_busnr_get Marc-André Lureau
                   ` (23 more replies)
  0 siblings, 24 replies; 25+ messages in thread
From: Marc-André Lureau @ 2026-06-06  5:15 UTC (permalink / raw)
  To: qemu-devel; +Cc: stefanha

The following changes since commit 29c042c6e9d4a09d4a0ac3fa54aeb7ee08ce0bdc:

  lcitool: remove Cirrus CI support (2026-06-03 12:45:38 -0400)

are available in the Git repository at:

  https://gitlab.com/marcandre.lureau/qemu.git tags/qom-tests-pr-v2

for you to fetch changes up to f74122507380ee53170c5b62e733bc247a76b4be:

  qtest: add "qom-tests" command (2026-06-06 09:15:23 +0400)

----------------------------------------------------------------
Fix various QOM object life-cycle issues

This series adds a new "qom-tests" qtest command that exercises basic QOM
object life-cycle: it instantiates all non-abstract object types, gets/sets
their properties, and unrefs them. This quickly surfaces leaks and crashes
that could otherwise be triggered at runtime via QMP qom commands.

----------------------------------------------------------------
Marc-André Lureau (23):
      hw/pci: handle missing bus in prop_pci_busnr_get
      chardev/char-socket: handle NULL addr in char_socket_get_addr
      hw/pci-bridge: handle missing parent in prop_pxb_uid_get
      hw/pci-host/i440fx: handle NULL bus in pci-hole64 getters
      hw/pci-host/q35: handle NULL bus in pci-hole64 getters
      hw/ipmi: reject NULL 'bmc' property rather than crash
      hw/xlnx_dp: reject NULL 'dpdma' property rather than crash
      hw/intc/apic: move checks to realize()
      backends/cryptodev-lkcf: skip cleanup when not initialized
      system/ioport: minor code simplification
      hw/core/machine: free shim_filename on finalization
      net/filter: free old values in property setters
      target/i386/sev: add finalize functions and fix leaking setters
      target/i386/kvm/tdx: free strings in tdx_guest_finalize
      hw/i386/nitro_enclave: add instance finalize
      hw/i386/pc: free pcspk on finalization
      hw/tpm: free PPI buffer on finalization
      hw/loongarch/virt: free flash devices and OEM strings on finalization
      hw/ppc/spapr: free host_model and host_serial on finalization
      target/riscv: fix general_user_opts hash table leak
      target/riscv: use hash table as set for user_options
      hw/i2c/pmbus: fix undefined behavior in pmbus_direct_mode2data
      qtest: add "qom-tests" command

 target/riscv/cpu.h                  |  3 ++-
 tests/qtest/libqtest.h              |  8 ++++++
 backends/cryptodev-lkcf.c           |  4 +++
 chardev/char-socket.c               |  4 +++
 hw/core/machine.c                   |  1 +
 hw/display/xlnx_dp.c                |  6 +++++
 hw/i2c/pmbus_device.c               |  6 +++--
 hw/i386/nitro_enclave.c             | 11 ++++++++
 hw/i386/pc.c                        | 10 +++++++
 hw/intc/apic_common.c               | 23 +++++++++-------
 hw/ipmi/ipmi.c                      |  8 +++++-
 hw/loongarch/virt.c                 | 14 ++++++++++
 hw/pci-bridge/pci_expander_bridge.c |  8 +++++-
 hw/pci-host/i440fx.c                | 15 +++++++++--
 hw/pci-host/q35.c                   | 15 +++++++++--
 hw/pci/pci.c                        | 11 ++++++--
 hw/ppc/spapr.c                      |  2 ++
 hw/tpm/tpm_tis_sysbus.c             |  9 +++++++
 net/filter.c                        |  2 ++
 system/ioport.c                     |  3 +--
 system/qtest.c                      | 46 ++++++++++++++++++++++++++++++++
 target/i386/cpu-apic.c              |  6 +----
 target/i386/kvm/tdx.c               |  5 ++++
 target/i386/sev.c                   | 37 ++++++++++++++++++++++++++
 target/riscv/cpu.c                  | 53 ++++++++++++++++++++++---------------
 target/riscv/kvm/kvm-cpu.c          |  8 +++---
 tests/qtest/libqtest.c              |  6 +++++
 tests/qtest/qom-test.c              | 12 +++++++++
 28 files changed, 282 insertions(+), 54 deletions(-)



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

end of thread, other threads:[~2026-06-06 22:11 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-06  5:15 [GIT PULL v2 00/23] Fix various QOM object life-cycle issues Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 01/23] hw/pci: handle missing bus in prop_pci_busnr_get Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 02/23] chardev/char-socket: handle NULL addr in char_socket_get_addr Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 03/23] hw/pci-bridge: handle missing parent in prop_pxb_uid_get Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 04/23] hw/pci-host/i440fx: handle NULL bus in pci-hole64 getters Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 05/23] hw/pci-host/q35: " Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 06/23] hw/ipmi: reject NULL 'bmc' property rather than crash Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 07/23] hw/xlnx_dp: reject NULL 'dpdma' " Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 08/23] hw/intc/apic: move checks to realize() Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 09/23] backends/cryptodev-lkcf: skip cleanup when not initialized Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 10/23] system/ioport: minor code simplification Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 11/23] hw/core/machine: free shim_filename on finalization Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 12/23] net/filter: free old values in property setters Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 13/23] target/i386/sev: add finalize functions and fix leaking setters Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 14/23] target/i386/kvm/tdx: free strings in tdx_guest_finalize Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 15/23] hw/i386/nitro_enclave: add instance finalize Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 16/23] hw/i386/pc: free pcspk on finalization Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 17/23] hw/tpm: free PPI buffer " Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 18/23] hw/loongarch/virt: free flash devices and OEM strings " Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 19/23] hw/ppc/spapr: free host_model and host_serial " Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 20/23] target/riscv: fix general_user_opts hash table leak Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 21/23] target/riscv: use hash table as set for user_options Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 22/23] hw/i2c/pmbus: fix undefined behavior in pmbus_direct_mode2data Marc-André Lureau
2026-06-06  5:15 ` [GIT PULL v2 23/23] qtest: add "qom-tests" command Marc-André Lureau
2026-06-06 22:10 ` [GIT PULL v2 00/23] Fix various QOM object life-cycle issues Stefan Hajnoczi

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.