When a device creates a MemoryRegion without setting its ownership, the MemoryRegion is added to the machine "/unattached" container in the QOM tree.
Add a script to do automatically let the device take the ownership of the memory regions it creates, and run it. Philippe Mathieu-Daudé (7): scripts/coccinelle: Add a script to let devices own their MemoryRegions hw/arm: Let devices own the MemoryRegion they create hw/char: Let devices own the MemoryRegion they create hw/core: Let devices own the MemoryRegion they create hw/display: Let devices own the MemoryRegion they create hw/dma: Let devices own the MemoryRegion they create hw/riscv: Let devices own the MemoryRegion they create hw/arm/exynos4210.c | 14 ++-- hw/arm/fsl-imx25.c | 14 ++-- hw/arm/fsl-imx31.c | 10 +-- hw/arm/fsl-imx6.c | 10 +-- hw/arm/fsl-imx6ul.c | 14 ++-- hw/arm/msf2-soc.c | 8 +- hw/arm/nrf51_soc.c | 2 +- hw/arm/stm32f205_soc.c | 10 +-- hw/arm/stm32f405_soc.c | 13 +-- hw/arm/xlnx-zynqmp.c | 13 ++- hw/char/serial.c | 7 +- hw/core/platform-bus.c | 3 +- hw/display/cg3.c | 4 +- hw/display/g364fb.c | 5 +- hw/display/macfb.c | 4 +- hw/display/vmware_vga.c | 4 +- hw/dma/i8257.c | 2 +- hw/dma/rc4030.c | 4 +- hw/riscv/sifive_e.c | 8 +- hw/riscv/sifive_u.c | 4 +- .../memory_region_owner_nonnull.cocci | 80 +++++++++++++++++++ 21 files changed, 158 insertions(+), 75 deletions(-) create mode 100644 scripts/coccinelle/memory_region_owner_nonnull.cocci -- 2.21.1