Commit 3390aba56c for qemu.org

commit 3390aba56c354637eccd2d5ab5fd6efc2f026f06
Merge: e5c544f62a f741225073
Author: Stefan Hajnoczi <stefanha@redhat.com>
Date:   Sat Jun 6 14:47:04 2026 -0400

    Merge tag 'qom-tests-pr-v2' of https://gitlab.com/marcandre.lureau/qemu into staging

    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>