qemu/hw/arm
Thomas Huth cf3fccfa8c hw/arm/allwinner-a10: Fix introspection problem with 'allwinner-a10'
Valgrind complains:

echo "{'execute':'qmp_capabilities'} {'execute':'device-list-properties'," \
 "'arguments':{'typename':'allwinner-a10'}}" \
 "{'execute': 'human-monitor-command', " \
 "'arguments': {'command-line': 'info qtree'}}" | \
 valgrind -q aarch64-softmmu/qemu-system-aarch64 -M none,accel=qtest -qmp stdio
[...]
==32519== Invalid read of size 8
==32519==    at 0x61869A: qdev_print (qdev-monitor.c:686)
==32519==    by 0x61869A: qbus_print (qdev-monitor.c:719)
==32519==    by 0x452B38: handle_hmp_command (monitor.c:3446)
[...]

Use object_initialize_child() and sysbus_init_child_obj() to fix the issue.

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-id: 1531745974-17187-15-git-send-email-thuth@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2018-07-17 13:12:49 +01:00
..
allwinner-a10.c hw/arm/allwinner-a10: Fix introspection problem with 'allwinner-a10' 2018-07-17 13:12:49 +01:00
armv7m.c hw/arm/armv7: Fix crash when introspecting the "iotkit" device 2018-07-17 13:12:49 +01:00
aspeed_soc.c aspeed/timer: use the APB frequency from the SCU 2018-06-26 17:50:42 +01:00
aspeed.c aspeed: add the pc9552 chips to the witherspoon machine 2018-06-08 13:15:32 +01:00
bcm2835_peripherals.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
bcm2836.c hw/arm/bcm2836: Fix crash with device_add bcm2837 on unsupported machines 2018-07-17 13:12:49 +01:00
boot.c hw/arm/virt: Silence dtc /memory warning 2018-06-29 15:11:01 +01:00
collie.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02:00
cubieboard.c hw/arm: Set ignore_memory_transaction_failures for most ARM boards 2017-09-07 13:54:54 +01:00
digic_boards.c hw/arm: Set ignore_memory_transaction_failures for most ARM boards 2017-09-07 13:54:54 +01:00
digic.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
exynos4_boards.c hw: add .min_cpus and .default_cpus fields to machine_class 2017-11-13 13:55:27 +00:00
exynos4210.c Remove unnecessary variables for function return value 2018-05-20 08:48:13 +03:00
fsl-imx6.c hw/arm/fsl-imx6: Fix introspection problems with the "fsl, imx6" device 2018-07-17 13:12:49 +01:00
fsl-imx7.c hw/arm/fsl-imx7: Fix introspection problems with the "fsl, imx7" device 2018-07-17 13:12:49 +01:00
fsl-imx25.c hw/arm/fsl-imx25: Fix introspection problem with the "fsl, imx25" device 2018-07-17 13:12:49 +01:00
fsl-imx31.c hw/arm/fsl-imx31: Fix introspection problem with the "fsl, imx31" device 2018-07-17 13:12:49 +01:00
gumstix.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02:00
highbank.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
imx25_pdk.c hw/arm: Set ignore_memory_transaction_failures for most ARM boards 2017-09-07 13:54:54 +01:00
integratorcp.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
iotkit.c hw/arm/armv7: Fix crash when introspecting the "iotkit" device 2018-07-17 13:12:49 +01:00
kzm.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
mainstone.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02:00
Makefile.objs hw/arm/smmuv3: Skeleton 2018-05-04 18:49:10 +01:00
mcimx7d-sabre.c i.mx7d: Remove unused header files 2018-06-29 15:11:16 +01:00
mps2-tz.c hw/arm/mps2-tz.c: Instantiate MPCs 2018-06-22 13:28:41 +01:00
mps2.c Remove checks on MAX_SERIAL_PORTS that are just bounds checks 2018-04-26 13:57:00 +01:00
msf2-soc.c hw/arm/msf2-soc: Fix introspection problem with the "msf2-soc" device 2018-07-17 13:12:49 +01:00
msf2-som.c hw: Directly use "qemu/units.h" instead of "qemu/cutils.h" 2018-07-02 15:41:12 +02:00
musicpal.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
netduino2.c arm: drop intermediate cpu_model -> cpu type parsing and use cpu type directly 2017-09-19 09:09:32 -03:00
nseries.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02:00
omap1.c hw/arm/omap1: Use qemu_log_mask(GUEST_ERROR) instead of fprintf 2018-06-26 17:50:40 +01:00
omap2.c hw: Do not include "sysemu/blockdev.h" if it is not necessary 2018-06-01 14:15:10 +02:00
omap_sx1.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02:00
palm.c Replace all occurances of __FUNCTION__ with __func__ 2018-01-22 09:46:18 +01:00
pxa2xx_gpio.c Replace all occurances of __FUNCTION__ with __func__ 2018-01-22 09:46:18 +01:00
pxa2xx_pic.c Replace all occurances of __FUNCTION__ with __func__ 2018-01-22 09:46:18 +01:00
pxa2xx.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02:00
raspi.c hw/arm/raspi: Don't bother setting default_cpu_type 2018-04-26 11:04:39 +01:00
realview.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
sabrelite.c hw/arm: Set ignore_memory_transaction_failures for most ARM boards 2017-09-07 13:54:54 +01:00
smmu-common.c hw/arm/smmu-common: Fix devfn computation in smmu_iommu_mr 2018-07-09 14:51:34 +01:00
smmu-internal.h hw/arm/smmu-common: VMSAv8-64 page table walk 2018-05-04 18:05:51 +01:00
smmuv3-internal.h hw/arm/smmuv3: Fix translate error handling 2018-06-26 17:50:42 +01:00
smmuv3.c hw/arm/smmuv3: Add notifications on invalidation 2018-06-26 17:50:42 +01:00
spitz.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02:00
stellaris.c hw/arm/stellaris: Use HWADDR_PRIx to display register address 2018-06-26 17:50:41 +01:00
stm32f205_soc.c Remove checks on MAX_SERIAL_PORTS that are just bounds checks 2018-04-26 13:57:00 +01:00
strongarm.c Change references to serial_hds[] to serial_hd() 2018-04-26 13:57:00 +01:00
strongarm.h Move target-* CPU file into a target/ folder 2016-12-20 21:52:12 +01:00
sysbus-fdt.c hw/arm/sysbus-fdt: Replace error_setg(&error_fatal) by error_report() + exit() 2018-06-29 15:11:00 +01:00
tosa.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-03-12 16:12:46 +01:00
trace-events hw/arm/smmuv3: Add notifications on invalidation 2018-06-26 17:50:42 +01:00
versatilepb.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02:00
vexpress.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02:00
virt-acpi-build.c hw/arm/virt: Add a new 256MB ECAM region 2018-06-22 13:28:37 +01:00
virt.c hw/arm/virt: Silence dtc /memory warning 2018-06-29 15:11:01 +01:00
xilinx_zynq.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02:00
xlnx-zcu102.c xlnx-zynqmp: Swap Cortex-R5 for Cortex-R5F 2018-06-22 13:28:38 +01:00
xlnx-zynqmp.c xlnx-zynqmp: Swap Cortex-R5 for Cortex-R5F 2018-06-22 13:28:38 +01:00
z2.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02:00