qemu-e2k/hw
Luc Michel a6e9b9123e hw/core/qdev-clock: add a reference on aliased clocks
When aliasing a clock with the qdev_alias_clock() function, a new link
property is created on the device aliasing the clock. The link points
to the aliased clock and use the OBJ_PROP_LINK_STRONG flag. This
property is read only since it does not provide a check callback for
modifications.

The object_property_add_link() documentation stats that with
OBJ_PROP_LINK_STRONG properties, the linked object reference count get
decremented when the property is deleted. But it is _not_ incremented on
creation (object_property_add_link() does not actually know the link).

This commit increments the reference count on the aliased clock to
ensure the aliased clock stays alive during the property lifetime, and
to avoid a double-free memory error when the property gets deleted.

Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Luc Michel <luc@lmichel.fr>
Message-Id: <20201020091024.320381-1-luc@lmichel.fr>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-10-22 11:53:53 -04:00
..
9pfs 9pfs: suppress performance warnings on qtest runs 2020-10-19 14:25:40 +02:00
acpi acpi: add aml builder stubs 2020-10-21 11:36:19 +02:00
adc
alpha
arm hw/arm/nseries: Fix loading kernel image on n8x0 machines 2020-10-20 16:12:01 +01:00
audio
avr
block hw/block/nvme: Simplify timestamp sum 2020-10-13 13:33:45 +02:00
char hw/char/serial: remove duplicate .class_init in serial_mm_info 2020-10-13 13:33:46 +02:00
core hw/core/qdev-clock: add a reference on aliased clocks 2020-10-22 11:53:53 -04:00
cpu
cris
display vga-pci: Register "big-endian-framebuffer" as class property 2020-10-13 15:56:30 -04:00
dma
gpio
hppa
hyperv
i2c microbit_i2c: Fix coredump when dump-vmstate 2020-10-20 16:12:00 +01:00
i386 microvm: fix PCIe IRQs in APIC table. 2020-10-21 21:45:46 +01:00
ide hw/ide: restore replay support of IDE 2020-10-09 17:27:55 +01:00
input
intc hw/intc/bcm2836_control: Use IRQ definitions instead of magic numbers 2020-10-20 16:12:00 +01:00
ipack
ipmi
isa x86: ich9: expose "smi_negotiated_features" as a QOM property 2020-09-29 02:15:24 -04:00
lm32
m68k
mem
microblaze
mips hw/mips: Remove exit(1) in case of missing ROM 2020-10-17 13:59:40 +02:00
misc macio: don't reference serial_hd() directly within the device 2020-10-18 16:21:42 +01:00
moxie
net qdev: add "check if address free" callback for buses 2020-10-12 11:50:50 -04:00
nios2
nubus
nvram hw/nvram: Always register FW_CFG_DATA_GENERATOR_INTERFACE 2020-10-12 11:50:20 -04:00
openrisc
pci hw/pci: Fix typo in PCI hot-plug error message 2020-10-13 13:33:45 +02:00
pci-bridge
pci-host uninorth: use qdev gpios for PCI IRQs 2020-10-18 16:21:42 +01:00
pcmcia
ppc mac_oldworld: Change PCI address of macio to match real hardware 2020-10-19 08:11:21 +01:00
rdma
riscv
rtc m48t59: remove legacy m48t59_init() function 2020-10-18 16:21:42 +01:00
rx
s390x error: Use error_fatal to simplify obvious fatal errors (again) 2020-10-09 08:36:23 +02:00
scsi scsi/scsi_bus: fix races in REPORT LUNS 2020-10-12 11:50:51 -04:00
sd hw/sd/sdcard: Assert if accessing an illegal group 2020-10-21 13:34:27 +02:00
semihosting
sh4
smbios hw/smbios: report error if table size is too large 2020-09-29 02:15:24 -04:00
sparc sun4m: use qdev properties instead of legacy m48t59_init() function 2020-10-18 16:21:42 +01:00
sparc64 sun4u: use qdev properties instead of legacy m48t59_init() function 2020-10-18 16:21:42 +01:00
ssi hw/ssi/npcm7xx_fiu: Fix handling of unsigned integer 2020-10-08 15:24:32 +01:00
timer hw/timer/bcm2835: Support the timer COMPARE registers 2020-10-20 16:12:00 +01:00
tpm
tricore
unicore32
usb usb/xhci: fixup xhci kconfig deps 2020-10-21 11:36:19 +02:00
vfio vfio-ccw: plug memory leak while getting region info 2020-10-02 13:52:49 +02:00
virtio Error reporting patches for 2020-10-09 2020-10-09 14:47:45 +01:00
watchdog
xen xen-bus: reduce scope of backend watch 2020-10-19 16:32:41 +01:00
xenpv
xtensa
Kconfig
meson.build