]> git.ipfire.org Git - thirdparty/qemu.git/commitdiff
Merge tag 'qom-tests-pr-v2' of https://gitlab.com/marcandre.lureau/qemu into staging master staging
authorStefan Hajnoczi <stefanha@redhat.com>
Sat, 6 Jun 2026 18:47:04 +0000 (14:47 -0400)
committerStefan Hajnoczi <stefanha@redhat.com>
Sat, 6 Jun 2026 18:47:04 +0000 (14:47 -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.

# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCgAdFiEEh6m9kz+HxgbSdvYt2ujhCXWWnOUFAmojrOsACgkQ2ujhCXWW
# nOUHSg/9EvbthHQZb0b9uKHoGrR9xCc2eGY/xnR6cNzl0jUvOQ9Hnqzm54Wmxw4s
# S5vql/3AISgYVl8ScTv5YZlwrXLCIM7FYCCbMIR4gcCjNfEBuxF3zmMQZSLdVFVx
# gUZ0d07sWVsT+jtPoehloWJAnIjsFDA/BlVFusN4MLtfmCRJV7QSbXsI3aN2mgZT
# vq2j8Ia8atRxf3mxkfKZwarTAz9tzIlHOD87gkHZJFv2lJfx2PgC9j5xmd8O5uXV
# cWZsZQldopa+hlZOGi++SfwbnFmYLHYPiVr/ZgM+gdMOrFaQxx1+SIrw8HDYLDK+
# o3I4YpE/sTUJoBMl9BA6nUJzxPlg1akziMUoI5us2uXUsU+QQvEL8zgpMYmqz4BW
# 5jhweo9SG7ZMQ21U4QLTX94HC/uPoq0WeBJuY+dHf57SApBdhMjq4l+pwTeUwk5c
# nGO4gT0aPSsjscYsJqpZeOXGLgjlvO/Lv7+2DpoP0mLWYy6CLHg/RuFGIG7IPlIu
# J17bSkD+g5HNBUCgABExqd+6FgfPHOPqlOYHTh93juYDvrrztLjevTZpgLzfMzi+
# qnBlx/688QCjp00wgGGjYY8afBFhGTn5Okm64F1KVmd0rzdCLQuVhLdV1zn31jwF
# 39EfdkguGr800AFKYaYOTfuPNzWSwH04m4c0EXZYfxg7/LBplzc=
# =8fwy
# -----END PGP SIGNATURE-----
# gpg: Signature made Sat 06 Jun 2026 01:15:23 EDT
# gpg:                using RSA key 87A9BD933F87C606D276F62DDAE8E10975969CE5
# gpg: Good signature from "Marc-AndrĂ© Lureau <marcandre.lureau@redhat.com>" [full]
# gpg:                 aka "Marc-AndrĂ© Lureau <marcandre.lureau@gmail.com>" [full]
# Primary key fingerprint: 87A9 BD93 3F87 C606 D276  F62D DAE8 E109 7596 9CE5

* tag 'qom-tests-pr-v2' of https://gitlab.com/marcandre.lureau/qemu: (23 commits)
  qtest: add "qom-tests" command
  hw/i2c/pmbus: fix undefined behavior in pmbus_direct_mode2data
  target/riscv: use hash table as set for user_options
  target/riscv: fix general_user_opts hash table leak
  hw/ppc/spapr: free host_model and host_serial on finalization
  hw/loongarch/virt: free flash devices and OEM strings on finalization
  hw/tpm: free PPI buffer on finalization
  hw/i386/pc: free pcspk on finalization
  hw/i386/nitro_enclave: add instance finalize
  target/i386/kvm/tdx: free strings in tdx_guest_finalize
  target/i386/sev: add finalize functions and fix leaking setters
  net/filter: free old values in property setters
  hw/core/machine: free shim_filename on finalization
  system/ioport: minor code simplification
  backends/cryptodev-lkcf: skip cleanup when not initialized
  hw/intc/apic: move checks to realize()
  hw/xlnx_dp: reject NULL 'dpdma' property rather than crash
  hw/ipmi: reject NULL 'bmc' property rather than crash
  hw/pci-host/q35: handle NULL bus in pci-hole64 getters
  hw/pci-host/i440fx: handle NULL bus in pci-hole64 getters
  ...

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>

Trivial merge