[PATCH v2 00/58] qom: Automated conversion of type checking boilerplate

Eduardo Habkost posted 58 patches 3 years, 8 months ago
Test docker-quick@centos7 failed
Test docker-mingw@fedora failed
Test checkpatch failed
Test FreeBSD passed
Failed in applying to current master (apply log)
There is a newer version of this series
.../codeconverter/codeconverter/__init__.py   |   0
.../codeconverter/codeconverter/patching.py   | 381 +++++++++++
.../codeconverter/codeconverter/qom_macros.py | 628 ++++++++++++++++++
.../codeconverter/qom_type_info.py            | 314 +++++++++
.../codeconverter/codeconverter/regexps.py    |  89 +++
.../codeconverter/test_patching.py            |  98 +++
.../codeconverter/test_regexps.py             | 272 ++++++++
scripts/codeconverter/codeconverter/utils.py  |  65 ++
scripts/codeconverter/converter.py            | 113 ++++
chardev/chardev-internal.h                    |   8 +-
hw/9pfs/virtio-9p.h                           |  11 +-
hw/audio/intel-hda.h                          |  20 +-
hw/avr/atmega.h                               |   9 +-
hw/block/nvme.h                               |  10 +-
hw/display/ati_int.h                          |   9 +-
hw/display/qxl.h                              |   9 +-
hw/display/virtio-vga.h                       |  17 +-
hw/i386/amd_iommu.h                           |  10 +-
hw/ide/ahci_internal.h                        |   5 -
hw/misc/tmp105.h                              |   9 +-
hw/net/fsl_etsec/etsec.h                      |  10 +-
hw/net/rocker/rocker.h                        |   7 +-
hw/net/tulip.h                                |   5 +-
hw/net/vmxnet3_defs.h                         |   9 +-
hw/ppc/e500-ccsr.h                            |   9 +-
hw/ppc/e500.h                                 |  19 +-
hw/ppc/mac.h                                  |  19 +-
hw/rdma/vmw/pvrdma.h                          |   9 +-
hw/s390x/ccw-device.h                         |  17 +-
hw/s390x/ipl.h                                |   6 +-
hw/s390x/s390-pci-bus.h                       |  34 +-
hw/s390x/virtio-ccw.h                         | 141 ++--
hw/scsi/mptsas.h                              |   7 +-
hw/usb/ccid.h                                 |  14 +-
hw/usb/hcd-dwc2.h                             |   9 +-
hw/usb/hcd-ehci.h                             |  36 +-
hw/usb/hcd-ohci.h                             |   9 +-
hw/usb/hcd-xhci.h                             |   7 +-
hw/vfio/pci.h                                 |  10 +-
hw/virtio/virtio-mem-pci.h                    |   5 +-
hw/virtio/virtio-pci.h                        |  24 +-
hw/virtio/virtio-pmem-pci.h                   |   5 +-
hw/xen/xen_pt.h                               |   5 +-
include/authz/base.h                          |  15 +-
include/authz/list.h                          |  17 +-
include/authz/listfile.h                      |  17 +-
include/authz/pamacct.h                       |  17 +-
include/authz/simple.h                        |  17 +-
include/block/throttle-groups.h               |   5 +-
include/chardev/char-fd.h                     |   9 +-
include/chardev/char-win.h                    |   9 +-
include/chardev/char.h                        |  12 +-
include/chardev/spice.h                       |   9 +-
include/crypto/secret.h                       |  11 +-
include/crypto/secret_common.h                |  12 +-
include/crypto/secret_keyring.h               |  24 +-
include/crypto/tls-cipher-suites.h            |   9 +-
include/crypto/tlscreds.h                     |  13 +-
include/crypto/tlscredsanon.h                 |  15 +-
include/crypto/tlscredspsk.h                  |  14 +-
include/crypto/tlscredsx509.h                 |  14 +-
include/exec/memory.h                         |  19 +-
include/hw/acpi/acpi_dev_interface.h          |  13 +-
include/hw/acpi/generic_event_device.h        |  10 +-
include/hw/acpi/vmgenid.h                     |   9 +-
include/hw/adc/stm32f2xx_adc.h                |  10 +-
include/hw/arm/allwinner-a10.h                |   9 +-
include/hw/arm/allwinner-h3.h                 |  70 +-
include/hw/arm/armsse.h                       |  18 +-
include/hw/arm/armv7m.h                       |  17 +-
include/hw/arm/aspeed.h                       |  14 +-
include/hw/arm/aspeed_soc.h                   | 110 +--
include/hw/arm/bcm2835_peripherals.h          |  10 +-
include/hw/arm/bcm2836.h                      |  18 +-
include/hw/arm/digic.h                        |   9 +-
include/hw/arm/exynos4210.h                   |  10 +-
include/hw/arm/fsl-imx25.h                    |   9 +-
include/hw/arm/fsl-imx31.h                    |   9 +-
include/hw/arm/fsl-imx6.h                     |   9 +-
include/hw/arm/fsl-imx6ul.h                   |   9 +-
include/hw/arm/fsl-imx7.h                     |   9 +-
include/hw/arm/linux-boot-if.h                |  11 +-
include/hw/arm/msf2-soc.h                     |   9 +-
include/hw/arm/nrf51_soc.h                    |  10 +-
include/hw/arm/omap.h                         |  20 +-
include/hw/arm/pxa.h                          |  16 +
include/hw/arm/smmu-common.h                  |  18 +-
include/hw/arm/smmuv3.h                       |  18 +-
include/hw/arm/stm32f205_soc.h                |  10 +-
include/hw/arm/stm32f405_soc.h                |  10 +-
include/hw/arm/virt.h                         |  19 +-
include/hw/arm/xlnx-versal.h                  |   9 +-
include/hw/arm/xlnx-zynqmp.h                  |  10 +-
include/hw/block/flash.h                      |  13 +-
include/hw/block/swim.h                       |  12 +-
include/hw/boards.h                           |   8 +-
include/hw/char/avr_usart.h                   |  10 +-
include/hw/char/bcm2835_aux.h                 |   9 +-
include/hw/char/cadence_uart.h                |  10 +-
include/hw/char/cmsdk-apb-uart.h              |  10 +-
include/hw/char/digic-uart.h                  |  10 +-
include/hw/char/escc.h                        |   9 +-
include/hw/char/ibex_uart.h                   |  10 +-
include/hw/char/imx_serial.h                  |   9 +-
include/hw/char/nrf51_uart.h                  |   9 +-
include/hw/char/pl011.h                       |   9 +-
include/hw/char/renesas_sci.h                 |   9 +-
include/hw/char/serial.h                      |  25 +-
include/hw/char/stm32f2xx_usart.h             |  10 +-
include/hw/clock.h                            |   5 +-
include/hw/core/cpu.h                         |  10 +-
include/hw/core/generic-loader.h              |  10 +-
include/hw/core/split-irq.h                   |   3 +-
include/hw/cpu/a15mpcore.h                    |  10 +-
include/hw/cpu/a9mpcore.h                     |  10 +-
include/hw/cpu/arm11mpcore.h                  |  10 +-
include/hw/cpu/cluster.h                      |  10 +-
include/hw/cpu/core.h                         |  10 +-
include/hw/display/bcm2835_fb.h               |   9 +-
include/hw/display/dpcd.h                     |   4 +-
include/hw/display/i2c-ddc.h                  |   4 +-
include/hw/display/macfb.h                    |  22 +-
include/hw/display/xlnx_dp.h                  |   9 +-
include/hw/dma/bcm2835_dma.h                  |  10 +-
include/hw/dma/i8257.h                        |   8 +-
include/hw/dma/pl080.h                        |   9 +-
include/hw/dma/xlnx-zdma.h                    |  10 +-
include/hw/dma/xlnx-zynq-devcfg.h             |  10 +-
include/hw/dma/xlnx_dpdma.h                   |   4 +-
include/hw/fw-path-provider.h                 |  11 +-
include/hw/gpio/aspeed_gpio.h                 |  18 +-
include/hw/gpio/bcm2835_gpio.h                |  10 +-
include/hw/gpio/imx_gpio.h                    |   9 +-
include/hw/gpio/nrf51_gpio.h                  |   9 +-
include/hw/hotplug.h                          |  11 +-
include/hw/hyperv/vmbus-bridge.h              |  12 +-
include/hw/hyperv/vmbus.h                     |  19 +-
include/hw/i2c/arm_sbcon_i2c.h                |  10 +-
include/hw/i2c/aspeed_i2c.h                   |  19 +-
include/hw/i2c/i2c.h                          |  19 +-
include/hw/i2c/imx_i2c.h                      |   9 +-
include/hw/i2c/microbit_i2c.h                 |  10 +-
include/hw/i2c/ppc4xx_i2c.h                   |   9 +-
include/hw/i2c/smbus_slave.h                  |  15 +-
include/hw/i386/apic_internal.h               |  17 +-
include/hw/i386/ich9.h                        |  10 +-
include/hw/i386/intel_iommu.h                 |   7 +-
include/hw/i386/ioapic_internal.h             |  16 +-
include/hw/i386/microvm.h                     |  19 +-
include/hw/i386/pc.h                          |  14 +-
include/hw/i386/x86-iommu.h                   |   5 +-
include/hw/i386/x86.h                         |  19 +-
include/hw/ide/ahci.h                         |  17 +-
include/hw/ide/internal.h                     |  19 +-
include/hw/ide/pci.h                          |   9 +-
include/hw/input/adb.h                        |  16 +-
include/hw/input/i8042.h                      |   5 +-
include/hw/intc/allwinner-a10-pic.h           |   9 +-
include/hw/intc/arm_gic.h                     |  15 +-
include/hw/intc/arm_gic_common.h              |  21 +-
include/hw/intc/arm_gicv3.h                   |  14 +-
include/hw/intc/arm_gicv3_common.h            |  16 +-
include/hw/intc/arm_gicv3_its_common.h        |  11 +-
include/hw/intc/armv7m_nvic.h                 |  10 +-
include/hw/intc/aspeed_vic.h                  |   9 +-
include/hw/intc/bcm2835_ic.h                  |   9 +-
include/hw/intc/bcm2836_control.h             |  10 +-
include/hw/intc/heathrow_pic.h                |   9 +-
include/hw/intc/ibex_plic.h                   |  10 +-
include/hw/intc/imx_avic.h                    |   9 +-
include/hw/intc/imx_gpcv2.h                   |   9 +-
include/hw/intc/intc.h                        |  11 +-
include/hw/intc/mips_gic.h                    |   6 +-
include/hw/intc/realview_gic.h                |  10 +-
include/hw/intc/rx_icu.h                      |   4 +-
include/hw/intc/xlnx-pmu-iomod-intc.h         |  10 +-
include/hw/intc/xlnx-zynqmp-ipi.h             |  10 +-
include/hw/ipack/ipack.h                      |  14 +-
include/hw/ipmi/ipmi.h                        |  36 +-
include/hw/isa/i8259_internal.h               |  15 +-
include/hw/isa/isa.h                          |  28 +-
include/hw/isa/pc87312.h                      |   9 +-
include/hw/isa/superio.h                      |  19 +-
include/hw/m68k/mcf_fec.h                     |   5 +-
include/hw/mem/memory-device.h                |  11 +-
include/hw/mem/nvdimm.h                       |  11 +-
include/hw/mem/pc-dimm.h                      |  17 +-
include/hw/mips/cps.h                         |   9 +-
include/hw/misc/a9scu.h                       |   9 +-
include/hw/misc/allwinner-cpucfg.h            |   9 +-
include/hw/misc/allwinner-h3-ccu.h            |   9 +-
include/hw/misc/allwinner-h3-dramc.h          |   9 +-
include/hw/misc/allwinner-h3-sysctrl.h        |   9 +-
include/hw/misc/allwinner-sid.h               |   9 +-
include/hw/misc/arm11scu.h                    |   9 +-
include/hw/misc/armsse-cpuid.h                |   9 +-
include/hw/misc/armsse-mhu.h                  |   9 +-
include/hw/misc/aspeed_scu.h                  |  18 +-
include/hw/misc/aspeed_sdmc.h                 |  18 +-
include/hw/misc/aspeed_xdma.h                 |   9 +-
include/hw/misc/auxbus.h                      |  12 +-
include/hw/misc/avr_power.h                   |   9 +-
include/hw/misc/bcm2835_mbox.h                |  10 +-
include/hw/misc/bcm2835_mphi.h                |   5 +-
include/hw/misc/bcm2835_property.h            |  10 +-
include/hw/misc/bcm2835_rng.h                 |  10 +-
include/hw/misc/bcm2835_thermal.h             |  10 +-
include/hw/misc/grlib_ahb_apb_pnp.h           |   9 +-
include/hw/misc/imx25_ccm.h                   |   9 +-
include/hw/misc/imx31_ccm.h                   |   9 +-
include/hw/misc/imx6_ccm.h                    |   9 +-
include/hw/misc/imx6_src.h                    |   9 +-
include/hw/misc/imx6ul_ccm.h                  |   9 +-
include/hw/misc/imx7_ccm.h                    |  17 +-
include/hw/misc/imx7_gpr.h                    |   9 +-
include/hw/misc/imx7_snvs.h                   |   9 +-
include/hw/misc/imx_ccm.h                     |  11 +-
include/hw/misc/imx_rngc.h                    |   9 +-
include/hw/misc/iotkit-secctl.h               |   6 +-
include/hw/misc/iotkit-sysctl.h               |  10 +-
include/hw/misc/iotkit-sysinfo.h              |  10 +-
include/hw/misc/mac_via.h                     |  27 +-
include/hw/misc/macio/cuda.h                  |  18 +-
include/hw/misc/macio/gpio.h                  |   9 +-
include/hw/misc/macio/macio.h                 |  43 +-
include/hw/misc/macio/pmu.h                   |  18 +-
include/hw/misc/max111x.h                     |  10 +-
include/hw/misc/mips_cmgcr.h                  |   6 +-
include/hw/misc/mips_cpc.h                    |   9 +-
include/hw/misc/mips_itu.h                    |   9 +-
include/hw/misc/mos6522.h                     |  11 +-
include/hw/misc/mps2-fpgaio.h                 |   9 +-
include/hw/misc/mps2-scc.h                    |   9 +-
include/hw/misc/msf2-sysreg.h                 |   9 +-
include/hw/misc/nrf51_rng.h                   |   9 +-
include/hw/misc/pca9552.h                     |   9 +-
include/hw/misc/stm32f2xx_syscfg.h            |  10 +-
include/hw/misc/stm32f4xx_exti.h              |  10 +-
include/hw/misc/stm32f4xx_syscfg.h            |  10 +-
include/hw/misc/tz-mpc.h                      |   6 +-
include/hw/misc/tz-msc.h                      |   9 +-
include/hw/misc/tz-ppc.h                      |   6 +-
include/hw/misc/unimp.h                       |  10 +-
include/hw/misc/vmcoreinfo.h                  |   9 +-
include/hw/misc/zynq-xadc.h                   |  10 +-
include/hw/net/allwinner-sun8i-emac.h         |   9 +-
include/hw/net/allwinner_emac.h               |   9 +-
include/hw/net/cadence_gem.h                  |   9 +-
include/hw/net/ftgmac100.h                    |  17 +-
include/hw/net/imx_fec.h                      |   9 +-
include/hw/net/lance.h                        |  10 +-
include/hw/net/lasi_82596.h                   |  10 +-
include/hw/net/msf2-emac.h                    |  10 +-
include/hw/nmi.h                              |  11 +-
include/hw/nubus/mac-nubus-bridge.h           |  10 +-
include/hw/nubus/nubus.h                      |  19 +-
include/hw/nvram/fw_cfg.h                     |  21 +-
include/hw/nvram/nrf51_nvm.h                  |   9 +-
include/hw/or-irq.h                           |   3 +-
include/hw/pci-bridge/simba.h                 |  10 +-
include/hw/pci-host/designware.h              |  16 +-
include/hw/pci-host/gpex.h                    |  19 +-
include/hw/pci-host/i440fx.h                  |  10 +-
include/hw/pci-host/pnv_phb3.h                |  20 +-
include/hw/pci-host/pnv_phb4.h                |  21 +-
include/hw/pci-host/q35.h                     |  19 +-
include/hw/pci-host/sabre.h                   |  19 +-
include/hw/pci-host/spapr.h                   |   7 +-
include/hw/pci-host/uninorth.h                |  31 +-
include/hw/pci-host/xilinx-pcie.h             |  19 +-
include/hw/pci/pci.h                          |  20 +-
include/hw/pci/pci_bridge.h                   |   4 +-
include/hw/pci/pci_bus.h                      |   4 +-
include/hw/pci/pci_host.h                     |  14 +-
include/hw/pci/pcie_host.h                    |   5 +-
include/hw/pci/pcie_port.h                    |  18 +-
include/hw/pcmcia.h                           |  19 +-
include/hw/platform-bus.h                     |   9 +-
include/hw/ppc/mac_dbdma.h                    |   9 +-
include/hw/ppc/openpic.h                      |   9 +-
include/hw/ppc/pnv.h                          |  75 +--
include/hw/ppc/pnv_core.h                     |  26 +-
include/hw/ppc/pnv_homer.h                    |  22 +-
include/hw/ppc/pnv_lpc.h                      |  28 +-
include/hw/ppc/pnv_occ.h                      |  22 +-
include/hw/ppc/pnv_pnor.h                     |   9 +-
include/hw/ppc/pnv_psi.h                      |  35 +-
include/hw/ppc/pnv_xive.h                     |  16 +-
include/hw/ppc/pnv_xscom.h                    |  10 +-
include/hw/ppc/spapr.h                        |  24 +-
include/hw/ppc/spapr_cpu_core.h               |  17 +-
include/hw/ppc/spapr_drc.h                    |  80 +--
include/hw/ppc/spapr_irq.h                    |  48 +-
include/hw/ppc/spapr_tpm_proxy.h              |   9 +-
include/hw/ppc/spapr_vio.h                    |  19 +-
include/hw/ppc/spapr_xive.h                   |  19 +-
include/hw/ppc/xics.h                         |  31 +-
include/hw/ppc/xics_spapr.h                   |   5 +-
include/hw/ppc/xive.h                         |  77 ++-
include/hw/qdev-core.h                        |  15 +-
include/hw/rdma/rdma.h                        |   5 +-
include/hw/register.h                         |   4 +-
include/hw/resettable.h                       |  11 +-
include/hw/riscv/opentitan.h                  |  48 +-
include/hw/riscv/riscv_hart.h                 |  10 +-
include/hw/riscv/sifive_clint.h               |  10 +-
include/hw/riscv/sifive_e.h                   |  57 +-
include/hw/riscv/sifive_e_prci.h              |  10 +-
include/hw/riscv/sifive_gpio.h                |   9 +-
include/hw/riscv/sifive_plic.h                |  10 +-
include/hw/riscv/sifive_test.h                |  10 +-
include/hw/riscv/sifive_u.h                   |  49 +-
include/hw/riscv/sifive_u_otp.h               |  10 +-
include/hw/riscv/sifive_u_prci.h              |  10 +-
include/hw/riscv/sifive_uart.h                |  10 +-
include/hw/riscv/virt.h                       |  10 +-
include/hw/rtc/allwinner-rtc.h                |  18 +-
include/hw/rtc/aspeed_rtc.h                   |   9 +-
include/hw/rtc/goldfish_rtc.h                 |  10 +-
include/hw/rtc/m48t59.h                       |  11 +-
include/hw/rtc/mc146818rtc.h                  |   9 +-
include/hw/rtc/pl031.h                        |   9 +-
include/hw/rtc/xlnx-zynqmp-rtc.h              |  10 +-
include/hw/rx/rx62n.h                         |   9 +-
include/hw/s390x/3270-ccw.h                   |  19 +-
include/hw/s390x/ap-device.h                  |  10 +-
include/hw/s390x/css-bridge.h                 |  18 +-
include/hw/s390x/event-facility.h             |  35 +-
include/hw/s390x/s390-ccw.h                   |  19 +-
include/hw/s390x/s390-virtio-ccw.h            |  11 +-
include/hw/s390x/s390_flic.h                  |  31 +-
include/hw/s390x/sclp.h                       |  18 +-
include/hw/s390x/storage-attributes.h         |  37 +-
include/hw/s390x/storage-keys.h               |  28 +-
include/hw/s390x/tod.h                        |  18 +-
include/hw/s390x/vfio-ccw.h                   |   7 +-
include/hw/scsi/esp.h                         |   9 +-
include/hw/scsi/scsi.h                        |  19 +-
include/hw/sd/allwinner-sdhost.h              |  18 +-
include/hw/sd/aspeed_sdhci.h                  |  10 +-
include/hw/sd/bcm2835_sdhost.h                |  10 +-
include/hw/sd/sd.h                            |  23 +-
include/hw/sd/sdhci.h                         |  13 +-
include/hw/southbridge/piix.h                 |  10 +-
include/hw/sparc/sparc32_dma.h                |  34 +-
include/hw/sparc/sun4m_iommu.h                |   9 +-
include/hw/sparc/sun4u_iommu.h                |   9 +-
include/hw/ssi/aspeed_smc.h                   |  18 +-
include/hw/ssi/imx_spi.h                      |   9 +-
include/hw/ssi/mss-spi.h                      |   9 +-
include/hw/ssi/pl022.h                        |   9 +-
include/hw/ssi/ssi.h                          |  11 +-
include/hw/ssi/stm32f2xx_spi.h                |  10 +-
include/hw/ssi/xilinx_spips.h                 |  32 +-
include/hw/stream.h                           |  11 +-
include/hw/sysbus.h                           |  17 +-
include/hw/timer/a9gtimer.h                   |   6 +-
include/hw/timer/allwinner-a10-pit.h          |   6 +-
include/hw/timer/arm_mptimer.h                |  10 +-
include/hw/timer/armv7m_systick.h             |   9 +-
include/hw/timer/aspeed_timer.h               |  19 +-
include/hw/timer/avr_timer16.h                |  10 +-
include/hw/timer/bcm2835_systmr.h             |  10 +-
include/hw/timer/cmsdk-apb-dualtimer.h        |   7 +-
include/hw/timer/cmsdk-apb-timer.h            |  10 +-
include/hw/timer/digic-timer.h                |   9 +-
include/hw/timer/i8254.h                      |  11 +-
include/hw/timer/i8254_internal.h             |   8 +-
include/hw/timer/imx_epit.h                   |   9 +-
include/hw/timer/imx_gpt.h                    |   9 +-
include/hw/timer/mss-timer.h                  |  10 +-
include/hw/timer/nrf51_timer.h                |   9 +-
include/hw/timer/renesas_cmt.h                |   9 +-
include/hw/timer/renesas_tmr.h                |   9 +-
include/hw/timer/stm32f2xx_timer.h            |  10 +-
include/hw/usb.h                              |  17 +-
include/hw/usb/chipidea.h                     |   9 +-
include/hw/usb/imx-usb-phy.h                  |   9 +-
include/hw/vfio/vfio-amd-xgbe.h               |  11 +-
include/hw/vfio/vfio-calxeda-xgmac.h          |  21 +-
include/hw/vfio/vfio-platform.h               |  19 +-
include/hw/virtio/vhost-scsi-common.h         |  10 +-
include/hw/virtio/vhost-scsi.h                |  10 +-
include/hw/virtio/vhost-user-blk.h            |  10 +-
include/hw/virtio/vhost-user-fs.h             |  10 +-
include/hw/virtio/vhost-user-scsi.h           |  10 +-
include/hw/virtio/vhost-user-vsock.h          |  10 +-
include/hw/virtio/vhost-vsock-common.h        |  10 +-
include/hw/virtio/vhost-vsock.h               |  10 +-
include/hw/virtio/virtio-balloon.h            |  10 +-
include/hw/virtio/virtio-blk.h                |  10 +-
include/hw/virtio/virtio-bus.h                |  15 +-
include/hw/virtio/virtio-crypto.h             |  10 +-
include/hw/virtio/virtio-gpu-pci.h            |   5 +-
include/hw/virtio/virtio-gpu.h                |  33 +-
include/hw/virtio/virtio-input.h              |  29 +-
include/hw/virtio/virtio-iommu.h              |  10 +-
include/hw/virtio/virtio-mem.h                |  17 +-
include/hw/virtio/virtio-mmio.h               |  19 +-
include/hw/virtio/virtio-net.h                |   7 +-
include/hw/virtio/virtio-pmem.h               |  17 +-
include/hw/virtio/virtio-rng.h                |  10 +-
include/hw/virtio/virtio-scsi.h               |  19 +-
include/hw/virtio/virtio-serial.h             |  23 +-
include/hw/virtio/virtio.h                    |  14 +-
include/hw/vmstate-if.h                       |  11 +-
include/hw/watchdog/cmsdk-apb-watchdog.h      |  10 +-
include/hw/watchdog/wdt_aspeed.h              |  19 +-
include/hw/watchdog/wdt_diag288.h             |  19 +-
include/hw/watchdog/wdt_imx2.h                |   9 +-
include/hw/xen/xen-block.h                    |  39 +-
include/hw/xen/xen-bus.h                      |  37 +-
include/hw/xen/xen-legacy-backend.h           |   6 +-
include/io/channel-buffer.h                   |   7 +-
include/io/channel-command.h                  |   7 +-
include/io/channel-file.h                     |   7 +-
include/io/channel-socket.h                   |   7 +-
include/io/channel-tls.h                      |   7 +-
include/io/channel-websock.h                  |   7 +-
include/io/channel.h                          |  12 +-
include/io/dns-resolver.h                     |  13 +-
include/io/net-listener.h                     |  14 +-
include/net/can_emu.h                         |   8 +-
include/net/can_host.h                        |  21 +-
include/net/filter.h                          |  13 +-
include/qom/object.h                          | 332 ++++++++-
include/qom/object_interfaces.h               |  13 +-
include/scsi/pr-manager.h                     |  16 +-
include/sysemu/accel.h                        |  18 +-
include/sysemu/cryptodev.h                    |  16 +-
include/sysemu/hostmem.h                      |  10 +-
include/sysemu/hvf.h                          |   8 +-
include/sysemu/iothread.h                     |   9 +-
include/sysemu/kvm.h                          |   7 +
include/sysemu/kvm_int.h                      |   5 -
include/sysemu/rng-random.h                   |   5 +-
include/sysemu/rng.h                          |  10 +-
include/sysemu/tpm.h                          |  11 +-
include/sysemu/tpm_backend.h                  |  12 +-
include/sysemu/vhost-user-backend.h           |  17 +-
include/ui/console.h                          |  10 +-
migration/migration.h                         |   6 +-
target/alpha/cpu-qom.h                        |  14 +-
target/arm/cpu-qom.h                          |  19 +-
target/arm/idau.h                             |  11 +-
target/avr/cpu-qom.h                          |  14 +-
target/cris/cpu-qom.h                         |  14 +-
target/hppa/cpu-qom.h                         |  14 +-
target/i386/cpu-qom.h                         |  14 +-
target/i386/hvf/hvf-i386.h                    |   4 +-
target/lm32/cpu-qom.h                         |  14 +-
target/m68k/cpu-qom.h                         |  14 +-
target/microblaze/cpu-qom.h                   |  14 +-
target/mips/cpu-qom.h                         |  14 +-
target/moxie/cpu.h                            |  17 +-
target/nios2/cpu.h                            |  17 +-
target/openrisc/cpu.h                         |  17 +-
target/ppc/cpu-qom.h                          |  14 +-
target/ppc/cpu.h                              |  11 +-
target/riscv/cpu.h                            |  17 +-
target/rx/cpu-qom.h                           |   6 +-
target/s390x/cpu-qom.h                        |  14 +-
target/sh4/cpu-qom.h                          |  14 +-
target/sparc/cpu-qom.h                        |  14 +-
target/tilegx/cpu.h                           |  17 +-
target/tricore/cpu-qom.h                      |  14 +-
target/unicore32/cpu-qom.h                    |  14 +-
target/xtensa/cpu-qom.h                       |  14 +-
accel/accel.c                                 |   6 +-
accel/kvm/kvm-all.c                           |   6 +-
accel/qtest.c                                 |   6 +-
accel/tcg/tcg-all.c                           |  15 +-
accel/xen/xen-all.c                           |   6 +-
authz/base.c                                  |   6 +-
authz/list.c                                  |   7 +-
authz/listfile.c                              |   7 +-
authz/pamacct.c                               |   7 +-
authz/simple.c                                |   7 +-
backends/cryptodev-builtin.c                  |  15 +-
backends/cryptodev-vhost-user.c               |  18 +-
backends/cryptodev.c                          |   7 +-
backends/dbus-vmstate.c                       |  23 +-
backends/hostmem-file.c                       |  13 +-
backends/hostmem-memfd.c                      |   9 +-
backends/hostmem-ram.c                        |   6 +-
backends/hostmem.c                            |   6 +-
backends/rng-builtin.c                        |  15 +-
backends/rng-egd.c                            |  16 +-
backends/rng-random.c                         |   6 +-
backends/rng.c                                |   6 +-
backends/tpm/tpm_backend.c                    |   8 +-
backends/tpm/tpm_emulator.c                   |  16 +-
backends/tpm/tpm_passthrough.c                |  13 +-
backends/vhost-user.c                         |   6 +-
block/throttle-groups.c                       |  10 +-
chardev/baum.c                                |  15 +-
chardev/char-console.c                        |   6 +-
chardev/char-fd.c                             |   6 +-
chardev/char-mux.c                            |   6 +-
chardev/char-null.c                           |   6 +-
chardev/char-parallel.c                       |  23 +-
chardev/char-pty.c                            |  15 +-
chardev/char-ringbuf.c                        |  18 +-
chardev/char-socket.c                         |  16 +-
chardev/char-udp.c                            |  15 +-
chardev/char-win-stdio.c                      |  16 +-
chardev/char-win.c                            |   6 +-
chardev/char.c                                |   6 +-
chardev/msmouse.c                             |  16 +-
chardev/spice.c                               |  10 +-
chardev/testdev.c                             |  16 +-
chardev/wctablet.c                            |  16 +-
crypto/secret.c                               |  24 +-
crypto/secret_common.c                        |  32 +-
crypto/secret_keyring.c                       |  28 +-
crypto/tls-cipher-suites.c                    |   6 +-
crypto/tlscreds.c                             |  25 +-
crypto/tlscredsanon.c                         |  23 +-
crypto/tlscredspsk.c                          |  25 +-
crypto/tlscredsx509.c                         |  29 +-
gdbstub.c                                     |   6 +-
hw/9pfs/virtio-9p-device.c                    |   6 +-
hw/acpi/generic_event_device.c                |   6 +-
hw/acpi/piix4.c                               |  16 +-
hw/acpi/vmgenid.c                             |   6 +-
hw/adc/stm32f2xx_adc.c                        |   6 +-
hw/alpha/typhoon.c                            |  18 +-
hw/arm/allwinner-a10.c                        |   6 +-
hw/arm/allwinner-h3.c                         | 130 ++--
hw/arm/armsse.c                               |  26 +-
hw/arm/armv7m.c                               |   8 +-
hw/arm/aspeed.c                               |   4 +-
hw/arm/aspeed_ast2600.c                       | 208 +++---
hw/arm/aspeed_soc.c                           | 228 +++----
hw/arm/bcm2835_peripherals.c                  |   6 +-
hw/arm/bcm2836.c                              |   2 +-
hw/arm/boot.c                                 |   6 +-
hw/arm/collie.c                               |  16 +-
hw/arm/digic.c                                |   6 +-
hw/arm/exynos4210.c                           |   6 +-
hw/arm/exynos4_boards.c                       |   8 +-
hw/arm/fsl-imx25.c                            |   6 +-
hw/arm/fsl-imx31.c                            |   6 +-
hw/arm/fsl-imx6.c                             |   6 +-
hw/arm/fsl-imx6ul.c                           |   6 +-
hw/arm/fsl-imx7.c                             |   6 +-
hw/arm/gumstix.c                              |   8 +-
hw/arm/highbank.c                             |  24 +-
hw/arm/integratorcp.c                         |  38 +-
hw/arm/microbit.c                             |  16 +-
hw/arm/mps2-tz.c                              |  29 +-
hw/arm/mps2.c                                 |  29 +-
hw/arm/msf2-soc.c                             |   6 +-
hw/arm/musca.c                                |  29 +-
hw/arm/musicpal.c                             |  95 +--
hw/arm/nrf51_soc.c                            |   6 +-
hw/arm/nseries.c                              |   8 +-
hw/arm/omap_sx1.c                             |   8 +-
hw/arm/orangepi.c                             |   6 +-
hw/arm/palm.c                                 |  16 +-
hw/arm/pxa2xx.c                               |  49 +-
hw/arm/pxa2xx_gpio.c                          |  13 +-
hw/arm/pxa2xx_pic.c                           |  16 +-
hw/arm/raspi.c                                |  19 +-
hw/arm/realview.c                             |  12 +-
hw/arm/sbsa-ref.c                             |  16 +-
hw/arm/smmu-common.c                          |   6 +-
hw/arm/spitz.c                                |  89 ++-
hw/arm/stellaris.c                            |  46 +-
hw/arm/stm32f205_soc.c                        |   6 +-
hw/arm/stm32f405_soc.c                        |   6 +-
hw/arm/strongarm.c                            |  65 +-
hw/arm/tosa.c                                 |  28 +-
hw/arm/versatilepb.c                          |  24 +-
hw/arm/vexpress.c                             |  29 +-
hw/arm/virt.c                                 |   6 +-
hw/arm/xilinx_zynq.c                          |  16 +-
hw/arm/xlnx-versal-virt.c                     |  16 +-
hw/arm/xlnx-versal.c                          |   6 +-
hw/arm/xlnx-zcu102.c                          |  16 +-
hw/arm/xlnx-zynqmp.c                          |   6 +-
hw/arm/z2.c                                   |  17 +-
hw/audio/ac97.c                               |  10 +-
hw/audio/adlib.c                              |   9 +-
hw/audio/cs4231.c                             |  16 +-
hw/audio/cs4231a.c                            |   9 +-
hw/audio/es1370.c                             |  10 +-
hw/audio/gus.c                                |   9 +-
hw/audio/hda-codec.c                          |  16 +-
hw/audio/intel-hda.c                          |  15 +-
hw/audio/marvell_88w8618.c                    |  16 +-
hw/audio/milkymist-ac97.c                     |  13 +-
hw/audio/pcspk.c                              |  11 +-
hw/audio/pl041.c                              |  15 +-
hw/audio/sb16.c                               |   9 +-
hw/audio/wm8750.c                             |  15 +-
hw/avr/arduino.c                              |  19 +-
hw/avr/atmega.c                               |  12 +-
hw/block/fdc.c                                |  50 +-
hw/block/m25p80.c                             |  21 +-
hw/block/nand.c                               |  11 +-
hw/block/nvme.c                               |   6 +-
hw/block/onenand.c                            |  15 +-
hw/block/pflash_cfi01.c                       |   6 +-
hw/block/pflash_cfi02.c                       |   6 +-
hw/block/swim.c                               |  10 +-
hw/block/vhost-user-blk.c                     |   6 +-
hw/block/virtio-blk.c                         |   6 +-
hw/block/xen-block.c                          |  10 +-
hw/char/avr_usart.c                           |   6 +-
hw/char/bcm2835_aux.c                         |   6 +-
hw/char/cadence_uart.c                        |   6 +-
hw/char/cmsdk-apb-uart.c                      |   6 +-
hw/char/debugcon.c                            |  16 +-
hw/char/digic-uart.c                          |   6 +-
hw/char/escc.c                                |   6 +-
hw/char/etraxfs_ser.c                         |  16 +-
hw/char/exynos4210_uart.c                     |  16 +-
hw/char/grlib_apbuart.c                       |  16 +-
hw/char/ibex_uart.c                           |   6 +-
hw/char/imx_serial.c                          |   6 +-
hw/char/ipoctal232.c                          |  11 +-
hw/char/lm32_juart.c                          |  12 +-
hw/char/lm32_uart.c                           |  12 +-
hw/char/mcf_uart.c                            |  15 +-
hw/char/milkymist-uart.c                      |  13 +-
hw/char/nrf51_uart.c                          |   6 +-
hw/char/parallel.c                            |  16 +-
hw/char/pl011.c                               |   8 +-
hw/char/renesas_sci.c                         |   6 +-
hw/char/sclpconsole-lm.c                      |  16 +-
hw/char/sclpconsole.c                         |  16 +-
hw/char/serial-isa.c                          |  15 +-
hw/char/serial-pci-multi.c                    |   8 +-
hw/char/serial-pci.c                          |  15 +-
hw/char/serial.c                              |  10 +-
hw/char/spapr_vty.c                           |  12 +-
hw/char/stm32f2xx_usart.c                     |   6 +-
hw/char/terminal3270.c                        |  16 +-
hw/char/virtio-console.c                      |  18 +-
hw/char/virtio-serial-bus.c                   |  14 +-
hw/char/xilinx_uartlite.c                     |  16 +-
hw/core/bus.c                                 |   6 +-
hw/core/clock.c                               |   6 +-
hw/core/cpu.c                                 |   6 +-
hw/core/fw-path-provider.c                    |   6 +-
hw/core/generic-loader.c                      |   6 +-
hw/core/hotplug.c                             |   6 +-
hw/core/irq.c                                 |   9 +-
hw/core/machine.c                             |   6 +-
hw/core/nmi.c                                 |   6 +-
hw/core/or-irq.c                              |   6 +-
hw/core/platform-bus.c                        |   6 +-
hw/core/qdev.c                                |   6 +-
hw/core/register.c                            |   6 +-
hw/core/resettable.c                          |   6 +-
hw/core/split-irq.c                           |   6 +-
hw/core/stream.c                              |   6 +-
hw/core/sysbus.c                              |   8 +-
hw/core/vmstate-if.c                          |   6 +-
hw/cpu/a15mpcore.c                            |   6 +-
hw/cpu/a9mpcore.c                             |   6 +-
hw/cpu/arm11mpcore.c                          |   6 +-
hw/cpu/cluster.c                              |   6 +-
hw/cpu/core.c                                 |   6 +-
hw/cpu/realview_mpcore.c                      |  16 +-
hw/display/ads7846.c                          |  15 +-
hw/display/artist.c                           |  15 +-
hw/display/ati.c                              |   6 +-
hw/display/bcm2835_fb.c                       |   6 +-
hw/display/bochs-display.c                    |  16 +-
hw/display/cg3.c                              |  15 +-
hw/display/cirrus_vga.c                       |  16 +-
hw/display/cirrus_vga_isa.c                   |  16 +-
hw/display/dpcd.c                             |   6 +-
hw/display/exynos4210_fimd.c                  |  16 +-
hw/display/g364fb.c                           |  15 +-
hw/display/i2c-ddc.c                          |   6 +-
hw/display/jazz_led.c                         |  15 +-
hw/display/macfb.c                            |   8 +-
hw/display/milkymist-tmu2.c                   |  13 +-
hw/display/milkymist-vgafb.c                  |  13 +-
hw/display/next-fb.c                          |  12 +-
hw/display/pl110.c                            |  41 +-
hw/display/qxl.c                              |  10 +-
hw/display/ramfb-standalone.c                 |  15 +-
hw/display/sii9022.c                          |  15 +-
hw/display/sm501.c                            |  26 +-
hw/display/ssd0303.c                          |  15 +-
hw/display/ssd0323.c                          |  15 +-
hw/display/tcx.c                              |  15 +-
hw/display/vga-isa.c                          |  15 +-
hw/display/vga-pci.c                          |  19 +-
hw/display/vhost-user-gpu-pci.c               |  10 +-
hw/display/vhost-user-gpu.c                   |   9 +-
hw/display/vhost-user-vga.c                   |  10 +-
hw/display/virtio-gpu-base.c                  |   7 +-
hw/display/virtio-gpu-pci.c                   |  12 +-
hw/display/virtio-gpu.c                       |   6 +-
hw/display/virtio-vga.c                       |  12 +-
hw/display/vmware_vga.c                       |  11 +-
hw/display/xlnx_dp.c                          |   6 +-
hw/dma/bcm2835_dma.c                          |   6 +-
hw/dma/i82374.c                               |  15 +-
hw/dma/i8257.c                                |   8 +-
hw/dma/pl080.c                                |   8 +-
hw/dma/pl330.c                                |  10 +-
hw/dma/puv3_dma.c                             |  15 +-
hw/dma/pxa2xx_dma.c                           |  15 +-
hw/dma/rc4030.c                               |  18 +-
hw/dma/sparc32_dma.c                          |  12 +-
hw/dma/xilinx_axidma.c                        |  29 +-
hw/dma/xlnx-zdma.c                            |   6 +-
hw/dma/xlnx-zynq-devcfg.c                     |   6 +-
hw/dma/xlnx_dpdma.c                           |   6 +-
hw/gpio/aspeed_gpio.c                         |  14 +-
hw/gpio/bcm2835_gpio.c                        |   6 +-
hw/gpio/gpio_key.c                            |  15 +-
hw/gpio/imx_gpio.c                            |   6 +-
hw/gpio/max7310.c                             |  15 +-
hw/gpio/mpc8xxx.c                             |  15 +-
hw/gpio/nrf51_gpio.c                          |   6 +-
hw/gpio/omap_gpio.c                           |   8 +-
hw/gpio/pl061.c                               |  17 +-
hw/gpio/puv3_gpio.c                           |  15 +-
hw/gpio/zaurus.c                              |  12 +-
hw/hppa/dino.c                                |  16 +-
hw/hppa/lasi.c                                |  16 +-
hw/hyperv/hyperv.c                            |  15 +-
hw/hyperv/hyperv_testdev.c                    |  11 +-
hw/hyperv/vmbus.c                             |  13 +-
hw/i2c/aspeed_i2c.c                           |  12 +-
hw/i2c/bitbang_i2c.c                          |  15 +-
hw/i2c/core.c                                 |   8 +-
hw/i2c/exynos4210_i2c.c                       |  16 +-
hw/i2c/imx_i2c.c                              |   6 +-
hw/i2c/microbit_i2c.c                         |   6 +-
hw/i2c/mpc_i2c.c                              |  16 +-
hw/i2c/omap_i2c.c                             |   6 +-
hw/i2c/ppc4xx_i2c.c                           |   6 +-
hw/i2c/smbus_eeprom.c                         |  16 +-
hw/i2c/smbus_ich9.c                           |  16 +-
hw/i2c/smbus_slave.c                          |   6 +-
hw/i2c/versatile_i2c.c                        |  13 +-
hw/i386/amd_iommu.c                           |  10 +-
hw/i386/intel_iommu.c                         |   8 +-
hw/i386/kvm/apic.c                            |   6 +-
hw/i386/kvm/clock.c                           |  15 +-
hw/i386/kvm/i8254.c                           |  24 +-
hw/i386/kvm/i8259.c                           |  18 +-
hw/i386/kvm/ioapic.c                          |   6 +-
hw/i386/kvmvapic.c                            |  15 +-
hw/i386/microvm.c                             |   6 +-
hw/i386/pc.c                                  |   6 +-
hw/i386/pc_piix.c                             |   6 +-
hw/i386/port92.c                              |  15 +-
hw/i386/vmmouse.c                             |  16 +-
hw/i386/vmport.c                              |  15 +-
hw/i386/x86-iommu.c                           |   6 +-
hw/i386/x86.c                                 |   6 +-
hw/i386/xen/xen_apic.c                        |   6 +-
hw/i386/xen/xen_platform.c                    |  16 +-
hw/i386/xen/xen_pvdevice.c                    |  16 +-
hw/ide/ahci-allwinner.c                       |   9 +-
hw/ide/ahci.c                                 |   6 +-
hw/ide/cmd646.c                               |   6 +-
hw/ide/ich.c                                  |   6 +-
hw/ide/isa.c                                  |  15 +-
hw/ide/macio.c                                |   6 +-
hw/ide/microdrive.c                           |  17 +-
hw/ide/mmio.c                                 |  15 +-
hw/ide/pci.c                                  |   6 +-
hw/ide/piix.c                                 |  10 +-
hw/ide/qdev.c                                 |  14 +-
hw/ide/sii3112.c                              |  14 +-
hw/ide/via.c                                  |   6 +-
hw/input/adb-kbd.c                            |  24 +-
hw/input/adb-mouse.c                          |  24 +-
hw/input/adb.c                                |   8 +-
hw/input/lm832x.c                             |  15 +-
hw/input/milkymist-softusb.c                  |  13 +-
hw/input/pckbd.c                              |   8 +-
hw/input/pl050.c                              |  19 +-
hw/input/vhost-user-input.c                   |   6 +-
hw/input/virtio-input-hid.c                   |  12 +-
hw/input/virtio-input-host.c                  |   6 +-
hw/input/virtio-input.c                       |   6 +-
hw/intc/allwinner-a10-pic.c                   |   6 +-
hw/intc/apic.c                                |  12 +-
hw/intc/apic_common.c                         |   6 +-
hw/intc/arm_gic.c                             |   6 +-
hw/intc/arm_gic_common.c                      |   6 +-
hw/intc/arm_gic_kvm.c                         |  23 +-
hw/intc/arm_gicv2m.c                          |  15 +-
hw/intc/arm_gicv3.c                           |   6 +-
hw/intc/arm_gicv3_common.c                    |   6 +-
hw/intc/arm_gicv3_its_common.c                |   6 +-
hw/intc/arm_gicv3_its_kvm.c                   |  20 +-
hw/intc/arm_gicv3_kvm.c                       |  21 +-
hw/intc/armv7m_nvic.c                         |   6 +-
hw/intc/aspeed_vic.c                          |   6 +-
hw/intc/bcm2835_ic.c                          |   6 +-
hw/intc/bcm2836_control.c                     |   6 +-
hw/intc/etraxfs_pic.c                         |  11 +-
hw/intc/exynos4210_combiner.c                 |  16 +-
hw/intc/exynos4210_gic.c                      |  31 +-
hw/intc/grlib_irqmp.c                         |  15 +-
hw/intc/heathrow_pic.c                        |   6 +-
hw/intc/i8259.c                               |  16 +-
hw/intc/i8259_common.c                        |   6 +-
hw/intc/ibex_plic.c                           |   6 +-
hw/intc/imx_avic.c                            |   6 +-
hw/intc/imx_gpcv2.c                           |   6 +-
hw/intc/intc.c                                |   6 +-
hw/intc/ioapic.c                              |   6 +-
hw/intc/ioapic_common.c                       |   6 +-
hw/intc/lm32_pic.c                            |  12 +-
hw/intc/loongson_liointc.c                    |  11 +-
hw/intc/mips_gic.c                            |   6 +-
hw/intc/nios2_iic.c                           |  16 +-
hw/intc/omap_intc.c                           |  10 +-
hw/intc/ompic.c                               |  12 +-
hw/intc/openpic.c                             |   6 +-
hw/intc/openpic_kvm.c                         |  16 +-
hw/intc/pl190.c                               |  15 +-
hw/intc/pnv_xive.c                            |   6 +-
hw/intc/puv3_intc.c                           |  15 +-
hw/intc/realview_gic.c                        |   6 +-
hw/intc/rx_icu.c                              |   6 +-
hw/intc/s390_flic.c                           |   8 +-
hw/intc/s390_flic_kvm.c                       |  22 +-
hw/intc/slavio_intctl.c                       |  16 +-
hw/intc/spapr_xive.c                          |   6 +-
hw/intc/xics.c                                |  10 +-
hw/intc/xics_pnv.c                            |   6 +-
hw/intc/xics_spapr.c                          |   6 +-
hw/intc/xilinx_intc.c                         |  10 +-
hw/intc/xive.c                                |  18 +-
hw/intc/xlnx-pmu-iomod-intc.c                 |   6 +-
hw/intc/xlnx-zynqmp-ipi.c                     |   6 +-
hw/ipack/ipack.c                              |   8 +-
hw/ipack/tpci200.c                            |  16 +-
hw/ipmi/ipmi.c                                |   8 +-
hw/ipmi/ipmi_bmc_extern.c                     |  10 +-
hw/ipmi/ipmi_bmc_sim.c                        |   6 +-
hw/ipmi/isa_ipmi_bt.c                         |  16 +-
hw/ipmi/isa_ipmi_kcs.c                        |  16 +-
hw/ipmi/pci_ipmi_bt.c                         |  16 +-
hw/ipmi/pci_ipmi_kcs.c                        |  16 +-
hw/ipmi/smbus_ipmi.c                          |  15 +-
hw/isa/i82378.c                               |  16 +-
hw/isa/isa-bus.c                              |  12 +-
hw/isa/isa-superio.c                          |   8 +-
hw/isa/lpc_ich9.c                             |   6 +-
hw/isa/pc87312.c                              |   6 +-
hw/isa/piix3.c                                |  14 +-
hw/isa/piix4.c                                |  16 +-
hw/isa/smc37c669-superio.c                    |   6 +-
hw/isa/vt82c686.c                             |  51 +-
hw/lm32/lm32_boards.c                         |   8 +-
hw/m68k/mcf_intc.c                            |  15 +-
hw/m68k/next-cube.c                           |  15 +-
hw/m68k/next-kbd.c                            |  15 +-
hw/m68k/q800.c                                |   6 +-
hw/mem/memory-device.c                        |   6 +-
hw/mem/nvdimm.c                               |   6 +-
hw/mem/pc-dimm.c                              |   6 +-
hw/microblaze/xlnx-zynqmp-pmu.c               |  16 +-
hw/mips/boston.c                              |  15 +-
hw/mips/cps.c                                 |   6 +-
hw/mips/gt64xxx_pci.c                         |  18 +-
hw/mips/jazz.c                                |   8 +-
hw/mips/malta.c                               |  15 +-
hw/misc/a9scu.c                               |   6 +-
hw/misc/allwinner-cpucfg.c                    |   6 +-
hw/misc/allwinner-h3-ccu.c                    |   6 +-
hw/misc/allwinner-h3-dramc.c                  |   6 +-
hw/misc/allwinner-h3-sysctrl.c                |   6 +-
hw/misc/allwinner-sid.c                       |   6 +-
hw/misc/applesmc.c                            |  12 +-
hw/misc/arm11scu.c                            |   6 +-
hw/misc/arm_integrator_debug.c                |  16 +-
hw/misc/arm_l2x0.c                            |  15 +-
hw/misc/arm_sysctl.c                          |  16 +-
hw/misc/armsse-cpuid.c                        |   6 +-
hw/misc/armsse-mhu.c                          |   6 +-
hw/misc/aspeed_scu.c                          |  12 +-
hw/misc/aspeed_sdmc.c                         |  12 +-
hw/misc/aspeed_xdma.c                         |   6 +-
hw/misc/auxbus.c                              |  12 +-
hw/misc/avr_power.c                           |   6 +-
hw/misc/bcm2835_mbox.c                        |   6 +-
hw/misc/bcm2835_mphi.c                        |   6 +-
hw/misc/bcm2835_property.c                    |   6 +-
hw/misc/bcm2835_rng.c                         |   6 +-
hw/misc/bcm2835_thermal.c                     |   6 +-
hw/misc/debugexit.c                           |  16 +-
hw/misc/eccmemctl.c                           |  15 +-
hw/misc/edu.c                                 |   9 +-
hw/misc/empty_slot.c                          |  15 +-
hw/misc/exynos4210_clk.c                      |  12 +-
hw/misc/exynos4210_pmu.c                      |  16 +-
hw/misc/exynos4210_rng.c                      |  16 +-
hw/misc/grlib_ahb_apb_pnp.c                   |   8 +-
hw/misc/imx25_ccm.c                           |   6 +-
hw/misc/imx31_ccm.c                           |   6 +-
hw/misc/imx6_ccm.c                            |   6 +-
hw/misc/imx6_src.c                            |   6 +-
hw/misc/imx6ul_ccm.c                          |   6 +-
hw/misc/imx7_ccm.c                            |   8 +-
hw/misc/imx7_gpr.c                            |   6 +-
hw/misc/imx7_snvs.c                           |   6 +-
hw/misc/imx_ccm.c                             |   6 +-
hw/misc/imx_rngc.c                            |   6 +-
hw/misc/iotkit-secctl.c                       |   6 +-
hw/misc/iotkit-sysctl.c                       |   6 +-
hw/misc/iotkit-sysinfo.c                      |   6 +-
hw/misc/ivshmem.c                             |  32 +-
hw/misc/mac_via.c                             |  10 +-
hw/misc/macio/cuda.c                          |   8 +-
hw/misc/macio/gpio.c                          |   6 +-
hw/misc/macio/mac_dbdma.c                     |   6 +-
hw/misc/macio/macio.c                         |  12 +-
hw/misc/macio/pmu.c                           |   8 +-
hw/misc/max111x.c                             |  10 +-
hw/misc/milkymist-hpdmc.c                     |  13 +-
hw/misc/milkymist-pfpu.c                      |  13 +-
hw/misc/mips_cmgcr.c                          |   6 +-
hw/misc/mips_cpc.c                            |   6 +-
hw/misc/mips_itu.c                            |   6 +-
hw/misc/mos6522.c                             |   6 +-
hw/misc/mps2-fpgaio.c                         |   6 +-
hw/misc/mps2-scc.c                            |   6 +-
hw/misc/msf2-sysreg.c                         |   6 +-
hw/misc/mst_fpga.c                            |  16 +-
hw/misc/nrf51_rng.c                           |   6 +-
hw/misc/pc-testdev.c                          |  16 +-
hw/misc/pca9552.c                             |  20 +-
hw/misc/pci-testdev.c                         |  16 +-
hw/misc/puv3_pm.c                             |  15 +-
hw/misc/pvpanic.c                             |  16 +-
hw/misc/sga.c                                 |  15 +-
hw/misc/slavio_misc.c                         |  25 +-
hw/misc/stm32f2xx_syscfg.c                    |   6 +-
hw/misc/stm32f4xx_exti.c                      |   6 +-
hw/misc/stm32f4xx_syscfg.c                    |   6 +-
hw/misc/tmp105.c                              |   6 +-
hw/misc/tmp421.c                              |  20 +-
hw/misc/tz-mpc.c                              |   8 +-
hw/misc/tz-msc.c                              |   6 +-
hw/misc/tz-ppc.c                              |   6 +-
hw/misc/unimp.c                               |   6 +-
hw/misc/vmcoreinfo.c                          |   6 +-
hw/misc/zynq-xadc.c                           |   6 +-
hw/misc/zynq_slcr.c                           |  15 +-
hw/net/allwinner-sun8i-emac.c                 |   6 +-
hw/net/allwinner_emac.c                       |   6 +-
hw/net/cadence_gem.c                          |   6 +-
hw/net/can/can_kvaser_pci.c                   |  16 +-
hw/net/can/can_mioe3680_pci.c                 |  16 +-
hw/net/can/can_pcm3680_pci.c                  |  16 +-
hw/net/dp8393x.c                              |  15 +-
hw/net/e1000.c                                |  25 +-
hw/net/e1000e.c                               |  15 +-
hw/net/etraxfs_eth.c                          |  17 +-
hw/net/fsl_etsec/etsec.c                      |   6 +-
hw/net/ftgmac100.c                            |   8 +-
hw/net/imx_fec.c                              |   8 +-
hw/net/lan9118.c                              |  15 +-
hw/net/lance.c                                |   6 +-
hw/net/lasi_i82596.c                          |   6 +-
hw/net/mcf_fec.c                              |  10 +-
hw/net/milkymist-minimac2.c                   |  13 +-
hw/net/mipsnet.c                              |  15 +-
hw/net/msf2-emac.c                            |   6 +-
hw/net/ne2000-isa.c                           |  15 +-
hw/net/ne2000-pci.c                           |   6 +-
hw/net/opencores_eth.c                        |  15 +-
hw/net/pcnet-pci.c                            |  16 +-
hw/net/rocker/rocker.c                        |  11 +-
hw/net/rtl8139.c                              |  16 +-
hw/net/smc91c111.c                            |  15 +-
hw/net/spapr_llan.c                           |  12 +-
hw/net/stellaris_enet.c                       |  16 +-
hw/net/sungem.c                               |  15 +-
hw/net/sunhme.c                               |  15 +-
hw/net/tulip.c                                |  10 +-
hw/net/virtio-net.c                           |   6 +-
hw/net/vmxnet3.c                              |  14 +-
hw/net/xgmac.c                                |  15 +-
hw/net/xilinx_axienet.c                       |  29 +-
hw/net/xilinx_ethlite.c                       |  11 +-
hw/nubus/mac-nubus-bridge.c                   |   6 +-
hw/nubus/nubus-bridge.c                       |   6 +-
hw/nubus/nubus-bus.c                          |   6 +-
hw/nubus/nubus-device.c                       |   6 +-
hw/nvram/ds1225y.c                            |  15 +-
hw/nvram/eeprom_at24c.c                       |  15 +-
hw/nvram/fw_cfg.c                             |  12 +-
hw/nvram/mac_nvram.c                          |   6 +-
hw/nvram/nrf51_nvm.c                          |   6 +-
hw/nvram/spapr_nvram.c                        |  16 +-
hw/pci-bridge/dec.c                           |  19 +-
hw/pci-bridge/gen_pcie_root_port.c            |  10 +-
hw/pci-bridge/i82801b11.c                     |   6 +-
hw/pci-bridge/ioh3420.c                       |   6 +-
hw/pci-bridge/pci_bridge_dev.c                |  15 +-
hw/pci-bridge/pci_expander_bridge.c           |  37 +-
hw/pci-bridge/pcie_pci_bridge.c               |  16 +-
hw/pci-bridge/pcie_root_port.c                |   6 +-
hw/pci-bridge/simba.c                         |   6 +-
hw/pci-bridge/xio3130_downstream.c            |   6 +-
hw/pci-bridge/xio3130_upstream.c              |   6 +-
hw/pci-host/bonito.c                          |  22 +-
hw/pci-host/designware.c                      |   8 +-
hw/pci-host/gpex.c                            |   8 +-
hw/pci-host/grackle.c                         |  18 +-
hw/pci-host/i440fx.c                          |  18 +-
hw/pci-host/pnv_phb3.c                        |  17 +-
hw/pci-host/pnv_phb3_msi.c                    |   6 +-
hw/pci-host/pnv_phb3_pbcq.c                   |   6 +-
hw/pci-host/pnv_phb4.c                        |  17 +-
hw/pci-host/pnv_phb4_pec.c                    |   8 +-
hw/pci-host/ppce500.c                         |  21 +-
hw/pci-host/prep.c                            |  27 +-
hw/pci-host/q35.c                             |   8 +-
hw/pci-host/sabre.c                           |   8 +-
hw/pci-host/uninorth.c                        |  18 +-
hw/pci-host/versatile.c                       |  24 +-
hw/pci-host/xen_igd_pt.c                      |   6 +-
hw/pci-host/xilinx-pcie.c                     |   8 +-
hw/pci/pci.c                                  |  14 +-
hw/pci/pci_bridge.c                           |   6 +-
hw/pci/pci_host.c                             |   6 +-
hw/pci/pcie_host.c                            |   6 +-
hw/pci/pcie_port.c                            |   8 +-
hw/pcmcia/pcmcia.c                            |   6 +-
hw/pcmcia/pxa2xx.c                            |  10 +-
hw/ppc/e500.c                                 |   8 +-
hw/ppc/e500plat.c                             |   6 +-
hw/ppc/mac_newworld.c                         |   6 +-
hw/ppc/mac_oldworld.c                         |   6 +-
hw/ppc/mpc8544_guts.c                         |  12 +-
hw/ppc/mpc8544ds.c                            |   6 +-
hw/ppc/pnv_core.c                             |   6 +-
hw/ppc/pnv_homer.c                            |  10 +-
hw/ppc/pnv_lpc.c                              |  12 +-
hw/ppc/pnv_occ.c                              |  10 +-
hw/ppc/pnv_pnor.c                             |   6 +-
hw/ppc/pnv_psi.c                              |  12 +-
hw/ppc/pnv_xscom.c                            |   6 +-
hw/ppc/ppc405_boards.c                        |   8 +-
hw/ppc/ppc440_pcix.c                          |  16 +-
hw/ppc/ppc440_uc.c                            |  16 +-
hw/ppc/ppc4xx_pci.c                           |  15 +-
hw/ppc/ppce500_spin.c                         |  15 +-
hw/ppc/prep_systemio.c                        |  16 +-
hw/ppc/rs6000_mc.c                            |  16 +-
hw/ppc/spapr.c                                |   6 +-
hw/ppc/spapr_drc.c                            |  16 +-
hw/ppc/spapr_iommu.c                          |   8 +-
hw/ppc/spapr_irq.c                            |   6 +-
hw/ppc/spapr_pci.c                            |   6 +-
hw/ppc/spapr_rng.c                            |  13 +-
hw/ppc/spapr_rtc.c                            |   6 +-
hw/ppc/spapr_tpm_proxy.c                      |   2 +-
hw/ppc/spapr_vio.c                            |  10 +-
hw/rdma/rdma.c                                |   6 +-
hw/rdma/vmw/pvrdma_main.c                     |   6 +-
hw/riscv/opentitan.c                          |  90 ++-
hw/riscv/riscv_hart.c                         |   6 +-
hw/riscv/sifive_clint.c                       |   6 +-
hw/riscv/sifive_e.c                           |  94 ++-
hw/riscv/sifive_e_prci.c                      |   6 +-
hw/riscv/sifive_gpio.c                        |   6 +-
hw/riscv/sifive_plic.c                        |   6 +-
hw/riscv/sifive_test.c                        |   6 +-
hw/riscv/sifive_u.c                           | 148 ++---
hw/riscv/sifive_u_otp.c                       |   6 +-
hw/riscv/sifive_u_prci.c                      |   6 +-
hw/riscv/virt.c                               |   6 +-
hw/rtc/allwinner-rtc.c                        |  12 +-
hw/rtc/aspeed_rtc.c                           |   6 +-
hw/rtc/ds1338.c                               |  15 +-
hw/rtc/exynos4210_rtc.c                       |  16 +-
hw/rtc/goldfish_rtc.c                         |   6 +-
hw/rtc/m41t80.c                               |  15 +-
hw/rtc/m48t59-isa.c                           |  23 +-
hw/rtc/m48t59.c                               |  23 +-
hw/rtc/mc146818rtc.c                          |   6 +-
hw/rtc/pl031.c                                |   6 +-
hw/rtc/sun4v-rtc.c                            |  15 +-
hw/rtc/twl92230.c                             |  15 +-
hw/rtc/xlnx-zynqmp-rtc.c                      |   6 +-
hw/rx/rx-gdbsim.c                             |  19 +-
hw/rx/rx62n.c                                 |  12 +-
hw/s390x/3270-ccw.c                           |   6 +-
hw/s390x/ap-bridge.c                          |   8 +-
hw/s390x/ap-device.c                          |   6 +-
hw/s390x/ccw-device.c                         |   6 +-
hw/s390x/css-bridge.c                         |   8 +-
hw/s390x/event-facility.c                     |  10 +-
hw/s390x/ipl.c                                |   6 +-
hw/s390x/s390-ccw.c                           |   6 +-
hw/s390x/s390-pci-bus.c                       |  14 +-
hw/s390x/s390-skeys-kvm.c                     |   6 +-
hw/s390x/s390-skeys.c                         |   8 +-
hw/s390x/s390-stattrib-kvm.c                  |   6 +-
hw/s390x/s390-stattrib.c                      |   8 +-
hw/s390x/s390-virtio-ccw.c                    |   6 +-
hw/s390x/sclp.c                               |   6 +-
hw/s390x/sclpcpu.c                            |   6 +-
hw/s390x/sclpquiesce.c                        |   6 +-
hw/s390x/tod-kvm.c                            |   6 +-
hw/s390x/tod-qemu.c                           |   6 +-
hw/s390x/tod.c                                |   6 +-
hw/s390x/vhost-vsock-ccw.c                    |   6 +-
hw/s390x/virtio-ccw-9p.c                      |   6 +-
hw/s390x/virtio-ccw-balloon.c                 |   6 +-
hw/s390x/virtio-ccw-blk.c                     |   6 +-
hw/s390x/virtio-ccw-crypto.c                  |   6 +-
hw/s390x/virtio-ccw-gpu.c                     |   6 +-
hw/s390x/virtio-ccw-input.c                   |  14 +-
hw/s390x/virtio-ccw-net.c                     |   6 +-
hw/s390x/virtio-ccw-rng.c                     |   6 +-
hw/s390x/virtio-ccw-scsi.c                    |   4 +-
hw/s390x/virtio-ccw-serial.c                  |   6 +-
hw/s390x/virtio-ccw.c                         |   8 +-
hw/scsi/esp-pci.c                             |  27 +-
hw/scsi/esp.c                                 |   6 +-
hw/scsi/lsi53c895a.c                          |  18 +-
hw/scsi/megasas.c                             |  29 +-
hw/scsi/mptsas.c                              |   5 -
hw/scsi/scsi-bus.c                            |   8 +-
hw/scsi/scsi-disk.c                           |  30 +-
hw/scsi/scsi-generic.c                        |   6 +-
hw/scsi/spapr_vscsi.c                         |  16 +-
hw/scsi/vhost-scsi-common.c                   |   6 +-
hw/scsi/vhost-scsi.c                          |   6 +-
hw/scsi/vhost-user-scsi.c                     |   6 +-
hw/scsi/virtio-scsi.c                         |   8 +-
hw/scsi/vmw_pvscsi.c                          |  29 +-
hw/sd/allwinner-sdhost.c                      |  18 +-
hw/sd/aspeed_sdhci.c                          |   6 +-
hw/sd/bcm2835_sdhost.c                        |  14 +-
hw/sd/core.c                                  |   6 +-
hw/sd/milkymist-memcard.c                     |  13 +-
hw/sd/pl181.c                                 |  15 +-
hw/sd/pxa2xx_mmci.c                           |  16 +-
hw/sd/sd.c                                    |   6 +-
hw/sd/sdhci-pci.c                             |   6 +-
hw/sd/sdhci.c                                 |  17 +-
hw/sd/ssi-sd.c                                |  15 +-
hw/sh4/sh_pci.c                               |  18 +-
hw/sparc/sun4m.c                              |  62 +-
hw/sparc/sun4m_iommu.c                        |   8 +-
hw/sparc64/niagara.c                          |   6 +-
hw/sparc64/sun4u.c                            |  45 +-
hw/sparc64/sun4u_iommu.c                      |   8 +-
hw/ssi/aspeed_smc.c                           |   2 +-
hw/ssi/imx_spi.c                              |   6 +-
hw/ssi/mss-spi.c                              |   6 +-
hw/ssi/pl022.c                                |   6 +-
hw/ssi/ssi.c                                  |  12 +-
hw/ssi/stm32f2xx_spi.c                        |   6 +-
hw/ssi/xilinx_spi.c                           |  15 +-
hw/ssi/xilinx_spips.c                         |  10 +-
hw/timer/a9gtimer.c                           |   6 +-
hw/timer/allwinner-a10-pit.c                  |   6 +-
hw/timer/altera_timer.c                       |  16 +-
hw/timer/arm_mptimer.c                        |   6 +-
hw/timer/arm_timer.c                          |  26 +-
hw/timer/armv7m_systick.c                     |   6 +-
hw/timer/aspeed_timer.c                       |  12 +-
hw/timer/avr_timer16.c                        |   6 +-
hw/timer/bcm2835_systmr.c                     |   6 +-
hw/timer/cadence_ttc.c                        |  16 +-
hw/timer/cmsdk-apb-dualtimer.c                |   6 +-
hw/timer/cmsdk-apb-timer.c                    |   6 +-
hw/timer/digic-timer.c                        |   6 +-
hw/timer/etraxfs_timer.c                      |  16 +-
hw/timer/exynos4210_mct.c                     |  16 +-
hw/timer/exynos4210_pwm.c                     |  16 +-
hw/timer/grlib_gptimer.c                      |  13 +-
hw/timer/hpet.c                               |  15 +-
hw/timer/i8254.c                              |  16 +-
hw/timer/i8254_common.c                       |   6 +-
hw/timer/imx_epit.c                           |   6 +-
hw/timer/imx_gpt.c                            |  12 +-
hw/timer/lm32_timer.c                         |  12 +-
hw/timer/milkymist-sysctl.c                   |  13 +-
hw/timer/mss-timer.c                          |   6 +-
hw/timer/nrf51_timer.c                        |   6 +-
hw/timer/puv3_ost.c                           |  15 +-
hw/timer/pxa2xx_timer.c                       |  17 +-
hw/timer/renesas_cmt.c                        |   6 +-
hw/timer/renesas_tmr.c                        |   6 +-
hw/timer/slavio_timer.c                       |  16 +-
hw/timer/stm32f2xx_timer.c                    |   6 +-
hw/timer/xilinx_timer.c                       |  11 +-
hw/tpm/tpm_crb.c                              |  15 +-
hw/tpm/tpm_spapr.c                            |  16 +-
hw/tpm/tpm_tis_isa.c                          |  15 +-
hw/tpm/tpm_tis_sysbus.c                       |  15 +-
hw/usb/bus.c                                  |   8 +-
hw/usb/ccid-card-emulated.c                   |  13 +-
hw/usb/ccid-card-passthru.c                   |  11 +-
hw/usb/chipidea.c                             |   6 +-
hw/usb/dev-audio.c                            |  11 +-
hw/usb/dev-hid.c                              |  17 +-
hw/usb/dev-hub.c                              |  15 +-
hw/usb/dev-mtp.c                              |  10 +-
hw/usb/dev-network.c                          |  15 +-
hw/usb/dev-serial.c                           |  15 +-
hw/usb/dev-smartcard-reader.c                 |  23 +-
hw/usb/dev-storage.c                          |  19 +-
hw/usb/dev-uas.c                              |  10 +-
hw/usb/dev-wacom.c                            |  11 +-
hw/usb/hcd-dwc2.c                             |  14 +-
hw/usb/hcd-ehci-pci.c                         |   2 +-
hw/usb/hcd-ehci-sysbus.c                      |  18 +-
hw/usb/hcd-ohci-pci.c                         |  15 +-
hw/usb/hcd-ohci.c                             |   6 +-
hw/usb/hcd-uhci.c                             |   6 +-
hw/usb/hcd-xhci-nec.c                         |   6 +-
hw/usb/hcd-xhci.c                             |   8 +-
hw/usb/host-libusb.c                          |  13 +-
hw/usb/imx-usb-phy.c                          |   6 +-
hw/usb/redirect.c                             |  10 +-
hw/usb/tusb6010.c                             |  15 +-
hw/vfio/amd-xgbe.c                            |   6 +-
hw/vfio/ap.c                                  |  16 +-
hw/vfio/calxeda-xgmac.c                       |   6 +-
hw/vfio/ccw.c                                 |   6 +-
hw/vfio/igd.c                                 |   6 +-
hw/vfio/pci.c                                 |  11 +-
hw/vfio/platform.c                            |   6 +-
hw/virtio/vhost-scsi-pci.c                    |   5 +-
hw/virtio/vhost-user-blk-pci.c                |   5 +-
hw/virtio/vhost-user-fs-pci.c                 |   5 +-
hw/virtio/vhost-user-fs.c                     |   6 +-
hw/virtio/vhost-user-input-pci.c              |   5 +-
hw/virtio/vhost-user-scsi-pci.c               |   5 +-
hw/virtio/vhost-user-vsock-pci.c              |   5 +-
hw/virtio/vhost-user-vsock.c                  |   6 +-
hw/virtio/vhost-vsock-common.c                |   6 +-
hw/virtio/vhost-vsock-pci.c                   |   5 +-
hw/virtio/vhost-vsock.c                       |   6 +-
hw/virtio/virtio-9p-pci.c                     |  10 +-
hw/virtio/virtio-balloon-pci.c                |   5 +-
hw/virtio/virtio-balloon.c                    |   6 +-
hw/virtio/virtio-blk-pci.c                    |   5 +-
hw/virtio/virtio-bus.c                        |   6 +-
hw/virtio/virtio-crypto-pci.c                 |   5 +-
hw/virtio/virtio-crypto.c                     |   6 +-
hw/virtio/virtio-input-host-pci.c             |   5 +-
hw/virtio/virtio-input-pci.c                  |  13 +-
hw/virtio/virtio-iommu-pci.c                  |   5 +-
hw/virtio/virtio-iommu.c                      |   8 +-
hw/virtio/virtio-mem.c                        |   6 +-
hw/virtio/virtio-mmio.c                       |   8 +-
hw/virtio/virtio-net-pci.c                    |   5 +-
hw/virtio/virtio-pci.c                        |   4 +-
hw/virtio/virtio-pmem.c                       |   6 +-
hw/virtio/virtio-rng-pci.c                    |   5 +-
hw/virtio/virtio-rng.c                        |   6 +-
hw/virtio/virtio-scsi-pci.c                   |   5 +-
hw/virtio/virtio-serial-pci.c                 |   5 +-
hw/virtio/virtio.c                            |   6 +-
hw/watchdog/cmsdk-apb-watchdog.c              |   8 +-
hw/watchdog/wdt_aspeed.c                      |   8 +-
hw/watchdog/wdt_diag288.c                     |   2 +-
hw/watchdog/wdt_i6300esb.c                    |   7 +-
hw/watchdog/wdt_ib700.c                       |  11 +-
hw/watchdog/wdt_imx2.c                        |   2 +-
hw/xen/xen-bus.c                              |  10 +-
hw/xen/xen-legacy-backend.c                   |  10 +-
hw/xen/xen_pt.c                               |   6 +-
hw/xtensa/xtfpga.c                            |  20 +-
io/channel-buffer.c                           |   6 +-
io/channel-command.c                          |   6 +-
io/channel-file.c                             |   6 +-
io/channel-socket.c                           |   6 +-
io/channel-tls.c                              |   6 +-
io/channel-websock.c                          |   6 +-
io/channel.c                                  |   6 +-
io/dns-resolver.c                             |   6 +-
io/net-listener.c                             |   6 +-
iothread.c                                    |  12 +-
migration/migration.c                         |   6 +-
migration/rdma.c                              |  13 +-
net/can/can_core.c                            |   6 +-
net/can/can_host.c                            |   6 +-
net/can/can_socketcan.c                       |  16 +-
net/colo-compare.c                            |  15 +-
net/dump.c                                    |  13 +-
net/filter-buffer.c                           |  15 +-
net/filter-mirror.c                           |  25 +-
net/filter-replay.c                           |  13 +-
net/filter-rewriter.c                         |  17 +-
net/filter.c                                  |   6 +-
qom/container.c                               |   6 +-
qom/object.c                                  |   6 +-
scsi/pr-manager-helper.c                      |  17 +-
scsi/pr-manager.c                             |   7 +-
softmmu/memory.c                              |   8 +-
target/arm/cpu.c                              |   4 +-
target/arm/cpu64.c                            |   2 +-
target/hppa/cpu.c                             |   6 +-
target/i386/cpu.c                             |   8 +-
target/i386/hax-all.c                         |   6 +-
target/i386/hvf/hvf.c                         |   6 +-
target/i386/sev.c                             |  14 +-
target/i386/whpx-all.c                        |   6 +-
target/microblaze/cpu.c                       |   6 +-
target/mips/cpu.c                             |   2 +-
target/nios2/cpu.c                            |   6 +-
target/ppc/translate_init.inc.c               |   4 +-
target/rx/cpu.c                               |   8 +-
target/s390x/cpu.c                            |   6 +-
target/s390x/cpu_models.c                     |   6 +-
target/sparc/cpu.c                            |   2 +-
target/tilegx/cpu.c                           |   6 +-
target/xtensa/cpu.c                           |   6 +-
tests/check-qom-interface.c                   |  11 +-
tests/check-qom-proplist.c                    |  16 +-
tests/test-qdev-global-props.c                |  13 +-
ui/console.c                                  |  15 +-
ui/gtk.c                                      |   8 +-
ui/input-barrier.c                            |  20 +-
ui/input-linux.c                              |  20 +-
ui/spice-app.c                                |   9 +-
1332 files changed, 9573 insertions(+), 9591 deletions(-)
create mode 100644 scripts/codeconverter/codeconverter/__init__.py
create mode 100644 scripts/codeconverter/codeconverter/patching.py
create mode 100644 scripts/codeconverter/codeconverter/qom_macros.py
create mode 100644 scripts/codeconverter/codeconverter/qom_type_info.py
create mode 100644 scripts/codeconverter/codeconverter/regexps.py
create mode 100644 scripts/codeconverter/codeconverter/test_patching.py
create mode 100644 scripts/codeconverter/codeconverter/test_regexps.py
create mode 100644 scripts/codeconverter/codeconverter/utils.py
create mode 100755 scripts/codeconverter/converter.py
[PATCH v2 00/58] qom: Automated conversion of type checking boilerplate
Posted by Eduardo Habkost 3 years, 8 months ago
This is an extension of the series previously submitted by
Daniel[1], including a script that will convert existing type
checker macros automatically.

Changes from series v1 to v2:
* Don't skip TypeCheckMacro conversion if typedefs
  are found in typedefs.h
* Don't look for typedefs if type check macro uses "struct [...]"
* "qom: Fix G_DEFINE_AUTOPTR_CLEANUP_FUNC" was squashed
  in the original buggy patch
* 18 new patches that fix inconsistencies in the code,
  and make automated changes without --force possible
* pl110:
  * Fix typo on commit message
  * Rename enum values to VERSION_*
* "[automated]" patches (without --force):
  * Re-ran script after after the changes mentioned above.
    Now the patches change many more QOM type checker macros
* "[semi-automated] Use DECLARE_*CHECKER* when possible (--force mode)":
  * Now the patch touches very few macros, and all of them
    have comments explaining why they are unusual
* Maintainers are now CCed in the cleanup patches
  (except for the automated ones, because they are too large)
* TYPE_INFO macro: added commit message note suggested by Daniel
* Added more details to commit message of "Rename enum constants" patches
* Removed confusing paragraph mentioning _Generic from "Make type
  checker functions accept const pointers" commit message

Link to series v1:
https://lore.kernel.org/qemu-devel/20200813222625.243136-1-ehabkost@redhat.co=
m/

The series is divided in the sections below:

Constant renaming
-----------------

Patches 1-10 will just rename existing constants that will
conflict with the type checker function names.

Fix and cleanups of existing code
---------------------------------

Patches 11-41 are changes to existing code
that will either fix existing issues, delete unused and broken
macros, or move typedefs around to make code conversion easier.

Original patches from Daniel
----------------------------

Patches 42-43 are the ones originally submitted by Daniel.

They introduce the macros:
* OBJECT_DECLARE_TYPE
* OBJECT_DECLARE_SIMPLE_TYPE
* OBJECT_DEFINE_TYPE
* OBJECT_DEFINE_TYPE_WITH_INTERFACES
* OBJECT_DEFINE_ABSTRACT_TYPE

Changes to new macros
---------------------

Patches 44-48 extend the macros introduced by Daniel.  It
includes small bug fixes, change the arguments to a few macros,
and introduce a few new macros:

* DECLARE_INSTANCE_CHECKER
* DECLARE_CLASS_CHECKERS
* DECLARE_OBJ_CHECKERS
* TYPE_INFO

Automated code conversion
-------------------------

Patch 49 is the code conversion script that will look for common
patterns and change them to use the new macros.

Patches 50-56 are all automatically generated by that script, to
gradually transform existing code into DECLARE_*CHECKER or
OBJECT_DECLARE*_TYPE macros.

Original crypto QOM patches from Daniel
---------------------------------------

Patches 57-58 are the patches originally sent by Daniel to
convert the crypto QOM code to use the new macros, rebased and
updated to pass additional arguments to OBJECT_DECLARE_*.

[1] https://lore.kernel.org/qemu-devel/20200723181410.3145233-1-berrange@redh=
at.com/

Daniel P. Berrang=C3=A9 (4):
  qom: make object_ref/unref use a void * instead of Object *.
  qom: provide convenient macros for declaring and defining types
  crypto: use QOM macros for declaration/definition of secret types
  crypto: use QOM macros for declaration/definition of TLS creds types

Eduardo Habkost (54):
  e1000: Rename QOM class cast macros
  megasas: Rename QOM class cast macros
  vmw_pvscsi: Rename QOM class cast macros
  pl110: Rename pl110_version enum values
  allwinner-h3: Rename memmap enum constants
  aspeed_soc: Rename memmap/irqmap enum constants
  opentitan: Rename memmap enum constants
  sifive_e: Rename memmap enum constants
  sifive_u: Rename memmap enum constants
  aspeed_timer: Fix ASPEED_TIMER macro definition
  versatile: Fix typo in PCI_VPB_HOST definition
  virtio-ccw: Fix definition of VIRTIO_CCW_BUS_GET_CLASS
  hvf: Add missing include
  hcd-dwc2: Rename USB_*CLASS macros for consistency
  tulip: Move TulipState typedef to header
  throttle-groups: Move ThrottleGroup typedef to header
  pci: Move PCIBusClass typedef to pci.h
  i8254: Move PITCommonState/PITCommonClass typedefs to i8254.h
  hvf: Move HVFState typedef to hvf.h
  mcf_fec: Move mcf_fec_state typedef to header
  s390_flic: Move KVMS390FLICState typedef to header
  can_emu: Delete macros for non-existing typedef
  nubus: Delete unused NUBUS_BRIDGE macro
  platform-bus: Delete macros for non-existing typedef
  armsse: Rename QOM macros to avoid conflicts
  xen-legacy-backend: Add missing typedef XenLegacyDevice
  spapr: Move typedef SpaprMachineState to spapr.h
  s390x: Move typedef SCLPEventFacility to event-facility.h
  vhost-user-gpu: Move QOM macro to header
  ahci: Move QOM macros to header
  i8257: Move QOM macro to header
  ahci: Move QOM macro to header
  pckbd: Move QOM macro to header
  vmbus: Move QOM macros to vmbus.h
  virtio-serial-bus: Move QOM macros to header
  piix: Move QOM macros to header
  auxbus: Move QOM macros to header
  rocker: Move QOM macros to header
  pxa2xx: Move QOM macros to header
  mptsas: Move QOM macros to header
  kvm: Move QOM macros to kvm.h
  vfio/pci: Move QOM macros to header
  qom: Allow class type name to be specified in OBJECT_DECLARE*
  qom: DECLARE_*_CHECKERS macros
  qom: Make type checker functions accept const pointers
  qom: TYPE_INFO macro
  codeconverter: script for automating QOM code cleanups
  [automated] Delete duplicate QOM typedefs
  [automated] Use TYPE_INFO macro
  [automated] Move QOM typedefs and add missing includes
  [automated] Use DECLARE_*CHECKER* macros
  [semi-automated] Use DECLARE_*CHECKER* when possible (--force mode)
  [automated] Use OBJECT_DECLARE_TYPE where possible
  [automated] Use OBJECT_DECLARE_SIMPLE_TYPE when possible

 .../codeconverter/codeconverter/__init__.py   |   0
 .../codeconverter/codeconverter/patching.py   | 381 +++++++++++
 .../codeconverter/codeconverter/qom_macros.py | 628 ++++++++++++++++++
 .../codeconverter/qom_type_info.py            | 314 +++++++++
 .../codeconverter/codeconverter/regexps.py    |  89 +++
 .../codeconverter/test_patching.py            |  98 +++
 .../codeconverter/test_regexps.py             | 272 ++++++++
 scripts/codeconverter/codeconverter/utils.py  |  65 ++
 scripts/codeconverter/converter.py            | 113 ++++
 chardev/chardev-internal.h                    |   8 +-
 hw/9pfs/virtio-9p.h                           |  11 +-
 hw/audio/intel-hda.h                          |  20 +-
 hw/avr/atmega.h                               |   9 +-
 hw/block/nvme.h                               |  10 +-
 hw/display/ati_int.h                          |   9 +-
 hw/display/qxl.h                              |   9 +-
 hw/display/virtio-vga.h                       |  17 +-
 hw/i386/amd_iommu.h                           |  10 +-
 hw/ide/ahci_internal.h                        |   5 -
 hw/misc/tmp105.h                              |   9 +-
 hw/net/fsl_etsec/etsec.h                      |  10 +-
 hw/net/rocker/rocker.h                        |   7 +-
 hw/net/tulip.h                                |   5 +-
 hw/net/vmxnet3_defs.h                         |   9 +-
 hw/ppc/e500-ccsr.h                            |   9 +-
 hw/ppc/e500.h                                 |  19 +-
 hw/ppc/mac.h                                  |  19 +-
 hw/rdma/vmw/pvrdma.h                          |   9 +-
 hw/s390x/ccw-device.h                         |  17 +-
 hw/s390x/ipl.h                                |   6 +-
 hw/s390x/s390-pci-bus.h                       |  34 +-
 hw/s390x/virtio-ccw.h                         | 141 ++--
 hw/scsi/mptsas.h                              |   7 +-
 hw/usb/ccid.h                                 |  14 +-
 hw/usb/hcd-dwc2.h                             |   9 +-
 hw/usb/hcd-ehci.h                             |  36 +-
 hw/usb/hcd-ohci.h                             |   9 +-
 hw/usb/hcd-xhci.h                             |   7 +-
 hw/vfio/pci.h                                 |  10 +-
 hw/virtio/virtio-mem-pci.h                    |   5 +-
 hw/virtio/virtio-pci.h                        |  24 +-
 hw/virtio/virtio-pmem-pci.h                   |   5 +-
 hw/xen/xen_pt.h                               |   5 +-
 include/authz/base.h                          |  15 +-
 include/authz/list.h                          |  17 +-
 include/authz/listfile.h                      |  17 +-
 include/authz/pamacct.h                       |  17 +-
 include/authz/simple.h                        |  17 +-
 include/block/throttle-groups.h               |   5 +-
 include/chardev/char-fd.h                     |   9 +-
 include/chardev/char-win.h                    |   9 +-
 include/chardev/char.h                        |  12 +-
 include/chardev/spice.h                       |   9 +-
 include/crypto/secret.h                       |  11 +-
 include/crypto/secret_common.h                |  12 +-
 include/crypto/secret_keyring.h               |  24 +-
 include/crypto/tls-cipher-suites.h            |   9 +-
 include/crypto/tlscreds.h                     |  13 +-
 include/crypto/tlscredsanon.h                 |  15 +-
 include/crypto/tlscredspsk.h                  |  14 +-
 include/crypto/tlscredsx509.h                 |  14 +-
 include/exec/memory.h                         |  19 +-
 include/hw/acpi/acpi_dev_interface.h          |  13 +-
 include/hw/acpi/generic_event_device.h        |  10 +-
 include/hw/acpi/vmgenid.h                     |   9 +-
 include/hw/adc/stm32f2xx_adc.h                |  10 +-
 include/hw/arm/allwinner-a10.h                |   9 +-
 include/hw/arm/allwinner-h3.h                 |  70 +-
 include/hw/arm/armsse.h                       |  18 +-
 include/hw/arm/armv7m.h                       |  17 +-
 include/hw/arm/aspeed.h                       |  14 +-
 include/hw/arm/aspeed_soc.h                   | 110 +--
 include/hw/arm/bcm2835_peripherals.h          |  10 +-
 include/hw/arm/bcm2836.h                      |  18 +-
 include/hw/arm/digic.h                        |   9 +-
 include/hw/arm/exynos4210.h                   |  10 +-
 include/hw/arm/fsl-imx25.h                    |   9 +-
 include/hw/arm/fsl-imx31.h                    |   9 +-
 include/hw/arm/fsl-imx6.h                     |   9 +-
 include/hw/arm/fsl-imx6ul.h                   |   9 +-
 include/hw/arm/fsl-imx7.h                     |   9 +-
 include/hw/arm/linux-boot-if.h                |  11 +-
 include/hw/arm/msf2-soc.h                     |   9 +-
 include/hw/arm/nrf51_soc.h                    |  10 +-
 include/hw/arm/omap.h                         |  20 +-
 include/hw/arm/pxa.h                          |  16 +
 include/hw/arm/smmu-common.h                  |  18 +-
 include/hw/arm/smmuv3.h                       |  18 +-
 include/hw/arm/stm32f205_soc.h                |  10 +-
 include/hw/arm/stm32f405_soc.h                |  10 +-
 include/hw/arm/virt.h                         |  19 +-
 include/hw/arm/xlnx-versal.h                  |   9 +-
 include/hw/arm/xlnx-zynqmp.h                  |  10 +-
 include/hw/block/flash.h                      |  13 +-
 include/hw/block/swim.h                       |  12 +-
 include/hw/boards.h                           |   8 +-
 include/hw/char/avr_usart.h                   |  10 +-
 include/hw/char/bcm2835_aux.h                 |   9 +-
 include/hw/char/cadence_uart.h                |  10 +-
 include/hw/char/cmsdk-apb-uart.h              |  10 +-
 include/hw/char/digic-uart.h                  |  10 +-
 include/hw/char/escc.h                        |   9 +-
 include/hw/char/ibex_uart.h                   |  10 +-
 include/hw/char/imx_serial.h                  |   9 +-
 include/hw/char/nrf51_uart.h                  |   9 +-
 include/hw/char/pl011.h                       |   9 +-
 include/hw/char/renesas_sci.h                 |   9 +-
 include/hw/char/serial.h                      |  25 +-
 include/hw/char/stm32f2xx_usart.h             |  10 +-
 include/hw/clock.h                            |   5 +-
 include/hw/core/cpu.h                         |  10 +-
 include/hw/core/generic-loader.h              |  10 +-
 include/hw/core/split-irq.h                   |   3 +-
 include/hw/cpu/a15mpcore.h                    |  10 +-
 include/hw/cpu/a9mpcore.h                     |  10 +-
 include/hw/cpu/arm11mpcore.h                  |  10 +-
 include/hw/cpu/cluster.h                      |  10 +-
 include/hw/cpu/core.h                         |  10 +-
 include/hw/display/bcm2835_fb.h               |   9 +-
 include/hw/display/dpcd.h                     |   4 +-
 include/hw/display/i2c-ddc.h                  |   4 +-
 include/hw/display/macfb.h                    |  22 +-
 include/hw/display/xlnx_dp.h                  |   9 +-
 include/hw/dma/bcm2835_dma.h                  |  10 +-
 include/hw/dma/i8257.h                        |   8 +-
 include/hw/dma/pl080.h                        |   9 +-
 include/hw/dma/xlnx-zdma.h                    |  10 +-
 include/hw/dma/xlnx-zynq-devcfg.h             |  10 +-
 include/hw/dma/xlnx_dpdma.h                   |   4 +-
 include/hw/fw-path-provider.h                 |  11 +-
 include/hw/gpio/aspeed_gpio.h                 |  18 +-
 include/hw/gpio/bcm2835_gpio.h                |  10 +-
 include/hw/gpio/imx_gpio.h                    |   9 +-
 include/hw/gpio/nrf51_gpio.h                  |   9 +-
 include/hw/hotplug.h                          |  11 +-
 include/hw/hyperv/vmbus-bridge.h              |  12 +-
 include/hw/hyperv/vmbus.h                     |  19 +-
 include/hw/i2c/arm_sbcon_i2c.h                |  10 +-
 include/hw/i2c/aspeed_i2c.h                   |  19 +-
 include/hw/i2c/i2c.h                          |  19 +-
 include/hw/i2c/imx_i2c.h                      |   9 +-
 include/hw/i2c/microbit_i2c.h                 |  10 +-
 include/hw/i2c/ppc4xx_i2c.h                   |   9 +-
 include/hw/i2c/smbus_slave.h                  |  15 +-
 include/hw/i386/apic_internal.h               |  17 +-
 include/hw/i386/ich9.h                        |  10 +-
 include/hw/i386/intel_iommu.h                 |   7 +-
 include/hw/i386/ioapic_internal.h             |  16 +-
 include/hw/i386/microvm.h                     |  19 +-
 include/hw/i386/pc.h                          |  14 +-
 include/hw/i386/x86-iommu.h                   |   5 +-
 include/hw/i386/x86.h                         |  19 +-
 include/hw/ide/ahci.h                         |  17 +-
 include/hw/ide/internal.h                     |  19 +-
 include/hw/ide/pci.h                          |   9 +-
 include/hw/input/adb.h                        |  16 +-
 include/hw/input/i8042.h                      |   5 +-
 include/hw/intc/allwinner-a10-pic.h           |   9 +-
 include/hw/intc/arm_gic.h                     |  15 +-
 include/hw/intc/arm_gic_common.h              |  21 +-
 include/hw/intc/arm_gicv3.h                   |  14 +-
 include/hw/intc/arm_gicv3_common.h            |  16 +-
 include/hw/intc/arm_gicv3_its_common.h        |  11 +-
 include/hw/intc/armv7m_nvic.h                 |  10 +-
 include/hw/intc/aspeed_vic.h                  |   9 +-
 include/hw/intc/bcm2835_ic.h                  |   9 +-
 include/hw/intc/bcm2836_control.h             |  10 +-
 include/hw/intc/heathrow_pic.h                |   9 +-
 include/hw/intc/ibex_plic.h                   |  10 +-
 include/hw/intc/imx_avic.h                    |   9 +-
 include/hw/intc/imx_gpcv2.h                   |   9 +-
 include/hw/intc/intc.h                        |  11 +-
 include/hw/intc/mips_gic.h                    |   6 +-
 include/hw/intc/realview_gic.h                |  10 +-
 include/hw/intc/rx_icu.h                      |   4 +-
 include/hw/intc/xlnx-pmu-iomod-intc.h         |  10 +-
 include/hw/intc/xlnx-zynqmp-ipi.h             |  10 +-
 include/hw/ipack/ipack.h                      |  14 +-
 include/hw/ipmi/ipmi.h                        |  36 +-
 include/hw/isa/i8259_internal.h               |  15 +-
 include/hw/isa/isa.h                          |  28 +-
 include/hw/isa/pc87312.h                      |   9 +-
 include/hw/isa/superio.h                      |  19 +-
 include/hw/m68k/mcf_fec.h                     |   5 +-
 include/hw/mem/memory-device.h                |  11 +-
 include/hw/mem/nvdimm.h                       |  11 +-
 include/hw/mem/pc-dimm.h                      |  17 +-
 include/hw/mips/cps.h                         |   9 +-
 include/hw/misc/a9scu.h                       |   9 +-
 include/hw/misc/allwinner-cpucfg.h            |   9 +-
 include/hw/misc/allwinner-h3-ccu.h            |   9 +-
 include/hw/misc/allwinner-h3-dramc.h          |   9 +-
 include/hw/misc/allwinner-h3-sysctrl.h        |   9 +-
 include/hw/misc/allwinner-sid.h               |   9 +-
 include/hw/misc/arm11scu.h                    |   9 +-
 include/hw/misc/armsse-cpuid.h                |   9 +-
 include/hw/misc/armsse-mhu.h                  |   9 +-
 include/hw/misc/aspeed_scu.h                  |  18 +-
 include/hw/misc/aspeed_sdmc.h                 |  18 +-
 include/hw/misc/aspeed_xdma.h                 |   9 +-
 include/hw/misc/auxbus.h                      |  12 +-
 include/hw/misc/avr_power.h                   |   9 +-
 include/hw/misc/bcm2835_mbox.h                |  10 +-
 include/hw/misc/bcm2835_mphi.h                |   5 +-
 include/hw/misc/bcm2835_property.h            |  10 +-
 include/hw/misc/bcm2835_rng.h                 |  10 +-
 include/hw/misc/bcm2835_thermal.h             |  10 +-
 include/hw/misc/grlib_ahb_apb_pnp.h           |   9 +-
 include/hw/misc/imx25_ccm.h                   |   9 +-
 include/hw/misc/imx31_ccm.h                   |   9 +-
 include/hw/misc/imx6_ccm.h                    |   9 +-
 include/hw/misc/imx6_src.h                    |   9 +-
 include/hw/misc/imx6ul_ccm.h                  |   9 +-
 include/hw/misc/imx7_ccm.h                    |  17 +-
 include/hw/misc/imx7_gpr.h                    |   9 +-
 include/hw/misc/imx7_snvs.h                   |   9 +-
 include/hw/misc/imx_ccm.h                     |  11 +-
 include/hw/misc/imx_rngc.h                    |   9 +-
 include/hw/misc/iotkit-secctl.h               |   6 +-
 include/hw/misc/iotkit-sysctl.h               |  10 +-
 include/hw/misc/iotkit-sysinfo.h              |  10 +-
 include/hw/misc/mac_via.h                     |  27 +-
 include/hw/misc/macio/cuda.h                  |  18 +-
 include/hw/misc/macio/gpio.h                  |   9 +-
 include/hw/misc/macio/macio.h                 |  43 +-
 include/hw/misc/macio/pmu.h                   |  18 +-
 include/hw/misc/max111x.h                     |  10 +-
 include/hw/misc/mips_cmgcr.h                  |   6 +-
 include/hw/misc/mips_cpc.h                    |   9 +-
 include/hw/misc/mips_itu.h                    |   9 +-
 include/hw/misc/mos6522.h                     |  11 +-
 include/hw/misc/mps2-fpgaio.h                 |   9 +-
 include/hw/misc/mps2-scc.h                    |   9 +-
 include/hw/misc/msf2-sysreg.h                 |   9 +-
 include/hw/misc/nrf51_rng.h                   |   9 +-
 include/hw/misc/pca9552.h                     |   9 +-
 include/hw/misc/stm32f2xx_syscfg.h            |  10 +-
 include/hw/misc/stm32f4xx_exti.h              |  10 +-
 include/hw/misc/stm32f4xx_syscfg.h            |  10 +-
 include/hw/misc/tz-mpc.h                      |   6 +-
 include/hw/misc/tz-msc.h                      |   9 +-
 include/hw/misc/tz-ppc.h                      |   6 +-
 include/hw/misc/unimp.h                       |  10 +-
 include/hw/misc/vmcoreinfo.h                  |   9 +-
 include/hw/misc/zynq-xadc.h                   |  10 +-
 include/hw/net/allwinner-sun8i-emac.h         |   9 +-
 include/hw/net/allwinner_emac.h               |   9 +-
 include/hw/net/cadence_gem.h                  |   9 +-
 include/hw/net/ftgmac100.h                    |  17 +-
 include/hw/net/imx_fec.h                      |   9 +-
 include/hw/net/lance.h                        |  10 +-
 include/hw/net/lasi_82596.h                   |  10 +-
 include/hw/net/msf2-emac.h                    |  10 +-
 include/hw/nmi.h                              |  11 +-
 include/hw/nubus/mac-nubus-bridge.h           |  10 +-
 include/hw/nubus/nubus.h                      |  19 +-
 include/hw/nvram/fw_cfg.h                     |  21 +-
 include/hw/nvram/nrf51_nvm.h                  |   9 +-
 include/hw/or-irq.h                           |   3 +-
 include/hw/pci-bridge/simba.h                 |  10 +-
 include/hw/pci-host/designware.h              |  16 +-
 include/hw/pci-host/gpex.h                    |  19 +-
 include/hw/pci-host/i440fx.h                  |  10 +-
 include/hw/pci-host/pnv_phb3.h                |  20 +-
 include/hw/pci-host/pnv_phb4.h                |  21 +-
 include/hw/pci-host/q35.h                     |  19 +-
 include/hw/pci-host/sabre.h                   |  19 +-
 include/hw/pci-host/spapr.h                   |   7 +-
 include/hw/pci-host/uninorth.h                |  31 +-
 include/hw/pci-host/xilinx-pcie.h             |  19 +-
 include/hw/pci/pci.h                          |  20 +-
 include/hw/pci/pci_bridge.h                   |   4 +-
 include/hw/pci/pci_bus.h                      |   4 +-
 include/hw/pci/pci_host.h                     |  14 +-
 include/hw/pci/pcie_host.h                    |   5 +-
 include/hw/pci/pcie_port.h                    |  18 +-
 include/hw/pcmcia.h                           |  19 +-
 include/hw/platform-bus.h                     |   9 +-
 include/hw/ppc/mac_dbdma.h                    |   9 +-
 include/hw/ppc/openpic.h                      |   9 +-
 include/hw/ppc/pnv.h                          |  75 +--
 include/hw/ppc/pnv_core.h                     |  26 +-
 include/hw/ppc/pnv_homer.h                    |  22 +-
 include/hw/ppc/pnv_lpc.h                      |  28 +-
 include/hw/ppc/pnv_occ.h                      |  22 +-
 include/hw/ppc/pnv_pnor.h                     |   9 +-
 include/hw/ppc/pnv_psi.h                      |  35 +-
 include/hw/ppc/pnv_xive.h                     |  16 +-
 include/hw/ppc/pnv_xscom.h                    |  10 +-
 include/hw/ppc/spapr.h                        |  24 +-
 include/hw/ppc/spapr_cpu_core.h               |  17 +-
 include/hw/ppc/spapr_drc.h                    |  80 +--
 include/hw/ppc/spapr_irq.h                    |  48 +-
 include/hw/ppc/spapr_tpm_proxy.h              |   9 +-
 include/hw/ppc/spapr_vio.h                    |  19 +-
 include/hw/ppc/spapr_xive.h                   |  19 +-
 include/hw/ppc/xics.h                         |  31 +-
 include/hw/ppc/xics_spapr.h                   |   5 +-
 include/hw/ppc/xive.h                         |  77 ++-
 include/hw/qdev-core.h                        |  15 +-
 include/hw/rdma/rdma.h                        |   5 +-
 include/hw/register.h                         |   4 +-
 include/hw/resettable.h                       |  11 +-
 include/hw/riscv/opentitan.h                  |  48 +-
 include/hw/riscv/riscv_hart.h                 |  10 +-
 include/hw/riscv/sifive_clint.h               |  10 +-
 include/hw/riscv/sifive_e.h                   |  57 +-
 include/hw/riscv/sifive_e_prci.h              |  10 +-
 include/hw/riscv/sifive_gpio.h                |   9 +-
 include/hw/riscv/sifive_plic.h                |  10 +-
 include/hw/riscv/sifive_test.h                |  10 +-
 include/hw/riscv/sifive_u.h                   |  49 +-
 include/hw/riscv/sifive_u_otp.h               |  10 +-
 include/hw/riscv/sifive_u_prci.h              |  10 +-
 include/hw/riscv/sifive_uart.h                |  10 +-
 include/hw/riscv/virt.h                       |  10 +-
 include/hw/rtc/allwinner-rtc.h                |  18 +-
 include/hw/rtc/aspeed_rtc.h                   |   9 +-
 include/hw/rtc/goldfish_rtc.h                 |  10 +-
 include/hw/rtc/m48t59.h                       |  11 +-
 include/hw/rtc/mc146818rtc.h                  |   9 +-
 include/hw/rtc/pl031.h                        |   9 +-
 include/hw/rtc/xlnx-zynqmp-rtc.h              |  10 +-
 include/hw/rx/rx62n.h                         |   9 +-
 include/hw/s390x/3270-ccw.h                   |  19 +-
 include/hw/s390x/ap-device.h                  |  10 +-
 include/hw/s390x/css-bridge.h                 |  18 +-
 include/hw/s390x/event-facility.h             |  35 +-
 include/hw/s390x/s390-ccw.h                   |  19 +-
 include/hw/s390x/s390-virtio-ccw.h            |  11 +-
 include/hw/s390x/s390_flic.h                  |  31 +-
 include/hw/s390x/sclp.h                       |  18 +-
 include/hw/s390x/storage-attributes.h         |  37 +-
 include/hw/s390x/storage-keys.h               |  28 +-
 include/hw/s390x/tod.h                        |  18 +-
 include/hw/s390x/vfio-ccw.h                   |   7 +-
 include/hw/scsi/esp.h                         |   9 +-
 include/hw/scsi/scsi.h                        |  19 +-
 include/hw/sd/allwinner-sdhost.h              |  18 +-
 include/hw/sd/aspeed_sdhci.h                  |  10 +-
 include/hw/sd/bcm2835_sdhost.h                |  10 +-
 include/hw/sd/sd.h                            |  23 +-
 include/hw/sd/sdhci.h                         |  13 +-
 include/hw/southbridge/piix.h                 |  10 +-
 include/hw/sparc/sparc32_dma.h                |  34 +-
 include/hw/sparc/sun4m_iommu.h                |   9 +-
 include/hw/sparc/sun4u_iommu.h                |   9 +-
 include/hw/ssi/aspeed_smc.h                   |  18 +-
 include/hw/ssi/imx_spi.h                      |   9 +-
 include/hw/ssi/mss-spi.h                      |   9 +-
 include/hw/ssi/pl022.h                        |   9 +-
 include/hw/ssi/ssi.h                          |  11 +-
 include/hw/ssi/stm32f2xx_spi.h                |  10 +-
 include/hw/ssi/xilinx_spips.h                 |  32 +-
 include/hw/stream.h                           |  11 +-
 include/hw/sysbus.h                           |  17 +-
 include/hw/timer/a9gtimer.h                   |   6 +-
 include/hw/timer/allwinner-a10-pit.h          |   6 +-
 include/hw/timer/arm_mptimer.h                |  10 +-
 include/hw/timer/armv7m_systick.h             |   9 +-
 include/hw/timer/aspeed_timer.h               |  19 +-
 include/hw/timer/avr_timer16.h                |  10 +-
 include/hw/timer/bcm2835_systmr.h             |  10 +-
 include/hw/timer/cmsdk-apb-dualtimer.h        |   7 +-
 include/hw/timer/cmsdk-apb-timer.h            |  10 +-
 include/hw/timer/digic-timer.h                |   9 +-
 include/hw/timer/i8254.h                      |  11 +-
 include/hw/timer/i8254_internal.h             |   8 +-
 include/hw/timer/imx_epit.h                   |   9 +-
 include/hw/timer/imx_gpt.h                    |   9 +-
 include/hw/timer/mss-timer.h                  |  10 +-
 include/hw/timer/nrf51_timer.h                |   9 +-
 include/hw/timer/renesas_cmt.h                |   9 +-
 include/hw/timer/renesas_tmr.h                |   9 +-
 include/hw/timer/stm32f2xx_timer.h            |  10 +-
 include/hw/usb.h                              |  17 +-
 include/hw/usb/chipidea.h                     |   9 +-
 include/hw/usb/imx-usb-phy.h                  |   9 +-
 include/hw/vfio/vfio-amd-xgbe.h               |  11 +-
 include/hw/vfio/vfio-calxeda-xgmac.h          |  21 +-
 include/hw/vfio/vfio-platform.h               |  19 +-
 include/hw/virtio/vhost-scsi-common.h         |  10 +-
 include/hw/virtio/vhost-scsi.h                |  10 +-
 include/hw/virtio/vhost-user-blk.h            |  10 +-
 include/hw/virtio/vhost-user-fs.h             |  10 +-
 include/hw/virtio/vhost-user-scsi.h           |  10 +-
 include/hw/virtio/vhost-user-vsock.h          |  10 +-
 include/hw/virtio/vhost-vsock-common.h        |  10 +-
 include/hw/virtio/vhost-vsock.h               |  10 +-
 include/hw/virtio/virtio-balloon.h            |  10 +-
 include/hw/virtio/virtio-blk.h                |  10 +-
 include/hw/virtio/virtio-bus.h                |  15 +-
 include/hw/virtio/virtio-crypto.h             |  10 +-
 include/hw/virtio/virtio-gpu-pci.h            |   5 +-
 include/hw/virtio/virtio-gpu.h                |  33 +-
 include/hw/virtio/virtio-input.h              |  29 +-
 include/hw/virtio/virtio-iommu.h              |  10 +-
 include/hw/virtio/virtio-mem.h                |  17 +-
 include/hw/virtio/virtio-mmio.h               |  19 +-
 include/hw/virtio/virtio-net.h                |   7 +-
 include/hw/virtio/virtio-pmem.h               |  17 +-
 include/hw/virtio/virtio-rng.h                |  10 +-
 include/hw/virtio/virtio-scsi.h               |  19 +-
 include/hw/virtio/virtio-serial.h             |  23 +-
 include/hw/virtio/virtio.h                    |  14 +-
 include/hw/vmstate-if.h                       |  11 +-
 include/hw/watchdog/cmsdk-apb-watchdog.h      |  10 +-
 include/hw/watchdog/wdt_aspeed.h              |  19 +-
 include/hw/watchdog/wdt_diag288.h             |  19 +-
 include/hw/watchdog/wdt_imx2.h                |   9 +-
 include/hw/xen/xen-block.h                    |  39 +-
 include/hw/xen/xen-bus.h                      |  37 +-
 include/hw/xen/xen-legacy-backend.h           |   6 +-
 include/io/channel-buffer.h                   |   7 +-
 include/io/channel-command.h                  |   7 +-
 include/io/channel-file.h                     |   7 +-
 include/io/channel-socket.h                   |   7 +-
 include/io/channel-tls.h                      |   7 +-
 include/io/channel-websock.h                  |   7 +-
 include/io/channel.h                          |  12 +-
 include/io/dns-resolver.h                     |  13 +-
 include/io/net-listener.h                     |  14 +-
 include/net/can_emu.h                         |   8 +-
 include/net/can_host.h                        |  21 +-
 include/net/filter.h                          |  13 +-
 include/qom/object.h                          | 332 ++++++++-
 include/qom/object_interfaces.h               |  13 +-
 include/scsi/pr-manager.h                     |  16 +-
 include/sysemu/accel.h                        |  18 +-
 include/sysemu/cryptodev.h                    |  16 +-
 include/sysemu/hostmem.h                      |  10 +-
 include/sysemu/hvf.h                          |   8 +-
 include/sysemu/iothread.h                     |   9 +-
 include/sysemu/kvm.h                          |   7 +
 include/sysemu/kvm_int.h                      |   5 -
 include/sysemu/rng-random.h                   |   5 +-
 include/sysemu/rng.h                          |  10 +-
 include/sysemu/tpm.h                          |  11 +-
 include/sysemu/tpm_backend.h                  |  12 +-
 include/sysemu/vhost-user-backend.h           |  17 +-
 include/ui/console.h                          |  10 +-
 migration/migration.h                         |   6 +-
 target/alpha/cpu-qom.h                        |  14 +-
 target/arm/cpu-qom.h                          |  19 +-
 target/arm/idau.h                             |  11 +-
 target/avr/cpu-qom.h                          |  14 +-
 target/cris/cpu-qom.h                         |  14 +-
 target/hppa/cpu-qom.h                         |  14 +-
 target/i386/cpu-qom.h                         |  14 +-
 target/i386/hvf/hvf-i386.h                    |   4 +-
 target/lm32/cpu-qom.h                         |  14 +-
 target/m68k/cpu-qom.h                         |  14 +-
 target/microblaze/cpu-qom.h                   |  14 +-
 target/mips/cpu-qom.h                         |  14 +-
 target/moxie/cpu.h                            |  17 +-
 target/nios2/cpu.h                            |  17 +-
 target/openrisc/cpu.h                         |  17 +-
 target/ppc/cpu-qom.h                          |  14 +-
 target/ppc/cpu.h                              |  11 +-
 target/riscv/cpu.h                            |  17 +-
 target/rx/cpu-qom.h                           |   6 +-
 target/s390x/cpu-qom.h                        |  14 +-
 target/sh4/cpu-qom.h                          |  14 +-
 target/sparc/cpu-qom.h                        |  14 +-
 target/tilegx/cpu.h                           |  17 +-
 target/tricore/cpu-qom.h                      |  14 +-
 target/unicore32/cpu-qom.h                    |  14 +-
 target/xtensa/cpu-qom.h                       |  14 +-
 accel/accel.c                                 |   6 +-
 accel/kvm/kvm-all.c                           |   6 +-
 accel/qtest.c                                 |   6 +-
 accel/tcg/tcg-all.c                           |  15 +-
 accel/xen/xen-all.c                           |   6 +-
 authz/base.c                                  |   6 +-
 authz/list.c                                  |   7 +-
 authz/listfile.c                              |   7 +-
 authz/pamacct.c                               |   7 +-
 authz/simple.c                                |   7 +-
 backends/cryptodev-builtin.c                  |  15 +-
 backends/cryptodev-vhost-user.c               |  18 +-
 backends/cryptodev.c                          |   7 +-
 backends/dbus-vmstate.c                       |  23 +-
 backends/hostmem-file.c                       |  13 +-
 backends/hostmem-memfd.c                      |   9 +-
 backends/hostmem-ram.c                        |   6 +-
 backends/hostmem.c                            |   6 +-
 backends/rng-builtin.c                        |  15 +-
 backends/rng-egd.c                            |  16 +-
 backends/rng-random.c                         |   6 +-
 backends/rng.c                                |   6 +-
 backends/tpm/tpm_backend.c                    |   8 +-
 backends/tpm/tpm_emulator.c                   |  16 +-
 backends/tpm/tpm_passthrough.c                |  13 +-
 backends/vhost-user.c                         |   6 +-
 block/throttle-groups.c                       |  10 +-
 chardev/baum.c                                |  15 +-
 chardev/char-console.c                        |   6 +-
 chardev/char-fd.c                             |   6 +-
 chardev/char-mux.c                            |   6 +-
 chardev/char-null.c                           |   6 +-
 chardev/char-parallel.c                       |  23 +-
 chardev/char-pty.c                            |  15 +-
 chardev/char-ringbuf.c                        |  18 +-
 chardev/char-socket.c                         |  16 +-
 chardev/char-udp.c                            |  15 +-
 chardev/char-win-stdio.c                      |  16 +-
 chardev/char-win.c                            |   6 +-
 chardev/char.c                                |   6 +-
 chardev/msmouse.c                             |  16 +-
 chardev/spice.c                               |  10 +-
 chardev/testdev.c                             |  16 +-
 chardev/wctablet.c                            |  16 +-
 crypto/secret.c                               |  24 +-
 crypto/secret_common.c                        |  32 +-
 crypto/secret_keyring.c                       |  28 +-
 crypto/tls-cipher-suites.c                    |   6 +-
 crypto/tlscreds.c                             |  25 +-
 crypto/tlscredsanon.c                         |  23 +-
 crypto/tlscredspsk.c                          |  25 +-
 crypto/tlscredsx509.c                         |  29 +-
 gdbstub.c                                     |   6 +-
 hw/9pfs/virtio-9p-device.c                    |   6 +-
 hw/acpi/generic_event_device.c                |   6 +-
 hw/acpi/piix4.c                               |  16 +-
 hw/acpi/vmgenid.c                             |   6 +-
 hw/adc/stm32f2xx_adc.c                        |   6 +-
 hw/alpha/typhoon.c                            |  18 +-
 hw/arm/allwinner-a10.c                        |   6 +-
 hw/arm/allwinner-h3.c                         | 130 ++--
 hw/arm/armsse.c                               |  26 +-
 hw/arm/armv7m.c                               |   8 +-
 hw/arm/aspeed.c                               |   4 +-
 hw/arm/aspeed_ast2600.c                       | 208 +++---
 hw/arm/aspeed_soc.c                           | 228 +++----
 hw/arm/bcm2835_peripherals.c                  |   6 +-
 hw/arm/bcm2836.c                              |   2 +-
 hw/arm/boot.c                                 |   6 +-
 hw/arm/collie.c                               |  16 +-
 hw/arm/digic.c                                |   6 +-
 hw/arm/exynos4210.c                           |   6 +-
 hw/arm/exynos4_boards.c                       |   8 +-
 hw/arm/fsl-imx25.c                            |   6 +-
 hw/arm/fsl-imx31.c                            |   6 +-
 hw/arm/fsl-imx6.c                             |   6 +-
 hw/arm/fsl-imx6ul.c                           |   6 +-
 hw/arm/fsl-imx7.c                             |   6 +-
 hw/arm/gumstix.c                              |   8 +-
 hw/arm/highbank.c                             |  24 +-
 hw/arm/integratorcp.c                         |  38 +-
 hw/arm/microbit.c                             |  16 +-
 hw/arm/mps2-tz.c                              |  29 +-
 hw/arm/mps2.c                                 |  29 +-
 hw/arm/msf2-soc.c                             |   6 +-
 hw/arm/musca.c                                |  29 +-
 hw/arm/musicpal.c                             |  95 +--
 hw/arm/nrf51_soc.c                            |   6 +-
 hw/arm/nseries.c                              |   8 +-
 hw/arm/omap_sx1.c                             |   8 +-
 hw/arm/orangepi.c                             |   6 +-
 hw/arm/palm.c                                 |  16 +-
 hw/arm/pxa2xx.c                               |  49 +-
 hw/arm/pxa2xx_gpio.c                          |  13 +-
 hw/arm/pxa2xx_pic.c                           |  16 +-
 hw/arm/raspi.c                                |  19 +-
 hw/arm/realview.c                             |  12 +-
 hw/arm/sbsa-ref.c                             |  16 +-
 hw/arm/smmu-common.c                          |   6 +-
 hw/arm/spitz.c                                |  89 ++-
 hw/arm/stellaris.c                            |  46 +-
 hw/arm/stm32f205_soc.c                        |   6 +-
 hw/arm/stm32f405_soc.c                        |   6 +-
 hw/arm/strongarm.c                            |  65 +-
 hw/arm/tosa.c                                 |  28 +-
 hw/arm/versatilepb.c                          |  24 +-
 hw/arm/vexpress.c                             |  29 +-
 hw/arm/virt.c                                 |   6 +-
 hw/arm/xilinx_zynq.c                          |  16 +-
 hw/arm/xlnx-versal-virt.c                     |  16 +-
 hw/arm/xlnx-versal.c                          |   6 +-
 hw/arm/xlnx-zcu102.c                          |  16 +-
 hw/arm/xlnx-zynqmp.c                          |   6 +-
 hw/arm/z2.c                                   |  17 +-
 hw/audio/ac97.c                               |  10 +-
 hw/audio/adlib.c                              |   9 +-
 hw/audio/cs4231.c                             |  16 +-
 hw/audio/cs4231a.c                            |   9 +-
 hw/audio/es1370.c                             |  10 +-
 hw/audio/gus.c                                |   9 +-
 hw/audio/hda-codec.c                          |  16 +-
 hw/audio/intel-hda.c                          |  15 +-
 hw/audio/marvell_88w8618.c                    |  16 +-
 hw/audio/milkymist-ac97.c                     |  13 +-
 hw/audio/pcspk.c                              |  11 +-
 hw/audio/pl041.c                              |  15 +-
 hw/audio/sb16.c                               |   9 +-
 hw/audio/wm8750.c                             |  15 +-
 hw/avr/arduino.c                              |  19 +-
 hw/avr/atmega.c                               |  12 +-
 hw/block/fdc.c                                |  50 +-
 hw/block/m25p80.c                             |  21 +-
 hw/block/nand.c                               |  11 +-
 hw/block/nvme.c                               |   6 +-
 hw/block/onenand.c                            |  15 +-
 hw/block/pflash_cfi01.c                       |   6 +-
 hw/block/pflash_cfi02.c                       |   6 +-
 hw/block/swim.c                               |  10 +-
 hw/block/vhost-user-blk.c                     |   6 +-
 hw/block/virtio-blk.c                         |   6 +-
 hw/block/xen-block.c                          |  10 +-
 hw/char/avr_usart.c                           |   6 +-
 hw/char/bcm2835_aux.c                         |   6 +-
 hw/char/cadence_uart.c                        |   6 +-
 hw/char/cmsdk-apb-uart.c                      |   6 +-
 hw/char/debugcon.c                            |  16 +-
 hw/char/digic-uart.c                          |   6 +-
 hw/char/escc.c                                |   6 +-
 hw/char/etraxfs_ser.c                         |  16 +-
 hw/char/exynos4210_uart.c                     |  16 +-
 hw/char/grlib_apbuart.c                       |  16 +-
 hw/char/ibex_uart.c                           |   6 +-
 hw/char/imx_serial.c                          |   6 +-
 hw/char/ipoctal232.c                          |  11 +-
 hw/char/lm32_juart.c                          |  12 +-
 hw/char/lm32_uart.c                           |  12 +-
 hw/char/mcf_uart.c                            |  15 +-
 hw/char/milkymist-uart.c                      |  13 +-
 hw/char/nrf51_uart.c                          |   6 +-
 hw/char/parallel.c                            |  16 +-
 hw/char/pl011.c                               |   8 +-
 hw/char/renesas_sci.c                         |   6 +-
 hw/char/sclpconsole-lm.c                      |  16 +-
 hw/char/sclpconsole.c                         |  16 +-
 hw/char/serial-isa.c                          |  15 +-
 hw/char/serial-pci-multi.c                    |   8 +-
 hw/char/serial-pci.c                          |  15 +-
 hw/char/serial.c                              |  10 +-
 hw/char/spapr_vty.c                           |  12 +-
 hw/char/stm32f2xx_usart.c                     |   6 +-
 hw/char/terminal3270.c                        |  16 +-
 hw/char/virtio-console.c                      |  18 +-
 hw/char/virtio-serial-bus.c                   |  14 +-
 hw/char/xilinx_uartlite.c                     |  16 +-
 hw/core/bus.c                                 |   6 +-
 hw/core/clock.c                               |   6 +-
 hw/core/cpu.c                                 |   6 +-
 hw/core/fw-path-provider.c                    |   6 +-
 hw/core/generic-loader.c                      |   6 +-
 hw/core/hotplug.c                             |   6 +-
 hw/core/irq.c                                 |   9 +-
 hw/core/machine.c                             |   6 +-
 hw/core/nmi.c                                 |   6 +-
 hw/core/or-irq.c                              |   6 +-
 hw/core/platform-bus.c                        |   6 +-
 hw/core/qdev.c                                |   6 +-
 hw/core/register.c                            |   6 +-
 hw/core/resettable.c                          |   6 +-
 hw/core/split-irq.c                           |   6 +-
 hw/core/stream.c                              |   6 +-
 hw/core/sysbus.c                              |   8 +-
 hw/core/vmstate-if.c                          |   6 +-
 hw/cpu/a15mpcore.c                            |   6 +-
 hw/cpu/a9mpcore.c                             |   6 +-
 hw/cpu/arm11mpcore.c                          |   6 +-
 hw/cpu/cluster.c                              |   6 +-
 hw/cpu/core.c                                 |   6 +-
 hw/cpu/realview_mpcore.c                      |  16 +-
 hw/display/ads7846.c                          |  15 +-
 hw/display/artist.c                           |  15 +-
 hw/display/ati.c                              |   6 +-
 hw/display/bcm2835_fb.c                       |   6 +-
 hw/display/bochs-display.c                    |  16 +-
 hw/display/cg3.c                              |  15 +-
 hw/display/cirrus_vga.c                       |  16 +-
 hw/display/cirrus_vga_isa.c                   |  16 +-
 hw/display/dpcd.c                             |   6 +-
 hw/display/exynos4210_fimd.c                  |  16 +-
 hw/display/g364fb.c                           |  15 +-
 hw/display/i2c-ddc.c                          |   6 +-
 hw/display/jazz_led.c                         |  15 +-
 hw/display/macfb.c                            |   8 +-
 hw/display/milkymist-tmu2.c                   |  13 +-
 hw/display/milkymist-vgafb.c                  |  13 +-
 hw/display/next-fb.c                          |  12 +-
 hw/display/pl110.c                            |  41 +-
 hw/display/qxl.c                              |  10 +-
 hw/display/ramfb-standalone.c                 |  15 +-
 hw/display/sii9022.c                          |  15 +-
 hw/display/sm501.c                            |  26 +-
 hw/display/ssd0303.c                          |  15 +-
 hw/display/ssd0323.c                          |  15 +-
 hw/display/tcx.c                              |  15 +-
 hw/display/vga-isa.c                          |  15 +-
 hw/display/vga-pci.c                          |  19 +-
 hw/display/vhost-user-gpu-pci.c               |  10 +-
 hw/display/vhost-user-gpu.c                   |   9 +-
 hw/display/vhost-user-vga.c                   |  10 +-
 hw/display/virtio-gpu-base.c                  |   7 +-
 hw/display/virtio-gpu-pci.c                   |  12 +-
 hw/display/virtio-gpu.c                       |   6 +-
 hw/display/virtio-vga.c                       |  12 +-
 hw/display/vmware_vga.c                       |  11 +-
 hw/display/xlnx_dp.c                          |   6 +-
 hw/dma/bcm2835_dma.c                          |   6 +-
 hw/dma/i82374.c                               |  15 +-
 hw/dma/i8257.c                                |   8 +-
 hw/dma/pl080.c                                |   8 +-
 hw/dma/pl330.c                                |  10 +-
 hw/dma/puv3_dma.c                             |  15 +-
 hw/dma/pxa2xx_dma.c                           |  15 +-
 hw/dma/rc4030.c                               |  18 +-
 hw/dma/sparc32_dma.c                          |  12 +-
 hw/dma/xilinx_axidma.c                        |  29 +-
 hw/dma/xlnx-zdma.c                            |   6 +-
 hw/dma/xlnx-zynq-devcfg.c                     |   6 +-
 hw/dma/xlnx_dpdma.c                           |   6 +-
 hw/gpio/aspeed_gpio.c                         |  14 +-
 hw/gpio/bcm2835_gpio.c                        |   6 +-
 hw/gpio/gpio_key.c                            |  15 +-
 hw/gpio/imx_gpio.c                            |   6 +-
 hw/gpio/max7310.c                             |  15 +-
 hw/gpio/mpc8xxx.c                             |  15 +-
 hw/gpio/nrf51_gpio.c                          |   6 +-
 hw/gpio/omap_gpio.c                           |   8 +-
 hw/gpio/pl061.c                               |  17 +-
 hw/gpio/puv3_gpio.c                           |  15 +-
 hw/gpio/zaurus.c                              |  12 +-
 hw/hppa/dino.c                                |  16 +-
 hw/hppa/lasi.c                                |  16 +-
 hw/hyperv/hyperv.c                            |  15 +-
 hw/hyperv/hyperv_testdev.c                    |  11 +-
 hw/hyperv/vmbus.c                             |  13 +-
 hw/i2c/aspeed_i2c.c                           |  12 +-
 hw/i2c/bitbang_i2c.c                          |  15 +-
 hw/i2c/core.c                                 |   8 +-
 hw/i2c/exynos4210_i2c.c                       |  16 +-
 hw/i2c/imx_i2c.c                              |   6 +-
 hw/i2c/microbit_i2c.c                         |   6 +-
 hw/i2c/mpc_i2c.c                              |  16 +-
 hw/i2c/omap_i2c.c                             |   6 +-
 hw/i2c/ppc4xx_i2c.c                           |   6 +-
 hw/i2c/smbus_eeprom.c                         |  16 +-
 hw/i2c/smbus_ich9.c                           |  16 +-
 hw/i2c/smbus_slave.c                          |   6 +-
 hw/i2c/versatile_i2c.c                        |  13 +-
 hw/i386/amd_iommu.c                           |  10 +-
 hw/i386/intel_iommu.c                         |   8 +-
 hw/i386/kvm/apic.c                            |   6 +-
 hw/i386/kvm/clock.c                           |  15 +-
 hw/i386/kvm/i8254.c                           |  24 +-
 hw/i386/kvm/i8259.c                           |  18 +-
 hw/i386/kvm/ioapic.c                          |   6 +-
 hw/i386/kvmvapic.c                            |  15 +-
 hw/i386/microvm.c                             |   6 +-
 hw/i386/pc.c                                  |   6 +-
 hw/i386/pc_piix.c                             |   6 +-
 hw/i386/port92.c                              |  15 +-
 hw/i386/vmmouse.c                             |  16 +-
 hw/i386/vmport.c                              |  15 +-
 hw/i386/x86-iommu.c                           |   6 +-
 hw/i386/x86.c                                 |   6 +-
 hw/i386/xen/xen_apic.c                        |   6 +-
 hw/i386/xen/xen_platform.c                    |  16 +-
 hw/i386/xen/xen_pvdevice.c                    |  16 +-
 hw/ide/ahci-allwinner.c                       |   9 +-
 hw/ide/ahci.c                                 |   6 +-
 hw/ide/cmd646.c                               |   6 +-
 hw/ide/ich.c                                  |   6 +-
 hw/ide/isa.c                                  |  15 +-
 hw/ide/macio.c                                |   6 +-
 hw/ide/microdrive.c                           |  17 +-
 hw/ide/mmio.c                                 |  15 +-
 hw/ide/pci.c                                  |   6 +-
 hw/ide/piix.c                                 |  10 +-
 hw/ide/qdev.c                                 |  14 +-
 hw/ide/sii3112.c                              |  14 +-
 hw/ide/via.c                                  |   6 +-
 hw/input/adb-kbd.c                            |  24 +-
 hw/input/adb-mouse.c                          |  24 +-
 hw/input/adb.c                                |   8 +-
 hw/input/lm832x.c                             |  15 +-
 hw/input/milkymist-softusb.c                  |  13 +-
 hw/input/pckbd.c                              |   8 +-
 hw/input/pl050.c                              |  19 +-
 hw/input/vhost-user-input.c                   |   6 +-
 hw/input/virtio-input-hid.c                   |  12 +-
 hw/input/virtio-input-host.c                  |   6 +-
 hw/input/virtio-input.c                       |   6 +-
 hw/intc/allwinner-a10-pic.c                   |   6 +-
 hw/intc/apic.c                                |  12 +-
 hw/intc/apic_common.c                         |   6 +-
 hw/intc/arm_gic.c                             |   6 +-
 hw/intc/arm_gic_common.c                      |   6 +-
 hw/intc/arm_gic_kvm.c                         |  23 +-
 hw/intc/arm_gicv2m.c                          |  15 +-
 hw/intc/arm_gicv3.c                           |   6 +-
 hw/intc/arm_gicv3_common.c                    |   6 +-
 hw/intc/arm_gicv3_its_common.c                |   6 +-
 hw/intc/arm_gicv3_its_kvm.c                   |  20 +-
 hw/intc/arm_gicv3_kvm.c                       |  21 +-
 hw/intc/armv7m_nvic.c                         |   6 +-
 hw/intc/aspeed_vic.c                          |   6 +-
 hw/intc/bcm2835_ic.c                          |   6 +-
 hw/intc/bcm2836_control.c                     |   6 +-
 hw/intc/etraxfs_pic.c                         |  11 +-
 hw/intc/exynos4210_combiner.c                 |  16 +-
 hw/intc/exynos4210_gic.c                      |  31 +-
 hw/intc/grlib_irqmp.c                         |  15 +-
 hw/intc/heathrow_pic.c                        |   6 +-
 hw/intc/i8259.c                               |  16 +-
 hw/intc/i8259_common.c                        |   6 +-
 hw/intc/ibex_plic.c                           |   6 +-
 hw/intc/imx_avic.c                            |   6 +-
 hw/intc/imx_gpcv2.c                           |   6 +-
 hw/intc/intc.c                                |   6 +-
 hw/intc/ioapic.c                              |   6 +-
 hw/intc/ioapic_common.c                       |   6 +-
 hw/intc/lm32_pic.c                            |  12 +-
 hw/intc/loongson_liointc.c                    |  11 +-
 hw/intc/mips_gic.c                            |   6 +-
 hw/intc/nios2_iic.c                           |  16 +-
 hw/intc/omap_intc.c                           |  10 +-
 hw/intc/ompic.c                               |  12 +-
 hw/intc/openpic.c                             |   6 +-
 hw/intc/openpic_kvm.c                         |  16 +-
 hw/intc/pl190.c                               |  15 +-
 hw/intc/pnv_xive.c                            |   6 +-
 hw/intc/puv3_intc.c                           |  15 +-
 hw/intc/realview_gic.c                        |   6 +-
 hw/intc/rx_icu.c                              |   6 +-
 hw/intc/s390_flic.c                           |   8 +-
 hw/intc/s390_flic_kvm.c                       |  22 +-
 hw/intc/slavio_intctl.c                       |  16 +-
 hw/intc/spapr_xive.c                          |   6 +-
 hw/intc/xics.c                                |  10 +-
 hw/intc/xics_pnv.c                            |   6 +-
 hw/intc/xics_spapr.c                          |   6 +-
 hw/intc/xilinx_intc.c                         |  10 +-
 hw/intc/xive.c                                |  18 +-
 hw/intc/xlnx-pmu-iomod-intc.c                 |   6 +-
 hw/intc/xlnx-zynqmp-ipi.c                     |   6 +-
 hw/ipack/ipack.c                              |   8 +-
 hw/ipack/tpci200.c                            |  16 +-
 hw/ipmi/ipmi.c                                |   8 +-
 hw/ipmi/ipmi_bmc_extern.c                     |  10 +-
 hw/ipmi/ipmi_bmc_sim.c                        |   6 +-
 hw/ipmi/isa_ipmi_bt.c                         |  16 +-
 hw/ipmi/isa_ipmi_kcs.c                        |  16 +-
 hw/ipmi/pci_ipmi_bt.c                         |  16 +-
 hw/ipmi/pci_ipmi_kcs.c                        |  16 +-
 hw/ipmi/smbus_ipmi.c                          |  15 +-
 hw/isa/i82378.c                               |  16 +-
 hw/isa/isa-bus.c                              |  12 +-
 hw/isa/isa-superio.c                          |   8 +-
 hw/isa/lpc_ich9.c                             |   6 +-
 hw/isa/pc87312.c                              |   6 +-
 hw/isa/piix3.c                                |  14 +-
 hw/isa/piix4.c                                |  16 +-
 hw/isa/smc37c669-superio.c                    |   6 +-
 hw/isa/vt82c686.c                             |  51 +-
 hw/lm32/lm32_boards.c                         |   8 +-
 hw/m68k/mcf_intc.c                            |  15 +-
 hw/m68k/next-cube.c                           |  15 +-
 hw/m68k/next-kbd.c                            |  15 +-
 hw/m68k/q800.c                                |   6 +-
 hw/mem/memory-device.c                        |   6 +-
 hw/mem/nvdimm.c                               |   6 +-
 hw/mem/pc-dimm.c                              |   6 +-
 hw/microblaze/xlnx-zynqmp-pmu.c               |  16 +-
 hw/mips/boston.c                              |  15 +-
 hw/mips/cps.c                                 |   6 +-
 hw/mips/gt64xxx_pci.c                         |  18 +-
 hw/mips/jazz.c                                |   8 +-
 hw/mips/malta.c                               |  15 +-
 hw/misc/a9scu.c                               |   6 +-
 hw/misc/allwinner-cpucfg.c                    |   6 +-
 hw/misc/allwinner-h3-ccu.c                    |   6 +-
 hw/misc/allwinner-h3-dramc.c                  |   6 +-
 hw/misc/allwinner-h3-sysctrl.c                |   6 +-
 hw/misc/allwinner-sid.c                       |   6 +-
 hw/misc/applesmc.c                            |  12 +-
 hw/misc/arm11scu.c                            |   6 +-
 hw/misc/arm_integrator_debug.c                |  16 +-
 hw/misc/arm_l2x0.c                            |  15 +-
 hw/misc/arm_sysctl.c                          |  16 +-
 hw/misc/armsse-cpuid.c                        |   6 +-
 hw/misc/armsse-mhu.c                          |   6 +-
 hw/misc/aspeed_scu.c                          |  12 +-
 hw/misc/aspeed_sdmc.c                         |  12 +-
 hw/misc/aspeed_xdma.c                         |   6 +-
 hw/misc/auxbus.c                              |  12 +-
 hw/misc/avr_power.c                           |   6 +-
 hw/misc/bcm2835_mbox.c                        |   6 +-
 hw/misc/bcm2835_mphi.c                        |   6 +-
 hw/misc/bcm2835_property.c                    |   6 +-
 hw/misc/bcm2835_rng.c                         |   6 +-
 hw/misc/bcm2835_thermal.c                     |   6 +-
 hw/misc/debugexit.c                           |  16 +-
 hw/misc/eccmemctl.c                           |  15 +-
 hw/misc/edu.c                                 |   9 +-
 hw/misc/empty_slot.c                          |  15 +-
 hw/misc/exynos4210_clk.c                      |  12 +-
 hw/misc/exynos4210_pmu.c                      |  16 +-
 hw/misc/exynos4210_rng.c                      |  16 +-
 hw/misc/grlib_ahb_apb_pnp.c                   |   8 +-
 hw/misc/imx25_ccm.c                           |   6 +-
 hw/misc/imx31_ccm.c                           |   6 +-
 hw/misc/imx6_ccm.c                            |   6 +-
 hw/misc/imx6_src.c                            |   6 +-
 hw/misc/imx6ul_ccm.c                          |   6 +-
 hw/misc/imx7_ccm.c                            |   8 +-
 hw/misc/imx7_gpr.c                            |   6 +-
 hw/misc/imx7_snvs.c                           |   6 +-
 hw/misc/imx_ccm.c                             |   6 +-
 hw/misc/imx_rngc.c                            |   6 +-
 hw/misc/iotkit-secctl.c                       |   6 +-
 hw/misc/iotkit-sysctl.c                       |   6 +-
 hw/misc/iotkit-sysinfo.c                      |   6 +-
 hw/misc/ivshmem.c                             |  32 +-
 hw/misc/mac_via.c                             |  10 +-
 hw/misc/macio/cuda.c                          |   8 +-
 hw/misc/macio/gpio.c                          |   6 +-
 hw/misc/macio/mac_dbdma.c                     |   6 +-
 hw/misc/macio/macio.c                         |  12 +-
 hw/misc/macio/pmu.c                           |   8 +-
 hw/misc/max111x.c                             |  10 +-
 hw/misc/milkymist-hpdmc.c                     |  13 +-
 hw/misc/milkymist-pfpu.c                      |  13 +-
 hw/misc/mips_cmgcr.c                          |   6 +-
 hw/misc/mips_cpc.c                            |   6 +-
 hw/misc/mips_itu.c                            |   6 +-
 hw/misc/mos6522.c                             |   6 +-
 hw/misc/mps2-fpgaio.c                         |   6 +-
 hw/misc/mps2-scc.c                            |   6 +-
 hw/misc/msf2-sysreg.c                         |   6 +-
 hw/misc/mst_fpga.c                            |  16 +-
 hw/misc/nrf51_rng.c                           |   6 +-
 hw/misc/pc-testdev.c                          |  16 +-
 hw/misc/pca9552.c                             |  20 +-
 hw/misc/pci-testdev.c                         |  16 +-
 hw/misc/puv3_pm.c                             |  15 +-
 hw/misc/pvpanic.c                             |  16 +-
 hw/misc/sga.c                                 |  15 +-
 hw/misc/slavio_misc.c                         |  25 +-
 hw/misc/stm32f2xx_syscfg.c                    |   6 +-
 hw/misc/stm32f4xx_exti.c                      |   6 +-
 hw/misc/stm32f4xx_syscfg.c                    |   6 +-
 hw/misc/tmp105.c                              |   6 +-
 hw/misc/tmp421.c                              |  20 +-
 hw/misc/tz-mpc.c                              |   8 +-
 hw/misc/tz-msc.c                              |   6 +-
 hw/misc/tz-ppc.c                              |   6 +-
 hw/misc/unimp.c                               |   6 +-
 hw/misc/vmcoreinfo.c                          |   6 +-
 hw/misc/zynq-xadc.c                           |   6 +-
 hw/misc/zynq_slcr.c                           |  15 +-
 hw/net/allwinner-sun8i-emac.c                 |   6 +-
 hw/net/allwinner_emac.c                       |   6 +-
 hw/net/cadence_gem.c                          |   6 +-
 hw/net/can/can_kvaser_pci.c                   |  16 +-
 hw/net/can/can_mioe3680_pci.c                 |  16 +-
 hw/net/can/can_pcm3680_pci.c                  |  16 +-
 hw/net/dp8393x.c                              |  15 +-
 hw/net/e1000.c                                |  25 +-
 hw/net/e1000e.c                               |  15 +-
 hw/net/etraxfs_eth.c                          |  17 +-
 hw/net/fsl_etsec/etsec.c                      |   6 +-
 hw/net/ftgmac100.c                            |   8 +-
 hw/net/imx_fec.c                              |   8 +-
 hw/net/lan9118.c                              |  15 +-
 hw/net/lance.c                                |   6 +-
 hw/net/lasi_i82596.c                          |   6 +-
 hw/net/mcf_fec.c                              |  10 +-
 hw/net/milkymist-minimac2.c                   |  13 +-
 hw/net/mipsnet.c                              |  15 +-
 hw/net/msf2-emac.c                            |   6 +-
 hw/net/ne2000-isa.c                           |  15 +-
 hw/net/ne2000-pci.c                           |   6 +-
 hw/net/opencores_eth.c                        |  15 +-
 hw/net/pcnet-pci.c                            |  16 +-
 hw/net/rocker/rocker.c                        |  11 +-
 hw/net/rtl8139.c                              |  16 +-
 hw/net/smc91c111.c                            |  15 +-
 hw/net/spapr_llan.c                           |  12 +-
 hw/net/stellaris_enet.c                       |  16 +-
 hw/net/sungem.c                               |  15 +-
 hw/net/sunhme.c                               |  15 +-
 hw/net/tulip.c                                |  10 +-
 hw/net/virtio-net.c                           |   6 +-
 hw/net/vmxnet3.c                              |  14 +-
 hw/net/xgmac.c                                |  15 +-
 hw/net/xilinx_axienet.c                       |  29 +-
 hw/net/xilinx_ethlite.c                       |  11 +-
 hw/nubus/mac-nubus-bridge.c                   |   6 +-
 hw/nubus/nubus-bridge.c                       |   6 +-
 hw/nubus/nubus-bus.c                          |   6 +-
 hw/nubus/nubus-device.c                       |   6 +-
 hw/nvram/ds1225y.c                            |  15 +-
 hw/nvram/eeprom_at24c.c                       |  15 +-
 hw/nvram/fw_cfg.c                             |  12 +-
 hw/nvram/mac_nvram.c                          |   6 +-
 hw/nvram/nrf51_nvm.c                          |   6 +-
 hw/nvram/spapr_nvram.c                        |  16 +-
 hw/pci-bridge/dec.c                           |  19 +-
 hw/pci-bridge/gen_pcie_root_port.c            |  10 +-
 hw/pci-bridge/i82801b11.c                     |   6 +-
 hw/pci-bridge/ioh3420.c                       |   6 +-
 hw/pci-bridge/pci_bridge_dev.c                |  15 +-
 hw/pci-bridge/pci_expander_bridge.c           |  37 +-
 hw/pci-bridge/pcie_pci_bridge.c               |  16 +-
 hw/pci-bridge/pcie_root_port.c                |   6 +-
 hw/pci-bridge/simba.c                         |   6 +-
 hw/pci-bridge/xio3130_downstream.c            |   6 +-
 hw/pci-bridge/xio3130_upstream.c              |   6 +-
 hw/pci-host/bonito.c                          |  22 +-
 hw/pci-host/designware.c                      |   8 +-
 hw/pci-host/gpex.c                            |   8 +-
 hw/pci-host/grackle.c                         |  18 +-
 hw/pci-host/i440fx.c                          |  18 +-
 hw/pci-host/pnv_phb3.c                        |  17 +-
 hw/pci-host/pnv_phb3_msi.c                    |   6 +-
 hw/pci-host/pnv_phb3_pbcq.c                   |   6 +-
 hw/pci-host/pnv_phb4.c                        |  17 +-
 hw/pci-host/pnv_phb4_pec.c                    |   8 +-
 hw/pci-host/ppce500.c                         |  21 +-
 hw/pci-host/prep.c                            |  27 +-
 hw/pci-host/q35.c                             |   8 +-
 hw/pci-host/sabre.c                           |   8 +-
 hw/pci-host/uninorth.c                        |  18 +-
 hw/pci-host/versatile.c                       |  24 +-
 hw/pci-host/xen_igd_pt.c                      |   6 +-
 hw/pci-host/xilinx-pcie.c                     |   8 +-
 hw/pci/pci.c                                  |  14 +-
 hw/pci/pci_bridge.c                           |   6 +-
 hw/pci/pci_host.c                             |   6 +-
 hw/pci/pcie_host.c                            |   6 +-
 hw/pci/pcie_port.c                            |   8 +-
 hw/pcmcia/pcmcia.c                            |   6 +-
 hw/pcmcia/pxa2xx.c                            |  10 +-
 hw/ppc/e500.c                                 |   8 +-
 hw/ppc/e500plat.c                             |   6 +-
 hw/ppc/mac_newworld.c                         |   6 +-
 hw/ppc/mac_oldworld.c                         |   6 +-
 hw/ppc/mpc8544_guts.c                         |  12 +-
 hw/ppc/mpc8544ds.c                            |   6 +-
 hw/ppc/pnv_core.c                             |   6 +-
 hw/ppc/pnv_homer.c                            |  10 +-
 hw/ppc/pnv_lpc.c                              |  12 +-
 hw/ppc/pnv_occ.c                              |  10 +-
 hw/ppc/pnv_pnor.c                             |   6 +-
 hw/ppc/pnv_psi.c                              |  12 +-
 hw/ppc/pnv_xscom.c                            |   6 +-
 hw/ppc/ppc405_boards.c                        |   8 +-
 hw/ppc/ppc440_pcix.c                          |  16 +-
 hw/ppc/ppc440_uc.c                            |  16 +-
 hw/ppc/ppc4xx_pci.c                           |  15 +-
 hw/ppc/ppce500_spin.c                         |  15 +-
 hw/ppc/prep_systemio.c                        |  16 +-
 hw/ppc/rs6000_mc.c                            |  16 +-
 hw/ppc/spapr.c                                |   6 +-
 hw/ppc/spapr_drc.c                            |  16 +-
 hw/ppc/spapr_iommu.c                          |   8 +-
 hw/ppc/spapr_irq.c                            |   6 +-
 hw/ppc/spapr_pci.c                            |   6 +-
 hw/ppc/spapr_rng.c                            |  13 +-
 hw/ppc/spapr_rtc.c                            |   6 +-
 hw/ppc/spapr_tpm_proxy.c                      |   2 +-
 hw/ppc/spapr_vio.c                            |  10 +-
 hw/rdma/rdma.c                                |   6 +-
 hw/rdma/vmw/pvrdma_main.c                     |   6 +-
 hw/riscv/opentitan.c                          |  90 ++-
 hw/riscv/riscv_hart.c                         |   6 +-
 hw/riscv/sifive_clint.c                       |   6 +-
 hw/riscv/sifive_e.c                           |  94 ++-
 hw/riscv/sifive_e_prci.c                      |   6 +-
 hw/riscv/sifive_gpio.c                        |   6 +-
 hw/riscv/sifive_plic.c                        |   6 +-
 hw/riscv/sifive_test.c                        |   6 +-
 hw/riscv/sifive_u.c                           | 148 ++---
 hw/riscv/sifive_u_otp.c                       |   6 +-
 hw/riscv/sifive_u_prci.c                      |   6 +-
 hw/riscv/virt.c                               |   6 +-
 hw/rtc/allwinner-rtc.c                        |  12 +-
 hw/rtc/aspeed_rtc.c                           |   6 +-
 hw/rtc/ds1338.c                               |  15 +-
 hw/rtc/exynos4210_rtc.c                       |  16 +-
 hw/rtc/goldfish_rtc.c                         |   6 +-
 hw/rtc/m41t80.c                               |  15 +-
 hw/rtc/m48t59-isa.c                           |  23 +-
 hw/rtc/m48t59.c                               |  23 +-
 hw/rtc/mc146818rtc.c                          |   6 +-
 hw/rtc/pl031.c                                |   6 +-
 hw/rtc/sun4v-rtc.c                            |  15 +-
 hw/rtc/twl92230.c                             |  15 +-
 hw/rtc/xlnx-zynqmp-rtc.c                      |   6 +-
 hw/rx/rx-gdbsim.c                             |  19 +-
 hw/rx/rx62n.c                                 |  12 +-
 hw/s390x/3270-ccw.c                           |   6 +-
 hw/s390x/ap-bridge.c                          |   8 +-
 hw/s390x/ap-device.c                          |   6 +-
 hw/s390x/ccw-device.c                         |   6 +-
 hw/s390x/css-bridge.c                         |   8 +-
 hw/s390x/event-facility.c                     |  10 +-
 hw/s390x/ipl.c                                |   6 +-
 hw/s390x/s390-ccw.c                           |   6 +-
 hw/s390x/s390-pci-bus.c                       |  14 +-
 hw/s390x/s390-skeys-kvm.c                     |   6 +-
 hw/s390x/s390-skeys.c                         |   8 +-
 hw/s390x/s390-stattrib-kvm.c                  |   6 +-
 hw/s390x/s390-stattrib.c                      |   8 +-
 hw/s390x/s390-virtio-ccw.c                    |   6 +-
 hw/s390x/sclp.c                               |   6 +-
 hw/s390x/sclpcpu.c                            |   6 +-
 hw/s390x/sclpquiesce.c                        |   6 +-
 hw/s390x/tod-kvm.c                            |   6 +-
 hw/s390x/tod-qemu.c                           |   6 +-
 hw/s390x/tod.c                                |   6 +-
 hw/s390x/vhost-vsock-ccw.c                    |   6 +-
 hw/s390x/virtio-ccw-9p.c                      |   6 +-
 hw/s390x/virtio-ccw-balloon.c                 |   6 +-
 hw/s390x/virtio-ccw-blk.c                     |   6 +-
 hw/s390x/virtio-ccw-crypto.c                  |   6 +-
 hw/s390x/virtio-ccw-gpu.c                     |   6 +-
 hw/s390x/virtio-ccw-input.c                   |  14 +-
 hw/s390x/virtio-ccw-net.c                     |   6 +-
 hw/s390x/virtio-ccw-rng.c                     |   6 +-
 hw/s390x/virtio-ccw-scsi.c                    |   4 +-
 hw/s390x/virtio-ccw-serial.c                  |   6 +-
 hw/s390x/virtio-ccw.c                         |   8 +-
 hw/scsi/esp-pci.c                             |  27 +-
 hw/scsi/esp.c                                 |   6 +-
 hw/scsi/lsi53c895a.c                          |  18 +-
 hw/scsi/megasas.c                             |  29 +-
 hw/scsi/mptsas.c                              |   5 -
 hw/scsi/scsi-bus.c                            |   8 +-
 hw/scsi/scsi-disk.c                           |  30 +-
 hw/scsi/scsi-generic.c                        |   6 +-
 hw/scsi/spapr_vscsi.c                         |  16 +-
 hw/scsi/vhost-scsi-common.c                   |   6 +-
 hw/scsi/vhost-scsi.c                          |   6 +-
 hw/scsi/vhost-user-scsi.c                     |   6 +-
 hw/scsi/virtio-scsi.c                         |   8 +-
 hw/scsi/vmw_pvscsi.c                          |  29 +-
 hw/sd/allwinner-sdhost.c                      |  18 +-
 hw/sd/aspeed_sdhci.c                          |   6 +-
 hw/sd/bcm2835_sdhost.c                        |  14 +-
 hw/sd/core.c                                  |   6 +-
 hw/sd/milkymist-memcard.c                     |  13 +-
 hw/sd/pl181.c                                 |  15 +-
 hw/sd/pxa2xx_mmci.c                           |  16 +-
 hw/sd/sd.c                                    |   6 +-
 hw/sd/sdhci-pci.c                             |   6 +-
 hw/sd/sdhci.c                                 |  17 +-
 hw/sd/ssi-sd.c                                |  15 +-
 hw/sh4/sh_pci.c                               |  18 +-
 hw/sparc/sun4m.c                              |  62 +-
 hw/sparc/sun4m_iommu.c                        |   8 +-
 hw/sparc64/niagara.c                          |   6 +-
 hw/sparc64/sun4u.c                            |  45 +-
 hw/sparc64/sun4u_iommu.c                      |   8 +-
 hw/ssi/aspeed_smc.c                           |   2 +-
 hw/ssi/imx_spi.c                              |   6 +-
 hw/ssi/mss-spi.c                              |   6 +-
 hw/ssi/pl022.c                                |   6 +-
 hw/ssi/ssi.c                                  |  12 +-
 hw/ssi/stm32f2xx_spi.c                        |   6 +-
 hw/ssi/xilinx_spi.c                           |  15 +-
 hw/ssi/xilinx_spips.c                         |  10 +-
 hw/timer/a9gtimer.c                           |   6 +-
 hw/timer/allwinner-a10-pit.c                  |   6 +-
 hw/timer/altera_timer.c                       |  16 +-
 hw/timer/arm_mptimer.c                        |   6 +-
 hw/timer/arm_timer.c                          |  26 +-
 hw/timer/armv7m_systick.c                     |   6 +-
 hw/timer/aspeed_timer.c                       |  12 +-
 hw/timer/avr_timer16.c                        |   6 +-
 hw/timer/bcm2835_systmr.c                     |   6 +-
 hw/timer/cadence_ttc.c                        |  16 +-
 hw/timer/cmsdk-apb-dualtimer.c                |   6 +-
 hw/timer/cmsdk-apb-timer.c                    |   6 +-
 hw/timer/digic-timer.c                        |   6 +-
 hw/timer/etraxfs_timer.c                      |  16 +-
 hw/timer/exynos4210_mct.c                     |  16 +-
 hw/timer/exynos4210_pwm.c                     |  16 +-
 hw/timer/grlib_gptimer.c                      |  13 +-
 hw/timer/hpet.c                               |  15 +-
 hw/timer/i8254.c                              |  16 +-
 hw/timer/i8254_common.c                       |   6 +-
 hw/timer/imx_epit.c                           |   6 +-
 hw/timer/imx_gpt.c                            |  12 +-
 hw/timer/lm32_timer.c                         |  12 +-
 hw/timer/milkymist-sysctl.c                   |  13 +-
 hw/timer/mss-timer.c                          |   6 +-
 hw/timer/nrf51_timer.c                        |   6 +-
 hw/timer/puv3_ost.c                           |  15 +-
 hw/timer/pxa2xx_timer.c                       |  17 +-
 hw/timer/renesas_cmt.c                        |   6 +-
 hw/timer/renesas_tmr.c                        |   6 +-
 hw/timer/slavio_timer.c                       |  16 +-
 hw/timer/stm32f2xx_timer.c                    |   6 +-
 hw/timer/xilinx_timer.c                       |  11 +-
 hw/tpm/tpm_crb.c                              |  15 +-
 hw/tpm/tpm_spapr.c                            |  16 +-
 hw/tpm/tpm_tis_isa.c                          |  15 +-
 hw/tpm/tpm_tis_sysbus.c                       |  15 +-
 hw/usb/bus.c                                  |   8 +-
 hw/usb/ccid-card-emulated.c                   |  13 +-
 hw/usb/ccid-card-passthru.c                   |  11 +-
 hw/usb/chipidea.c                             |   6 +-
 hw/usb/dev-audio.c                            |  11 +-
 hw/usb/dev-hid.c                              |  17 +-
 hw/usb/dev-hub.c                              |  15 +-
 hw/usb/dev-mtp.c                              |  10 +-
 hw/usb/dev-network.c                          |  15 +-
 hw/usb/dev-serial.c                           |  15 +-
 hw/usb/dev-smartcard-reader.c                 |  23 +-
 hw/usb/dev-storage.c                          |  19 +-
 hw/usb/dev-uas.c                              |  10 +-
 hw/usb/dev-wacom.c                            |  11 +-
 hw/usb/hcd-dwc2.c                             |  14 +-
 hw/usb/hcd-ehci-pci.c                         |   2 +-
 hw/usb/hcd-ehci-sysbus.c                      |  18 +-
 hw/usb/hcd-ohci-pci.c                         |  15 +-
 hw/usb/hcd-ohci.c                             |   6 +-
 hw/usb/hcd-uhci.c                             |   6 +-
 hw/usb/hcd-xhci-nec.c                         |   6 +-
 hw/usb/hcd-xhci.c                             |   8 +-
 hw/usb/host-libusb.c                          |  13 +-
 hw/usb/imx-usb-phy.c                          |   6 +-
 hw/usb/redirect.c                             |  10 +-
 hw/usb/tusb6010.c                             |  15 +-
 hw/vfio/amd-xgbe.c                            |   6 +-
 hw/vfio/ap.c                                  |  16 +-
 hw/vfio/calxeda-xgmac.c                       |   6 +-
 hw/vfio/ccw.c                                 |   6 +-
 hw/vfio/igd.c                                 |   6 +-
 hw/vfio/pci.c                                 |  11 +-
 hw/vfio/platform.c                            |   6 +-
 hw/virtio/vhost-scsi-pci.c                    |   5 +-
 hw/virtio/vhost-user-blk-pci.c                |   5 +-
 hw/virtio/vhost-user-fs-pci.c                 |   5 +-
 hw/virtio/vhost-user-fs.c                     |   6 +-
 hw/virtio/vhost-user-input-pci.c              |   5 +-
 hw/virtio/vhost-user-scsi-pci.c               |   5 +-
 hw/virtio/vhost-user-vsock-pci.c              |   5 +-
 hw/virtio/vhost-user-vsock.c                  |   6 +-
 hw/virtio/vhost-vsock-common.c                |   6 +-
 hw/virtio/vhost-vsock-pci.c                   |   5 +-
 hw/virtio/vhost-vsock.c                       |   6 +-
 hw/virtio/virtio-9p-pci.c                     |  10 +-
 hw/virtio/virtio-balloon-pci.c                |   5 +-
 hw/virtio/virtio-balloon.c                    |   6 +-
 hw/virtio/virtio-blk-pci.c                    |   5 +-
 hw/virtio/virtio-bus.c                        |   6 +-
 hw/virtio/virtio-crypto-pci.c                 |   5 +-
 hw/virtio/virtio-crypto.c                     |   6 +-
 hw/virtio/virtio-input-host-pci.c             |   5 +-
 hw/virtio/virtio-input-pci.c                  |  13 +-
 hw/virtio/virtio-iommu-pci.c                  |   5 +-
 hw/virtio/virtio-iommu.c                      |   8 +-
 hw/virtio/virtio-mem.c                        |   6 +-
 hw/virtio/virtio-mmio.c                       |   8 +-
 hw/virtio/virtio-net-pci.c                    |   5 +-
 hw/virtio/virtio-pci.c                        |   4 +-
 hw/virtio/virtio-pmem.c                       |   6 +-
 hw/virtio/virtio-rng-pci.c                    |   5 +-
 hw/virtio/virtio-rng.c                        |   6 +-
 hw/virtio/virtio-scsi-pci.c                   |   5 +-
 hw/virtio/virtio-serial-pci.c                 |   5 +-
 hw/virtio/virtio.c                            |   6 +-
 hw/watchdog/cmsdk-apb-watchdog.c              |   8 +-
 hw/watchdog/wdt_aspeed.c                      |   8 +-
 hw/watchdog/wdt_diag288.c                     |   2 +-
 hw/watchdog/wdt_i6300esb.c                    |   7 +-
 hw/watchdog/wdt_ib700.c                       |  11 +-
 hw/watchdog/wdt_imx2.c                        |   2 +-
 hw/xen/xen-bus.c                              |  10 +-
 hw/xen/xen-legacy-backend.c                   |  10 +-
 hw/xen/xen_pt.c                               |   6 +-
 hw/xtensa/xtfpga.c                            |  20 +-
 io/channel-buffer.c                           |   6 +-
 io/channel-command.c                          |   6 +-
 io/channel-file.c                             |   6 +-
 io/channel-socket.c                           |   6 +-
 io/channel-tls.c                              |   6 +-
 io/channel-websock.c                          |   6 +-
 io/channel.c                                  |   6 +-
 io/dns-resolver.c                             |   6 +-
 io/net-listener.c                             |   6 +-
 iothread.c                                    |  12 +-
 migration/migration.c                         |   6 +-
 migration/rdma.c                              |  13 +-
 net/can/can_core.c                            |   6 +-
 net/can/can_host.c                            |   6 +-
 net/can/can_socketcan.c                       |  16 +-
 net/colo-compare.c                            |  15 +-
 net/dump.c                                    |  13 +-
 net/filter-buffer.c                           |  15 +-
 net/filter-mirror.c                           |  25 +-
 net/filter-replay.c                           |  13 +-
 net/filter-rewriter.c                         |  17 +-
 net/filter.c                                  |   6 +-
 qom/container.c                               |   6 +-
 qom/object.c                                  |   6 +-
 scsi/pr-manager-helper.c                      |  17 +-
 scsi/pr-manager.c                             |   7 +-
 softmmu/memory.c                              |   8 +-
 target/arm/cpu.c                              |   4 +-
 target/arm/cpu64.c                            |   2 +-
 target/hppa/cpu.c                             |   6 +-
 target/i386/cpu.c                             |   8 +-
 target/i386/hax-all.c                         |   6 +-
 target/i386/hvf/hvf.c                         |   6 +-
 target/i386/sev.c                             |  14 +-
 target/i386/whpx-all.c                        |   6 +-
 target/microblaze/cpu.c                       |   6 +-
 target/mips/cpu.c                             |   2 +-
 target/nios2/cpu.c                            |   6 +-
 target/ppc/translate_init.inc.c               |   4 +-
 target/rx/cpu.c                               |   8 +-
 target/s390x/cpu.c                            |   6 +-
 target/s390x/cpu_models.c                     |   6 +-
 target/sparc/cpu.c                            |   2 +-
 target/tilegx/cpu.c                           |   6 +-
 target/xtensa/cpu.c                           |   6 +-
 tests/check-qom-interface.c                   |  11 +-
 tests/check-qom-proplist.c                    |  16 +-
 tests/test-qdev-global-props.c                |  13 +-
 ui/console.c                                  |  15 +-
 ui/gtk.c                                      |   8 +-
 ui/input-barrier.c                            |  20 +-
 ui/input-linux.c                              |  20 +-
 ui/spice-app.c                                |   9 +-
 1332 files changed, 9573 insertions(+), 9591 deletions(-)
 create mode 100644 scripts/codeconverter/codeconverter/__init__.py
 create mode 100644 scripts/codeconverter/codeconverter/patching.py
 create mode 100644 scripts/codeconverter/codeconverter/qom_macros.py
 create mode 100644 scripts/codeconverter/codeconverter/qom_type_info.py
 create mode 100644 scripts/codeconverter/codeconverter/regexps.py
 create mode 100644 scripts/codeconverter/codeconverter/test_patching.py
 create mode 100644 scripts/codeconverter/codeconverter/test_regexps.py
 create mode 100644 scripts/codeconverter/codeconverter/utils.py
 create mode 100755 scripts/codeconverter/converter.py

--=20
2.26.2



Re: [PATCH v2 00/58] qom: Automated conversion of type checking boilerplate
Posted by Eduardo Habkost 3 years, 8 months ago
CCing everybody who replied to the v1 thread.  I've CCed people
on individual patches using get_maintainer.pl, but forgot to CC
people from the v1 thread (sorry!).

On Wed, Aug 19, 2020 at 08:11:38PM -0400, Eduardo Habkost wrote:
> This is an extension of the series previously submitted by
> Daniel[1], including a script that will convert existing type
> checker macros automatically.
> 
> Changes from series v1 to v2:
> * Don't skip TypeCheckMacro conversion if typedefs
>   are found in typedefs.h
> * Don't look for typedefs if type check macro uses "struct [...]"
> * "qom: Fix G_DEFINE_AUTOPTR_CLEANUP_FUNC" was squashed
>   in the original buggy patch
> * 18 new patches that fix inconsistencies in the code,
>   and make automated changes without --force possible
> * pl110:
>   * Fix typo on commit message
>   * Rename enum values to VERSION_*
> * "[automated]" patches (without --force):
>   * Re-ran script after after the changes mentioned above.
>     Now the patches change many more QOM type checker macros
> * "[semi-automated] Use DECLARE_*CHECKER* when possible (--force mode)":
>   * Now the patch touches very few macros, and all of them
>     have comments explaining why they are unusual
> * Maintainers are now CCed in the cleanup patches
>   (except for the automated ones, because they are too large)
> * TYPE_INFO macro: added commit message note suggested by Daniel
> * Added more details to commit message of "Rename enum constants" patches
> * Removed confusing paragraph mentioning _Generic from "Make type
>   checker functions accept const pointers" commit message
> 
> Link to series v1:
> https://lore.kernel.org/qemu-devel/20200813222625.243136-1-ehabkost@redhat.co=
> m/
> 
> The series is divided in the sections below:
> 
> Constant renaming
> -----------------
> 
> Patches 1-10 will just rename existing constants that will
> conflict with the type checker function names.
> 
> Fix and cleanups of existing code
> ---------------------------------
> 
> Patches 11-41 are changes to existing code
> that will either fix existing issues, delete unused and broken
> macros, or move typedefs around to make code conversion easier.
> 
> Original patches from Daniel
> ----------------------------
> 
> Patches 42-43 are the ones originally submitted by Daniel.
> 
> They introduce the macros:
> * OBJECT_DECLARE_TYPE
> * OBJECT_DECLARE_SIMPLE_TYPE
> * OBJECT_DEFINE_TYPE
> * OBJECT_DEFINE_TYPE_WITH_INTERFACES
> * OBJECT_DEFINE_ABSTRACT_TYPE
> 
> Changes to new macros
> ---------------------
> 
> Patches 44-48 extend the macros introduced by Daniel.  It
> includes small bug fixes, change the arguments to a few macros,
> and introduce a few new macros:
> 
> * DECLARE_INSTANCE_CHECKER
> * DECLARE_CLASS_CHECKERS
> * DECLARE_OBJ_CHECKERS
> * TYPE_INFO
> 
> Automated code conversion
> -------------------------
> 
> Patch 49 is the code conversion script that will look for common
> patterns and change them to use the new macros.
> 
> Patches 50-56 are all automatically generated by that script, to
> gradually transform existing code into DECLARE_*CHECKER or
> OBJECT_DECLARE*_TYPE macros.
> 
> Original crypto QOM patches from Daniel
> ---------------------------------------
> 
> Patches 57-58 are the patches originally sent by Daniel to
> convert the crypto QOM code to use the new macros, rebased and
> updated to pass additional arguments to OBJECT_DECLARE_*.
> 
> [1] https://lore.kernel.org/qemu-devel/20200723181410.3145233-1-berrange@redh=
> at.com/
> 
> Daniel P. Berrang=C3=A9 (4):
>   qom: make object_ref/unref use a void * instead of Object *.
>   qom: provide convenient macros for declaring and defining types
>   crypto: use QOM macros for declaration/definition of secret types
>   crypto: use QOM macros for declaration/definition of TLS creds types
> 
> Eduardo Habkost (54):
>   e1000: Rename QOM class cast macros
>   megasas: Rename QOM class cast macros
>   vmw_pvscsi: Rename QOM class cast macros
>   pl110: Rename pl110_version enum values
>   allwinner-h3: Rename memmap enum constants
>   aspeed_soc: Rename memmap/irqmap enum constants
>   opentitan: Rename memmap enum constants
>   sifive_e: Rename memmap enum constants
>   sifive_u: Rename memmap enum constants
>   aspeed_timer: Fix ASPEED_TIMER macro definition
>   versatile: Fix typo in PCI_VPB_HOST definition
>   virtio-ccw: Fix definition of VIRTIO_CCW_BUS_GET_CLASS
>   hvf: Add missing include
>   hcd-dwc2: Rename USB_*CLASS macros for consistency
>   tulip: Move TulipState typedef to header
>   throttle-groups: Move ThrottleGroup typedef to header
>   pci: Move PCIBusClass typedef to pci.h
>   i8254: Move PITCommonState/PITCommonClass typedefs to i8254.h
>   hvf: Move HVFState typedef to hvf.h
>   mcf_fec: Move mcf_fec_state typedef to header
>   s390_flic: Move KVMS390FLICState typedef to header
>   can_emu: Delete macros for non-existing typedef
>   nubus: Delete unused NUBUS_BRIDGE macro
>   platform-bus: Delete macros for non-existing typedef
>   armsse: Rename QOM macros to avoid conflicts
>   xen-legacy-backend: Add missing typedef XenLegacyDevice
>   spapr: Move typedef SpaprMachineState to spapr.h
>   s390x: Move typedef SCLPEventFacility to event-facility.h
>   vhost-user-gpu: Move QOM macro to header
>   ahci: Move QOM macros to header
>   i8257: Move QOM macro to header
>   ahci: Move QOM macro to header
>   pckbd: Move QOM macro to header
>   vmbus: Move QOM macros to vmbus.h
>   virtio-serial-bus: Move QOM macros to header
>   piix: Move QOM macros to header
>   auxbus: Move QOM macros to header
>   rocker: Move QOM macros to header
>   pxa2xx: Move QOM macros to header
>   mptsas: Move QOM macros to header
>   kvm: Move QOM macros to kvm.h
>   vfio/pci: Move QOM macros to header
>   qom: Allow class type name to be specified in OBJECT_DECLARE*
>   qom: DECLARE_*_CHECKERS macros
>   qom: Make type checker functions accept const pointers
>   qom: TYPE_INFO macro
>   codeconverter: script for automating QOM code cleanups
>   [automated] Delete duplicate QOM typedefs
>   [automated] Use TYPE_INFO macro
>   [automated] Move QOM typedefs and add missing includes
>   [automated] Use DECLARE_*CHECKER* macros
>   [semi-automated] Use DECLARE_*CHECKER* when possible (--force mode)
>   [automated] Use OBJECT_DECLARE_TYPE where possible
>   [automated] Use OBJECT_DECLARE_SIMPLE_TYPE when possible
> 
>  .../codeconverter/codeconverter/__init__.py   |   0
>  .../codeconverter/codeconverter/patching.py   | 381 +++++++++++
>  .../codeconverter/codeconverter/qom_macros.py | 628 ++++++++++++++++++
>  .../codeconverter/qom_type_info.py            | 314 +++++++++
>  .../codeconverter/codeconverter/regexps.py    |  89 +++
>  .../codeconverter/test_patching.py            |  98 +++
>  .../codeconverter/test_regexps.py             | 272 ++++++++
>  scripts/codeconverter/codeconverter/utils.py  |  65 ++
>  scripts/codeconverter/converter.py            | 113 ++++
>  chardev/chardev-internal.h                    |   8 +-
>  hw/9pfs/virtio-9p.h                           |  11 +-
>  hw/audio/intel-hda.h                          |  20 +-
>  hw/avr/atmega.h                               |   9 +-
>  hw/block/nvme.h                               |  10 +-
>  hw/display/ati_int.h                          |   9 +-
>  hw/display/qxl.h                              |   9 +-
>  hw/display/virtio-vga.h                       |  17 +-
>  hw/i386/amd_iommu.h                           |  10 +-
>  hw/ide/ahci_internal.h                        |   5 -
>  hw/misc/tmp105.h                              |   9 +-
>  hw/net/fsl_etsec/etsec.h                      |  10 +-
>  hw/net/rocker/rocker.h                        |   7 +-
>  hw/net/tulip.h                                |   5 +-
>  hw/net/vmxnet3_defs.h                         |   9 +-
>  hw/ppc/e500-ccsr.h                            |   9 +-
>  hw/ppc/e500.h                                 |  19 +-
>  hw/ppc/mac.h                                  |  19 +-
>  hw/rdma/vmw/pvrdma.h                          |   9 +-
>  hw/s390x/ccw-device.h                         |  17 +-
>  hw/s390x/ipl.h                                |   6 +-
>  hw/s390x/s390-pci-bus.h                       |  34 +-
>  hw/s390x/virtio-ccw.h                         | 141 ++--
>  hw/scsi/mptsas.h                              |   7 +-
>  hw/usb/ccid.h                                 |  14 +-
>  hw/usb/hcd-dwc2.h                             |   9 +-
>  hw/usb/hcd-ehci.h                             |  36 +-
>  hw/usb/hcd-ohci.h                             |   9 +-
>  hw/usb/hcd-xhci.h                             |   7 +-
>  hw/vfio/pci.h                                 |  10 +-
>  hw/virtio/virtio-mem-pci.h                    |   5 +-
>  hw/virtio/virtio-pci.h                        |  24 +-
>  hw/virtio/virtio-pmem-pci.h                   |   5 +-
>  hw/xen/xen_pt.h                               |   5 +-
>  include/authz/base.h                          |  15 +-
>  include/authz/list.h                          |  17 +-
>  include/authz/listfile.h                      |  17 +-
>  include/authz/pamacct.h                       |  17 +-
>  include/authz/simple.h                        |  17 +-
>  include/block/throttle-groups.h               |   5 +-
>  include/chardev/char-fd.h                     |   9 +-
>  include/chardev/char-win.h                    |   9 +-
>  include/chardev/char.h                        |  12 +-
>  include/chardev/spice.h                       |   9 +-
>  include/crypto/secret.h                       |  11 +-
>  include/crypto/secret_common.h                |  12 +-
>  include/crypto/secret_keyring.h               |  24 +-
>  include/crypto/tls-cipher-suites.h            |   9 +-
>  include/crypto/tlscreds.h                     |  13 +-
>  include/crypto/tlscredsanon.h                 |  15 +-
>  include/crypto/tlscredspsk.h                  |  14 +-
>  include/crypto/tlscredsx509.h                 |  14 +-
>  include/exec/memory.h                         |  19 +-
>  include/hw/acpi/acpi_dev_interface.h          |  13 +-
>  include/hw/acpi/generic_event_device.h        |  10 +-
>  include/hw/acpi/vmgenid.h                     |   9 +-
>  include/hw/adc/stm32f2xx_adc.h                |  10 +-
>  include/hw/arm/allwinner-a10.h                |   9 +-
>  include/hw/arm/allwinner-h3.h                 |  70 +-
>  include/hw/arm/armsse.h                       |  18 +-
>  include/hw/arm/armv7m.h                       |  17 +-
>  include/hw/arm/aspeed.h                       |  14 +-
>  include/hw/arm/aspeed_soc.h                   | 110 +--
>  include/hw/arm/bcm2835_peripherals.h          |  10 +-
>  include/hw/arm/bcm2836.h                      |  18 +-
>  include/hw/arm/digic.h                        |   9 +-
>  include/hw/arm/exynos4210.h                   |  10 +-
>  include/hw/arm/fsl-imx25.h                    |   9 +-
>  include/hw/arm/fsl-imx31.h                    |   9 +-
>  include/hw/arm/fsl-imx6.h                     |   9 +-
>  include/hw/arm/fsl-imx6ul.h                   |   9 +-
>  include/hw/arm/fsl-imx7.h                     |   9 +-
>  include/hw/arm/linux-boot-if.h                |  11 +-
>  include/hw/arm/msf2-soc.h                     |   9 +-
>  include/hw/arm/nrf51_soc.h                    |  10 +-
>  include/hw/arm/omap.h                         |  20 +-
>  include/hw/arm/pxa.h                          |  16 +
>  include/hw/arm/smmu-common.h                  |  18 +-
>  include/hw/arm/smmuv3.h                       |  18 +-
>  include/hw/arm/stm32f205_soc.h                |  10 +-
>  include/hw/arm/stm32f405_soc.h                |  10 +-
>  include/hw/arm/virt.h                         |  19 +-
>  include/hw/arm/xlnx-versal.h                  |   9 +-
>  include/hw/arm/xlnx-zynqmp.h                  |  10 +-
>  include/hw/block/flash.h                      |  13 +-
>  include/hw/block/swim.h                       |  12 +-
>  include/hw/boards.h                           |   8 +-
>  include/hw/char/avr_usart.h                   |  10 +-
>  include/hw/char/bcm2835_aux.h                 |   9 +-
>  include/hw/char/cadence_uart.h                |  10 +-
>  include/hw/char/cmsdk-apb-uart.h              |  10 +-
>  include/hw/char/digic-uart.h                  |  10 +-
>  include/hw/char/escc.h                        |   9 +-
>  include/hw/char/ibex_uart.h                   |  10 +-
>  include/hw/char/imx_serial.h                  |   9 +-
>  include/hw/char/nrf51_uart.h                  |   9 +-
>  include/hw/char/pl011.h                       |   9 +-
>  include/hw/char/renesas_sci.h                 |   9 +-
>  include/hw/char/serial.h                      |  25 +-
>  include/hw/char/stm32f2xx_usart.h             |  10 +-
>  include/hw/clock.h                            |   5 +-
>  include/hw/core/cpu.h                         |  10 +-
>  include/hw/core/generic-loader.h              |  10 +-
>  include/hw/core/split-irq.h                   |   3 +-
>  include/hw/cpu/a15mpcore.h                    |  10 +-
>  include/hw/cpu/a9mpcore.h                     |  10 +-
>  include/hw/cpu/arm11mpcore.h                  |  10 +-
>  include/hw/cpu/cluster.h                      |  10 +-
>  include/hw/cpu/core.h                         |  10 +-
>  include/hw/display/bcm2835_fb.h               |   9 +-
>  include/hw/display/dpcd.h                     |   4 +-
>  include/hw/display/i2c-ddc.h                  |   4 +-
>  include/hw/display/macfb.h                    |  22 +-
>  include/hw/display/xlnx_dp.h                  |   9 +-
>  include/hw/dma/bcm2835_dma.h                  |  10 +-
>  include/hw/dma/i8257.h                        |   8 +-
>  include/hw/dma/pl080.h                        |   9 +-
>  include/hw/dma/xlnx-zdma.h                    |  10 +-
>  include/hw/dma/xlnx-zynq-devcfg.h             |  10 +-
>  include/hw/dma/xlnx_dpdma.h                   |   4 +-
>  include/hw/fw-path-provider.h                 |  11 +-
>  include/hw/gpio/aspeed_gpio.h                 |  18 +-
>  include/hw/gpio/bcm2835_gpio.h                |  10 +-
>  include/hw/gpio/imx_gpio.h                    |   9 +-
>  include/hw/gpio/nrf51_gpio.h                  |   9 +-
>  include/hw/hotplug.h                          |  11 +-
>  include/hw/hyperv/vmbus-bridge.h              |  12 +-
>  include/hw/hyperv/vmbus.h                     |  19 +-
>  include/hw/i2c/arm_sbcon_i2c.h                |  10 +-
>  include/hw/i2c/aspeed_i2c.h                   |  19 +-
>  include/hw/i2c/i2c.h                          |  19 +-
>  include/hw/i2c/imx_i2c.h                      |   9 +-
>  include/hw/i2c/microbit_i2c.h                 |  10 +-
>  include/hw/i2c/ppc4xx_i2c.h                   |   9 +-
>  include/hw/i2c/smbus_slave.h                  |  15 +-
>  include/hw/i386/apic_internal.h               |  17 +-
>  include/hw/i386/ich9.h                        |  10 +-
>  include/hw/i386/intel_iommu.h                 |   7 +-
>  include/hw/i386/ioapic_internal.h             |  16 +-
>  include/hw/i386/microvm.h                     |  19 +-
>  include/hw/i386/pc.h                          |  14 +-
>  include/hw/i386/x86-iommu.h                   |   5 +-
>  include/hw/i386/x86.h                         |  19 +-
>  include/hw/ide/ahci.h                         |  17 +-
>  include/hw/ide/internal.h                     |  19 +-
>  include/hw/ide/pci.h                          |   9 +-
>  include/hw/input/adb.h                        |  16 +-
>  include/hw/input/i8042.h                      |   5 +-
>  include/hw/intc/allwinner-a10-pic.h           |   9 +-
>  include/hw/intc/arm_gic.h                     |  15 +-
>  include/hw/intc/arm_gic_common.h              |  21 +-
>  include/hw/intc/arm_gicv3.h                   |  14 +-
>  include/hw/intc/arm_gicv3_common.h            |  16 +-
>  include/hw/intc/arm_gicv3_its_common.h        |  11 +-
>  include/hw/intc/armv7m_nvic.h                 |  10 +-
>  include/hw/intc/aspeed_vic.h                  |   9 +-
>  include/hw/intc/bcm2835_ic.h                  |   9 +-
>  include/hw/intc/bcm2836_control.h             |  10 +-
>  include/hw/intc/heathrow_pic.h                |   9 +-
>  include/hw/intc/ibex_plic.h                   |  10 +-
>  include/hw/intc/imx_avic.h                    |   9 +-
>  include/hw/intc/imx_gpcv2.h                   |   9 +-
>  include/hw/intc/intc.h                        |  11 +-
>  include/hw/intc/mips_gic.h                    |   6 +-
>  include/hw/intc/realview_gic.h                |  10 +-
>  include/hw/intc/rx_icu.h                      |   4 +-
>  include/hw/intc/xlnx-pmu-iomod-intc.h         |  10 +-
>  include/hw/intc/xlnx-zynqmp-ipi.h             |  10 +-
>  include/hw/ipack/ipack.h                      |  14 +-
>  include/hw/ipmi/ipmi.h                        |  36 +-
>  include/hw/isa/i8259_internal.h               |  15 +-
>  include/hw/isa/isa.h                          |  28 +-
>  include/hw/isa/pc87312.h                      |   9 +-
>  include/hw/isa/superio.h                      |  19 +-
>  include/hw/m68k/mcf_fec.h                     |   5 +-
>  include/hw/mem/memory-device.h                |  11 +-
>  include/hw/mem/nvdimm.h                       |  11 +-
>  include/hw/mem/pc-dimm.h                      |  17 +-
>  include/hw/mips/cps.h                         |   9 +-
>  include/hw/misc/a9scu.h                       |   9 +-
>  include/hw/misc/allwinner-cpucfg.h            |   9 +-
>  include/hw/misc/allwinner-h3-ccu.h            |   9 +-
>  include/hw/misc/allwinner-h3-dramc.h          |   9 +-
>  include/hw/misc/allwinner-h3-sysctrl.h        |   9 +-
>  include/hw/misc/allwinner-sid.h               |   9 +-
>  include/hw/misc/arm11scu.h                    |   9 +-
>  include/hw/misc/armsse-cpuid.h                |   9 +-
>  include/hw/misc/armsse-mhu.h                  |   9 +-
>  include/hw/misc/aspeed_scu.h                  |  18 +-
>  include/hw/misc/aspeed_sdmc.h                 |  18 +-
>  include/hw/misc/aspeed_xdma.h                 |   9 +-
>  include/hw/misc/auxbus.h                      |  12 +-
>  include/hw/misc/avr_power.h                   |   9 +-
>  include/hw/misc/bcm2835_mbox.h                |  10 +-
>  include/hw/misc/bcm2835_mphi.h                |   5 +-
>  include/hw/misc/bcm2835_property.h            |  10 +-
>  include/hw/misc/bcm2835_rng.h                 |  10 +-
>  include/hw/misc/bcm2835_thermal.h             |  10 +-
>  include/hw/misc/grlib_ahb_apb_pnp.h           |   9 +-
>  include/hw/misc/imx25_ccm.h                   |   9 +-
>  include/hw/misc/imx31_ccm.h                   |   9 +-
>  include/hw/misc/imx6_ccm.h                    |   9 +-
>  include/hw/misc/imx6_src.h                    |   9 +-
>  include/hw/misc/imx6ul_ccm.h                  |   9 +-
>  include/hw/misc/imx7_ccm.h                    |  17 +-
>  include/hw/misc/imx7_gpr.h                    |   9 +-
>  include/hw/misc/imx7_snvs.h                   |   9 +-
>  include/hw/misc/imx_ccm.h                     |  11 +-
>  include/hw/misc/imx_rngc.h                    |   9 +-
>  include/hw/misc/iotkit-secctl.h               |   6 +-
>  include/hw/misc/iotkit-sysctl.h               |  10 +-
>  include/hw/misc/iotkit-sysinfo.h              |  10 +-
>  include/hw/misc/mac_via.h                     |  27 +-
>  include/hw/misc/macio/cuda.h                  |  18 +-
>  include/hw/misc/macio/gpio.h                  |   9 +-
>  include/hw/misc/macio/macio.h                 |  43 +-
>  include/hw/misc/macio/pmu.h                   |  18 +-
>  include/hw/misc/max111x.h                     |  10 +-
>  include/hw/misc/mips_cmgcr.h                  |   6 +-
>  include/hw/misc/mips_cpc.h                    |   9 +-
>  include/hw/misc/mips_itu.h                    |   9 +-
>  include/hw/misc/mos6522.h                     |  11 +-
>  include/hw/misc/mps2-fpgaio.h                 |   9 +-
>  include/hw/misc/mps2-scc.h                    |   9 +-
>  include/hw/misc/msf2-sysreg.h                 |   9 +-
>  include/hw/misc/nrf51_rng.h                   |   9 +-
>  include/hw/misc/pca9552.h                     |   9 +-
>  include/hw/misc/stm32f2xx_syscfg.h            |  10 +-
>  include/hw/misc/stm32f4xx_exti.h              |  10 +-
>  include/hw/misc/stm32f4xx_syscfg.h            |  10 +-
>  include/hw/misc/tz-mpc.h                      |   6 +-
>  include/hw/misc/tz-msc.h                      |   9 +-
>  include/hw/misc/tz-ppc.h                      |   6 +-
>  include/hw/misc/unimp.h                       |  10 +-
>  include/hw/misc/vmcoreinfo.h                  |   9 +-
>  include/hw/misc/zynq-xadc.h                   |  10 +-
>  include/hw/net/allwinner-sun8i-emac.h         |   9 +-
>  include/hw/net/allwinner_emac.h               |   9 +-
>  include/hw/net/cadence_gem.h                  |   9 +-
>  include/hw/net/ftgmac100.h                    |  17 +-
>  include/hw/net/imx_fec.h                      |   9 +-
>  include/hw/net/lance.h                        |  10 +-
>  include/hw/net/lasi_82596.h                   |  10 +-
>  include/hw/net/msf2-emac.h                    |  10 +-
>  include/hw/nmi.h                              |  11 +-
>  include/hw/nubus/mac-nubus-bridge.h           |  10 +-
>  include/hw/nubus/nubus.h                      |  19 +-
>  include/hw/nvram/fw_cfg.h                     |  21 +-
>  include/hw/nvram/nrf51_nvm.h                  |   9 +-
>  include/hw/or-irq.h                           |   3 +-
>  include/hw/pci-bridge/simba.h                 |  10 +-
>  include/hw/pci-host/designware.h              |  16 +-
>  include/hw/pci-host/gpex.h                    |  19 +-
>  include/hw/pci-host/i440fx.h                  |  10 +-
>  include/hw/pci-host/pnv_phb3.h                |  20 +-
>  include/hw/pci-host/pnv_phb4.h                |  21 +-
>  include/hw/pci-host/q35.h                     |  19 +-
>  include/hw/pci-host/sabre.h                   |  19 +-
>  include/hw/pci-host/spapr.h                   |   7 +-
>  include/hw/pci-host/uninorth.h                |  31 +-
>  include/hw/pci-host/xilinx-pcie.h             |  19 +-
>  include/hw/pci/pci.h                          |  20 +-
>  include/hw/pci/pci_bridge.h                   |   4 +-
>  include/hw/pci/pci_bus.h                      |   4 +-
>  include/hw/pci/pci_host.h                     |  14 +-
>  include/hw/pci/pcie_host.h                    |   5 +-
>  include/hw/pci/pcie_port.h                    |  18 +-
>  include/hw/pcmcia.h                           |  19 +-
>  include/hw/platform-bus.h                     |   9 +-
>  include/hw/ppc/mac_dbdma.h                    |   9 +-
>  include/hw/ppc/openpic.h                      |   9 +-
>  include/hw/ppc/pnv.h                          |  75 +--
>  include/hw/ppc/pnv_core.h                     |  26 +-
>  include/hw/ppc/pnv_homer.h                    |  22 +-
>  include/hw/ppc/pnv_lpc.h                      |  28 +-
>  include/hw/ppc/pnv_occ.h                      |  22 +-
>  include/hw/ppc/pnv_pnor.h                     |   9 +-
>  include/hw/ppc/pnv_psi.h                      |  35 +-
>  include/hw/ppc/pnv_xive.h                     |  16 +-
>  include/hw/ppc/pnv_xscom.h                    |  10 +-
>  include/hw/ppc/spapr.h                        |  24 +-
>  include/hw/ppc/spapr_cpu_core.h               |  17 +-
>  include/hw/ppc/spapr_drc.h                    |  80 +--
>  include/hw/ppc/spapr_irq.h                    |  48 +-
>  include/hw/ppc/spapr_tpm_proxy.h              |   9 +-
>  include/hw/ppc/spapr_vio.h                    |  19 +-
>  include/hw/ppc/spapr_xive.h                   |  19 +-
>  include/hw/ppc/xics.h                         |  31 +-
>  include/hw/ppc/xics_spapr.h                   |   5 +-
>  include/hw/ppc/xive.h                         |  77 ++-
>  include/hw/qdev-core.h                        |  15 +-
>  include/hw/rdma/rdma.h                        |   5 +-
>  include/hw/register.h                         |   4 +-
>  include/hw/resettable.h                       |  11 +-
>  include/hw/riscv/opentitan.h                  |  48 +-
>  include/hw/riscv/riscv_hart.h                 |  10 +-
>  include/hw/riscv/sifive_clint.h               |  10 +-
>  include/hw/riscv/sifive_e.h                   |  57 +-
>  include/hw/riscv/sifive_e_prci.h              |  10 +-
>  include/hw/riscv/sifive_gpio.h                |   9 +-
>  include/hw/riscv/sifive_plic.h                |  10 +-
>  include/hw/riscv/sifive_test.h                |  10 +-
>  include/hw/riscv/sifive_u.h                   |  49 +-
>  include/hw/riscv/sifive_u_otp.h               |  10 +-
>  include/hw/riscv/sifive_u_prci.h              |  10 +-
>  include/hw/riscv/sifive_uart.h                |  10 +-
>  include/hw/riscv/virt.h                       |  10 +-
>  include/hw/rtc/allwinner-rtc.h                |  18 +-
>  include/hw/rtc/aspeed_rtc.h                   |   9 +-
>  include/hw/rtc/goldfish_rtc.h                 |  10 +-
>  include/hw/rtc/m48t59.h                       |  11 +-
>  include/hw/rtc/mc146818rtc.h                  |   9 +-
>  include/hw/rtc/pl031.h                        |   9 +-
>  include/hw/rtc/xlnx-zynqmp-rtc.h              |  10 +-
>  include/hw/rx/rx62n.h                         |   9 +-
>  include/hw/s390x/3270-ccw.h                   |  19 +-
>  include/hw/s390x/ap-device.h                  |  10 +-
>  include/hw/s390x/css-bridge.h                 |  18 +-
>  include/hw/s390x/event-facility.h             |  35 +-
>  include/hw/s390x/s390-ccw.h                   |  19 +-
>  include/hw/s390x/s390-virtio-ccw.h            |  11 +-
>  include/hw/s390x/s390_flic.h                  |  31 +-
>  include/hw/s390x/sclp.h                       |  18 +-
>  include/hw/s390x/storage-attributes.h         |  37 +-
>  include/hw/s390x/storage-keys.h               |  28 +-
>  include/hw/s390x/tod.h                        |  18 +-
>  include/hw/s390x/vfio-ccw.h                   |   7 +-
>  include/hw/scsi/esp.h                         |   9 +-
>  include/hw/scsi/scsi.h                        |  19 +-
>  include/hw/sd/allwinner-sdhost.h              |  18 +-
>  include/hw/sd/aspeed_sdhci.h                  |  10 +-
>  include/hw/sd/bcm2835_sdhost.h                |  10 +-
>  include/hw/sd/sd.h                            |  23 +-
>  include/hw/sd/sdhci.h                         |  13 +-
>  include/hw/southbridge/piix.h                 |  10 +-
>  include/hw/sparc/sparc32_dma.h                |  34 +-
>  include/hw/sparc/sun4m_iommu.h                |   9 +-
>  include/hw/sparc/sun4u_iommu.h                |   9 +-
>  include/hw/ssi/aspeed_smc.h                   |  18 +-
>  include/hw/ssi/imx_spi.h                      |   9 +-
>  include/hw/ssi/mss-spi.h                      |   9 +-
>  include/hw/ssi/pl022.h                        |   9 +-
>  include/hw/ssi/ssi.h                          |  11 +-
>  include/hw/ssi/stm32f2xx_spi.h                |  10 +-
>  include/hw/ssi/xilinx_spips.h                 |  32 +-
>  include/hw/stream.h                           |  11 +-
>  include/hw/sysbus.h                           |  17 +-
>  include/hw/timer/a9gtimer.h                   |   6 +-
>  include/hw/timer/allwinner-a10-pit.h          |   6 +-
>  include/hw/timer/arm_mptimer.h                |  10 +-
>  include/hw/timer/armv7m_systick.h             |   9 +-
>  include/hw/timer/aspeed_timer.h               |  19 +-
>  include/hw/timer/avr_timer16.h                |  10 +-
>  include/hw/timer/bcm2835_systmr.h             |  10 +-
>  include/hw/timer/cmsdk-apb-dualtimer.h        |   7 +-
>  include/hw/timer/cmsdk-apb-timer.h            |  10 +-
>  include/hw/timer/digic-timer.h                |   9 +-
>  include/hw/timer/i8254.h                      |  11 +-
>  include/hw/timer/i8254_internal.h             |   8 +-
>  include/hw/timer/imx_epit.h                   |   9 +-
>  include/hw/timer/imx_gpt.h                    |   9 +-
>  include/hw/timer/mss-timer.h                  |  10 +-
>  include/hw/timer/nrf51_timer.h                |   9 +-
>  include/hw/timer/renesas_cmt.h                |   9 +-
>  include/hw/timer/renesas_tmr.h                |   9 +-
>  include/hw/timer/stm32f2xx_timer.h            |  10 +-
>  include/hw/usb.h                              |  17 +-
>  include/hw/usb/chipidea.h                     |   9 +-
>  include/hw/usb/imx-usb-phy.h                  |   9 +-
>  include/hw/vfio/vfio-amd-xgbe.h               |  11 +-
>  include/hw/vfio/vfio-calxeda-xgmac.h          |  21 +-
>  include/hw/vfio/vfio-platform.h               |  19 +-
>  include/hw/virtio/vhost-scsi-common.h         |  10 +-
>  include/hw/virtio/vhost-scsi.h                |  10 +-
>  include/hw/virtio/vhost-user-blk.h            |  10 +-
>  include/hw/virtio/vhost-user-fs.h             |  10 +-
>  include/hw/virtio/vhost-user-scsi.h           |  10 +-
>  include/hw/virtio/vhost-user-vsock.h          |  10 +-
>  include/hw/virtio/vhost-vsock-common.h        |  10 +-
>  include/hw/virtio/vhost-vsock.h               |  10 +-
>  include/hw/virtio/virtio-balloon.h            |  10 +-
>  include/hw/virtio/virtio-blk.h                |  10 +-
>  include/hw/virtio/virtio-bus.h                |  15 +-
>  include/hw/virtio/virtio-crypto.h             |  10 +-
>  include/hw/virtio/virtio-gpu-pci.h            |   5 +-
>  include/hw/virtio/virtio-gpu.h                |  33 +-
>  include/hw/virtio/virtio-input.h              |  29 +-
>  include/hw/virtio/virtio-iommu.h              |  10 +-
>  include/hw/virtio/virtio-mem.h                |  17 +-
>  include/hw/virtio/virtio-mmio.h               |  19 +-
>  include/hw/virtio/virtio-net.h                |   7 +-
>  include/hw/virtio/virtio-pmem.h               |  17 +-
>  include/hw/virtio/virtio-rng.h                |  10 +-
>  include/hw/virtio/virtio-scsi.h               |  19 +-
>  include/hw/virtio/virtio-serial.h             |  23 +-
>  include/hw/virtio/virtio.h                    |  14 +-
>  include/hw/vmstate-if.h                       |  11 +-
>  include/hw/watchdog/cmsdk-apb-watchdog.h      |  10 +-
>  include/hw/watchdog/wdt_aspeed.h              |  19 +-
>  include/hw/watchdog/wdt_diag288.h             |  19 +-
>  include/hw/watchdog/wdt_imx2.h                |   9 +-
>  include/hw/xen/xen-block.h                    |  39 +-
>  include/hw/xen/xen-bus.h                      |  37 +-
>  include/hw/xen/xen-legacy-backend.h           |   6 +-
>  include/io/channel-buffer.h                   |   7 +-
>  include/io/channel-command.h                  |   7 +-
>  include/io/channel-file.h                     |   7 +-
>  include/io/channel-socket.h                   |   7 +-
>  include/io/channel-tls.h                      |   7 +-
>  include/io/channel-websock.h                  |   7 +-
>  include/io/channel.h                          |  12 +-
>  include/io/dns-resolver.h                     |  13 +-
>  include/io/net-listener.h                     |  14 +-
>  include/net/can_emu.h                         |   8 +-
>  include/net/can_host.h                        |  21 +-
>  include/net/filter.h                          |  13 +-
>  include/qom/object.h                          | 332 ++++++++-
>  include/qom/object_interfaces.h               |  13 +-
>  include/scsi/pr-manager.h                     |  16 +-
>  include/sysemu/accel.h                        |  18 +-
>  include/sysemu/cryptodev.h                    |  16 +-
>  include/sysemu/hostmem.h                      |  10 +-
>  include/sysemu/hvf.h                          |   8 +-
>  include/sysemu/iothread.h                     |   9 +-
>  include/sysemu/kvm.h                          |   7 +
>  include/sysemu/kvm_int.h                      |   5 -
>  include/sysemu/rng-random.h                   |   5 +-
>  include/sysemu/rng.h                          |  10 +-
>  include/sysemu/tpm.h                          |  11 +-
>  include/sysemu/tpm_backend.h                  |  12 +-
>  include/sysemu/vhost-user-backend.h           |  17 +-
>  include/ui/console.h                          |  10 +-
>  migration/migration.h                         |   6 +-
>  target/alpha/cpu-qom.h                        |  14 +-
>  target/arm/cpu-qom.h                          |  19 +-
>  target/arm/idau.h                             |  11 +-
>  target/avr/cpu-qom.h                          |  14 +-
>  target/cris/cpu-qom.h                         |  14 +-
>  target/hppa/cpu-qom.h                         |  14 +-
>  target/i386/cpu-qom.h                         |  14 +-
>  target/i386/hvf/hvf-i386.h                    |   4 +-
>  target/lm32/cpu-qom.h                         |  14 +-
>  target/m68k/cpu-qom.h                         |  14 +-
>  target/microblaze/cpu-qom.h                   |  14 +-
>  target/mips/cpu-qom.h                         |  14 +-
>  target/moxie/cpu.h                            |  17 +-
>  target/nios2/cpu.h                            |  17 +-
>  target/openrisc/cpu.h                         |  17 +-
>  target/ppc/cpu-qom.h                          |  14 +-
>  target/ppc/cpu.h                              |  11 +-
>  target/riscv/cpu.h                            |  17 +-
>  target/rx/cpu-qom.h                           |   6 +-
>  target/s390x/cpu-qom.h                        |  14 +-
>  target/sh4/cpu-qom.h                          |  14 +-
>  target/sparc/cpu-qom.h                        |  14 +-
>  target/tilegx/cpu.h                           |  17 +-
>  target/tricore/cpu-qom.h                      |  14 +-
>  target/unicore32/cpu-qom.h                    |  14 +-
>  target/xtensa/cpu-qom.h                       |  14 +-
>  accel/accel.c                                 |   6 +-
>  accel/kvm/kvm-all.c                           |   6 +-
>  accel/qtest.c                                 |   6 +-
>  accel/tcg/tcg-all.c                           |  15 +-
>  accel/xen/xen-all.c                           |   6 +-
>  authz/base.c                                  |   6 +-
>  authz/list.c                                  |   7 +-
>  authz/listfile.c                              |   7 +-
>  authz/pamacct.c                               |   7 +-
>  authz/simple.c                                |   7 +-
>  backends/cryptodev-builtin.c                  |  15 +-
>  backends/cryptodev-vhost-user.c               |  18 +-
>  backends/cryptodev.c                          |   7 +-
>  backends/dbus-vmstate.c                       |  23 +-
>  backends/hostmem-file.c                       |  13 +-
>  backends/hostmem-memfd.c                      |   9 +-
>  backends/hostmem-ram.c                        |   6 +-
>  backends/hostmem.c                            |   6 +-
>  backends/rng-builtin.c                        |  15 +-
>  backends/rng-egd.c                            |  16 +-
>  backends/rng-random.c                         |   6 +-
>  backends/rng.c                                |   6 +-
>  backends/tpm/tpm_backend.c                    |   8 +-
>  backends/tpm/tpm_emulator.c                   |  16 +-
>  backends/tpm/tpm_passthrough.c                |  13 +-
>  backends/vhost-user.c                         |   6 +-
>  block/throttle-groups.c                       |  10 +-
>  chardev/baum.c                                |  15 +-
>  chardev/char-console.c                        |   6 +-
>  chardev/char-fd.c                             |   6 +-
>  chardev/char-mux.c                            |   6 +-
>  chardev/char-null.c                           |   6 +-
>  chardev/char-parallel.c                       |  23 +-
>  chardev/char-pty.c                            |  15 +-
>  chardev/char-ringbuf.c                        |  18 +-
>  chardev/char-socket.c                         |  16 +-
>  chardev/char-udp.c                            |  15 +-
>  chardev/char-win-stdio.c                      |  16 +-
>  chardev/char-win.c                            |   6 +-
>  chardev/char.c                                |   6 +-
>  chardev/msmouse.c                             |  16 +-
>  chardev/spice.c                               |  10 +-
>  chardev/testdev.c                             |  16 +-
>  chardev/wctablet.c                            |  16 +-
>  crypto/secret.c                               |  24 +-
>  crypto/secret_common.c                        |  32 +-
>  crypto/secret_keyring.c                       |  28 +-
>  crypto/tls-cipher-suites.c                    |   6 +-
>  crypto/tlscreds.c                             |  25 +-
>  crypto/tlscredsanon.c                         |  23 +-
>  crypto/tlscredspsk.c                          |  25 +-
>  crypto/tlscredsx509.c                         |  29 +-
>  gdbstub.c                                     |   6 +-
>  hw/9pfs/virtio-9p-device.c                    |   6 +-
>  hw/acpi/generic_event_device.c                |   6 +-
>  hw/acpi/piix4.c                               |  16 +-
>  hw/acpi/vmgenid.c                             |   6 +-
>  hw/adc/stm32f2xx_adc.c                        |   6 +-
>  hw/alpha/typhoon.c                            |  18 +-
>  hw/arm/allwinner-a10.c                        |   6 +-
>  hw/arm/allwinner-h3.c                         | 130 ++--
>  hw/arm/armsse.c                               |  26 +-
>  hw/arm/armv7m.c                               |   8 +-
>  hw/arm/aspeed.c                               |   4 +-
>  hw/arm/aspeed_ast2600.c                       | 208 +++---
>  hw/arm/aspeed_soc.c                           | 228 +++----
>  hw/arm/bcm2835_peripherals.c                  |   6 +-
>  hw/arm/bcm2836.c                              |   2 +-
>  hw/arm/boot.c                                 |   6 +-
>  hw/arm/collie.c                               |  16 +-
>  hw/arm/digic.c                                |   6 +-
>  hw/arm/exynos4210.c                           |   6 +-
>  hw/arm/exynos4_boards.c                       |   8 +-
>  hw/arm/fsl-imx25.c                            |   6 +-
>  hw/arm/fsl-imx31.c                            |   6 +-
>  hw/arm/fsl-imx6.c                             |   6 +-
>  hw/arm/fsl-imx6ul.c                           |   6 +-
>  hw/arm/fsl-imx7.c                             |   6 +-
>  hw/arm/gumstix.c                              |   8 +-
>  hw/arm/highbank.c                             |  24 +-
>  hw/arm/integratorcp.c                         |  38 +-
>  hw/arm/microbit.c                             |  16 +-
>  hw/arm/mps2-tz.c                              |  29 +-
>  hw/arm/mps2.c                                 |  29 +-
>  hw/arm/msf2-soc.c                             |   6 +-
>  hw/arm/musca.c                                |  29 +-
>  hw/arm/musicpal.c                             |  95 +--
>  hw/arm/nrf51_soc.c                            |   6 +-
>  hw/arm/nseries.c                              |   8 +-
>  hw/arm/omap_sx1.c                             |   8 +-
>  hw/arm/orangepi.c                             |   6 +-
>  hw/arm/palm.c                                 |  16 +-
>  hw/arm/pxa2xx.c                               |  49 +-
>  hw/arm/pxa2xx_gpio.c                          |  13 +-
>  hw/arm/pxa2xx_pic.c                           |  16 +-
>  hw/arm/raspi.c                                |  19 +-
>  hw/arm/realview.c                             |  12 +-
>  hw/arm/sbsa-ref.c                             |  16 +-
>  hw/arm/smmu-common.c                          |   6 +-
>  hw/arm/spitz.c                                |  89 ++-
>  hw/arm/stellaris.c                            |  46 +-
>  hw/arm/stm32f205_soc.c                        |   6 +-
>  hw/arm/stm32f405_soc.c                        |   6 +-
>  hw/arm/strongarm.c                            |  65 +-
>  hw/arm/tosa.c                                 |  28 +-
>  hw/arm/versatilepb.c                          |  24 +-
>  hw/arm/vexpress.c                             |  29 +-
>  hw/arm/virt.c                                 |   6 +-
>  hw/arm/xilinx_zynq.c                          |  16 +-
>  hw/arm/xlnx-versal-virt.c                     |  16 +-
>  hw/arm/xlnx-versal.c                          |   6 +-
>  hw/arm/xlnx-zcu102.c                          |  16 +-
>  hw/arm/xlnx-zynqmp.c                          |   6 +-
>  hw/arm/z2.c                                   |  17 +-
>  hw/audio/ac97.c                               |  10 +-
>  hw/audio/adlib.c                              |   9 +-
>  hw/audio/cs4231.c                             |  16 +-
>  hw/audio/cs4231a.c                            |   9 +-
>  hw/audio/es1370.c                             |  10 +-
>  hw/audio/gus.c                                |   9 +-
>  hw/audio/hda-codec.c                          |  16 +-
>  hw/audio/intel-hda.c                          |  15 +-
>  hw/audio/marvell_88w8618.c                    |  16 +-
>  hw/audio/milkymist-ac97.c                     |  13 +-
>  hw/audio/pcspk.c                              |  11 +-
>  hw/audio/pl041.c                              |  15 +-
>  hw/audio/sb16.c                               |   9 +-
>  hw/audio/wm8750.c                             |  15 +-
>  hw/avr/arduino.c                              |  19 +-
>  hw/avr/atmega.c                               |  12 +-
>  hw/block/fdc.c                                |  50 +-
>  hw/block/m25p80.c                             |  21 +-
>  hw/block/nand.c                               |  11 +-
>  hw/block/nvme.c                               |   6 +-
>  hw/block/onenand.c                            |  15 +-
>  hw/block/pflash_cfi01.c                       |   6 +-
>  hw/block/pflash_cfi02.c                       |   6 +-
>  hw/block/swim.c                               |  10 +-
>  hw/block/vhost-user-blk.c                     |   6 +-
>  hw/block/virtio-blk.c                         |   6 +-
>  hw/block/xen-block.c                          |  10 +-
>  hw/char/avr_usart.c                           |   6 +-
>  hw/char/bcm2835_aux.c                         |   6 +-
>  hw/char/cadence_uart.c                        |   6 +-
>  hw/char/cmsdk-apb-uart.c                      |   6 +-
>  hw/char/debugcon.c                            |  16 +-
>  hw/char/digic-uart.c                          |   6 +-
>  hw/char/escc.c                                |   6 +-
>  hw/char/etraxfs_ser.c                         |  16 +-
>  hw/char/exynos4210_uart.c                     |  16 +-
>  hw/char/grlib_apbuart.c                       |  16 +-
>  hw/char/ibex_uart.c                           |   6 +-
>  hw/char/imx_serial.c                          |   6 +-
>  hw/char/ipoctal232.c                          |  11 +-
>  hw/char/lm32_juart.c                          |  12 +-
>  hw/char/lm32_uart.c                           |  12 +-
>  hw/char/mcf_uart.c                            |  15 +-
>  hw/char/milkymist-uart.c                      |  13 +-
>  hw/char/nrf51_uart.c                          |   6 +-
>  hw/char/parallel.c                            |  16 +-
>  hw/char/pl011.c                               |   8 +-
>  hw/char/renesas_sci.c                         |   6 +-
>  hw/char/sclpconsole-lm.c                      |  16 +-
>  hw/char/sclpconsole.c                         |  16 +-
>  hw/char/serial-isa.c                          |  15 +-
>  hw/char/serial-pci-multi.c                    |   8 +-
>  hw/char/serial-pci.c                          |  15 +-
>  hw/char/serial.c                              |  10 +-
>  hw/char/spapr_vty.c                           |  12 +-
>  hw/char/stm32f2xx_usart.c                     |   6 +-
>  hw/char/terminal3270.c                        |  16 +-
>  hw/char/virtio-console.c                      |  18 +-
>  hw/char/virtio-serial-bus.c                   |  14 +-
>  hw/char/xilinx_uartlite.c                     |  16 +-
>  hw/core/bus.c                                 |   6 +-
>  hw/core/clock.c                               |   6 +-
>  hw/core/cpu.c                                 |   6 +-
>  hw/core/fw-path-provider.c                    |   6 +-
>  hw/core/generic-loader.c                      |   6 +-
>  hw/core/hotplug.c                             |   6 +-
>  hw/core/irq.c                                 |   9 +-
>  hw/core/machine.c                             |   6 +-
>  hw/core/nmi.c                                 |   6 +-
>  hw/core/or-irq.c                              |   6 +-
>  hw/core/platform-bus.c                        |   6 +-
>  hw/core/qdev.c                                |   6 +-
>  hw/core/register.c                            |   6 +-
>  hw/core/resettable.c                          |   6 +-
>  hw/core/split-irq.c                           |   6 +-
>  hw/core/stream.c                              |   6 +-
>  hw/core/sysbus.c                              |   8 +-
>  hw/core/vmstate-if.c                          |   6 +-
>  hw/cpu/a15mpcore.c                            |   6 +-
>  hw/cpu/a9mpcore.c                             |   6 +-
>  hw/cpu/arm11mpcore.c                          |   6 +-
>  hw/cpu/cluster.c                              |   6 +-
>  hw/cpu/core.c                                 |   6 +-
>  hw/cpu/realview_mpcore.c                      |  16 +-
>  hw/display/ads7846.c                          |  15 +-
>  hw/display/artist.c                           |  15 +-
>  hw/display/ati.c                              |   6 +-
>  hw/display/bcm2835_fb.c                       |   6 +-
>  hw/display/bochs-display.c                    |  16 +-
>  hw/display/cg3.c                              |  15 +-
>  hw/display/cirrus_vga.c                       |  16 +-
>  hw/display/cirrus_vga_isa.c                   |  16 +-
>  hw/display/dpcd.c                             |   6 +-
>  hw/display/exynos4210_fimd.c                  |  16 +-
>  hw/display/g364fb.c                           |  15 +-
>  hw/display/i2c-ddc.c                          |   6 +-
>  hw/display/jazz_led.c                         |  15 +-
>  hw/display/macfb.c                            |   8 +-
>  hw/display/milkymist-tmu2.c                   |  13 +-
>  hw/display/milkymist-vgafb.c                  |  13 +-
>  hw/display/next-fb.c                          |  12 +-
>  hw/display/pl110.c                            |  41 +-
>  hw/display/qxl.c                              |  10 +-
>  hw/display/ramfb-standalone.c                 |  15 +-
>  hw/display/sii9022.c                          |  15 +-
>  hw/display/sm501.c                            |  26 +-
>  hw/display/ssd0303.c                          |  15 +-
>  hw/display/ssd0323.c                          |  15 +-
>  hw/display/tcx.c                              |  15 +-
>  hw/display/vga-isa.c                          |  15 +-
>  hw/display/vga-pci.c                          |  19 +-
>  hw/display/vhost-user-gpu-pci.c               |  10 +-
>  hw/display/vhost-user-gpu.c                   |   9 +-
>  hw/display/vhost-user-vga.c                   |  10 +-
>  hw/display/virtio-gpu-base.c                  |   7 +-
>  hw/display/virtio-gpu-pci.c                   |  12 +-
>  hw/display/virtio-gpu.c                       |   6 +-
>  hw/display/virtio-vga.c                       |  12 +-
>  hw/display/vmware_vga.c                       |  11 +-
>  hw/display/xlnx_dp.c                          |   6 +-
>  hw/dma/bcm2835_dma.c                          |   6 +-
>  hw/dma/i82374.c                               |  15 +-
>  hw/dma/i8257.c                                |   8 +-
>  hw/dma/pl080.c                                |   8 +-
>  hw/dma/pl330.c                                |  10 +-
>  hw/dma/puv3_dma.c                             |  15 +-
>  hw/dma/pxa2xx_dma.c                           |  15 +-
>  hw/dma/rc4030.c                               |  18 +-
>  hw/dma/sparc32_dma.c                          |  12 +-
>  hw/dma/xilinx_axidma.c                        |  29 +-
>  hw/dma/xlnx-zdma.c                            |   6 +-
>  hw/dma/xlnx-zynq-devcfg.c                     |   6 +-
>  hw/dma/xlnx_dpdma.c                           |   6 +-
>  hw/gpio/aspeed_gpio.c                         |  14 +-
>  hw/gpio/bcm2835_gpio.c                        |   6 +-
>  hw/gpio/gpio_key.c                            |  15 +-
>  hw/gpio/imx_gpio.c                            |   6 +-
>  hw/gpio/max7310.c                             |  15 +-
>  hw/gpio/mpc8xxx.c                             |  15 +-
>  hw/gpio/nrf51_gpio.c                          |   6 +-
>  hw/gpio/omap_gpio.c                           |   8 +-
>  hw/gpio/pl061.c                               |  17 +-
>  hw/gpio/puv3_gpio.c                           |  15 +-
>  hw/gpio/zaurus.c                              |  12 +-
>  hw/hppa/dino.c                                |  16 +-
>  hw/hppa/lasi.c                                |  16 +-
>  hw/hyperv/hyperv.c                            |  15 +-
>  hw/hyperv/hyperv_testdev.c                    |  11 +-
>  hw/hyperv/vmbus.c                             |  13 +-
>  hw/i2c/aspeed_i2c.c                           |  12 +-
>  hw/i2c/bitbang_i2c.c                          |  15 +-
>  hw/i2c/core.c                                 |   8 +-
>  hw/i2c/exynos4210_i2c.c                       |  16 +-
>  hw/i2c/imx_i2c.c                              |   6 +-
>  hw/i2c/microbit_i2c.c                         |   6 +-
>  hw/i2c/mpc_i2c.c                              |  16 +-
>  hw/i2c/omap_i2c.c                             |   6 +-
>  hw/i2c/ppc4xx_i2c.c                           |   6 +-
>  hw/i2c/smbus_eeprom.c                         |  16 +-
>  hw/i2c/smbus_ich9.c                           |  16 +-
>  hw/i2c/smbus_slave.c                          |   6 +-
>  hw/i2c/versatile_i2c.c                        |  13 +-
>  hw/i386/amd_iommu.c                           |  10 +-
>  hw/i386/intel_iommu.c                         |   8 +-
>  hw/i386/kvm/apic.c                            |   6 +-
>  hw/i386/kvm/clock.c                           |  15 +-
>  hw/i386/kvm/i8254.c                           |  24 +-
>  hw/i386/kvm/i8259.c                           |  18 +-
>  hw/i386/kvm/ioapic.c                          |   6 +-
>  hw/i386/kvmvapic.c                            |  15 +-
>  hw/i386/microvm.c                             |   6 +-
>  hw/i386/pc.c                                  |   6 +-
>  hw/i386/pc_piix.c                             |   6 +-
>  hw/i386/port92.c                              |  15 +-
>  hw/i386/vmmouse.c                             |  16 +-
>  hw/i386/vmport.c                              |  15 +-
>  hw/i386/x86-iommu.c                           |   6 +-
>  hw/i386/x86.c                                 |   6 +-
>  hw/i386/xen/xen_apic.c                        |   6 +-
>  hw/i386/xen/xen_platform.c                    |  16 +-
>  hw/i386/xen/xen_pvdevice.c                    |  16 +-
>  hw/ide/ahci-allwinner.c                       |   9 +-
>  hw/ide/ahci.c                                 |   6 +-
>  hw/ide/cmd646.c                               |   6 +-
>  hw/ide/ich.c                                  |   6 +-
>  hw/ide/isa.c                                  |  15 +-
>  hw/ide/macio.c                                |   6 +-
>  hw/ide/microdrive.c                           |  17 +-
>  hw/ide/mmio.c                                 |  15 +-
>  hw/ide/pci.c                                  |   6 +-
>  hw/ide/piix.c                                 |  10 +-
>  hw/ide/qdev.c                                 |  14 +-
>  hw/ide/sii3112.c                              |  14 +-
>  hw/ide/via.c                                  |   6 +-
>  hw/input/adb-kbd.c                            |  24 +-
>  hw/input/adb-mouse.c                          |  24 +-
>  hw/input/adb.c                                |   8 +-
>  hw/input/lm832x.c                             |  15 +-
>  hw/input/milkymist-softusb.c                  |  13 +-
>  hw/input/pckbd.c                              |   8 +-
>  hw/input/pl050.c                              |  19 +-
>  hw/input/vhost-user-input.c                   |   6 +-
>  hw/input/virtio-input-hid.c                   |  12 +-
>  hw/input/virtio-input-host.c                  |   6 +-
>  hw/input/virtio-input.c                       |   6 +-
>  hw/intc/allwinner-a10-pic.c                   |   6 +-
>  hw/intc/apic.c                                |  12 +-
>  hw/intc/apic_common.c                         |   6 +-
>  hw/intc/arm_gic.c                             |   6 +-
>  hw/intc/arm_gic_common.c                      |   6 +-
>  hw/intc/arm_gic_kvm.c                         |  23 +-
>  hw/intc/arm_gicv2m.c                          |  15 +-
>  hw/intc/arm_gicv3.c                           |   6 +-
>  hw/intc/arm_gicv3_common.c                    |   6 +-
>  hw/intc/arm_gicv3_its_common.c                |   6 +-
>  hw/intc/arm_gicv3_its_kvm.c                   |  20 +-
>  hw/intc/arm_gicv3_kvm.c                       |  21 +-
>  hw/intc/armv7m_nvic.c                         |   6 +-
>  hw/intc/aspeed_vic.c                          |   6 +-
>  hw/intc/bcm2835_ic.c                          |   6 +-
>  hw/intc/bcm2836_control.c                     |   6 +-
>  hw/intc/etraxfs_pic.c                         |  11 +-
>  hw/intc/exynos4210_combiner.c                 |  16 +-
>  hw/intc/exynos4210_gic.c                      |  31 +-
>  hw/intc/grlib_irqmp.c                         |  15 +-
>  hw/intc/heathrow_pic.c                        |   6 +-
>  hw/intc/i8259.c                               |  16 +-
>  hw/intc/i8259_common.c                        |   6 +-
>  hw/intc/ibex_plic.c                           |   6 +-
>  hw/intc/imx_avic.c                            |   6 +-
>  hw/intc/imx_gpcv2.c                           |   6 +-
>  hw/intc/intc.c                                |   6 +-
>  hw/intc/ioapic.c                              |   6 +-
>  hw/intc/ioapic_common.c                       |   6 +-
>  hw/intc/lm32_pic.c                            |  12 +-
>  hw/intc/loongson_liointc.c                    |  11 +-
>  hw/intc/mips_gic.c                            |   6 +-
>  hw/intc/nios2_iic.c                           |  16 +-
>  hw/intc/omap_intc.c                           |  10 +-
>  hw/intc/ompic.c                               |  12 +-
>  hw/intc/openpic.c                             |   6 +-
>  hw/intc/openpic_kvm.c                         |  16 +-
>  hw/intc/pl190.c                               |  15 +-
>  hw/intc/pnv_xive.c                            |   6 +-
>  hw/intc/puv3_intc.c                           |  15 +-
>  hw/intc/realview_gic.c                        |   6 +-
>  hw/intc/rx_icu.c                              |   6 +-
>  hw/intc/s390_flic.c                           |   8 +-
>  hw/intc/s390_flic_kvm.c                       |  22 +-
>  hw/intc/slavio_intctl.c                       |  16 +-
>  hw/intc/spapr_xive.c                          |   6 +-
>  hw/intc/xics.c                                |  10 +-
>  hw/intc/xics_pnv.c                            |   6 +-
>  hw/intc/xics_spapr.c                          |   6 +-
>  hw/intc/xilinx_intc.c                         |  10 +-
>  hw/intc/xive.c                                |  18 +-
>  hw/intc/xlnx-pmu-iomod-intc.c                 |   6 +-
>  hw/intc/xlnx-zynqmp-ipi.c                     |   6 +-
>  hw/ipack/ipack.c                              |   8 +-
>  hw/ipack/tpci200.c                            |  16 +-
>  hw/ipmi/ipmi.c                                |   8 +-
>  hw/ipmi/ipmi_bmc_extern.c                     |  10 +-
>  hw/ipmi/ipmi_bmc_sim.c                        |   6 +-
>  hw/ipmi/isa_ipmi_bt.c                         |  16 +-
>  hw/ipmi/isa_ipmi_kcs.c                        |  16 +-
>  hw/ipmi/pci_ipmi_bt.c                         |  16 +-
>  hw/ipmi/pci_ipmi_kcs.c                        |  16 +-
>  hw/ipmi/smbus_ipmi.c                          |  15 +-
>  hw/isa/i82378.c                               |  16 +-
>  hw/isa/isa-bus.c                              |  12 +-
>  hw/isa/isa-superio.c                          |   8 +-
>  hw/isa/lpc_ich9.c                             |   6 +-
>  hw/isa/pc87312.c                              |   6 +-
>  hw/isa/piix3.c                                |  14 +-
>  hw/isa/piix4.c                                |  16 +-
>  hw/isa/smc37c669-superio.c                    |   6 +-
>  hw/isa/vt82c686.c                             |  51 +-
>  hw/lm32/lm32_boards.c                         |   8 +-
>  hw/m68k/mcf_intc.c                            |  15 +-
>  hw/m68k/next-cube.c                           |  15 +-
>  hw/m68k/next-kbd.c                            |  15 +-
>  hw/m68k/q800.c                                |   6 +-
>  hw/mem/memory-device.c                        |   6 +-
>  hw/mem/nvdimm.c                               |   6 +-
>  hw/mem/pc-dimm.c                              |   6 +-
>  hw/microblaze/xlnx-zynqmp-pmu.c               |  16 +-
>  hw/mips/boston.c                              |  15 +-
>  hw/mips/cps.c                                 |   6 +-
>  hw/mips/gt64xxx_pci.c                         |  18 +-
>  hw/mips/jazz.c                                |   8 +-
>  hw/mips/malta.c                               |  15 +-
>  hw/misc/a9scu.c                               |   6 +-
>  hw/misc/allwinner-cpucfg.c                    |   6 +-
>  hw/misc/allwinner-h3-ccu.c                    |   6 +-
>  hw/misc/allwinner-h3-dramc.c                  |   6 +-
>  hw/misc/allwinner-h3-sysctrl.c                |   6 +-
>  hw/misc/allwinner-sid.c                       |   6 +-
>  hw/misc/applesmc.c                            |  12 +-
>  hw/misc/arm11scu.c                            |   6 +-
>  hw/misc/arm_integrator_debug.c                |  16 +-
>  hw/misc/arm_l2x0.c                            |  15 +-
>  hw/misc/arm_sysctl.c                          |  16 +-
>  hw/misc/armsse-cpuid.c                        |   6 +-
>  hw/misc/armsse-mhu.c                          |   6 +-
>  hw/misc/aspeed_scu.c                          |  12 +-
>  hw/misc/aspeed_sdmc.c                         |  12 +-
>  hw/misc/aspeed_xdma.c                         |   6 +-
>  hw/misc/auxbus.c                              |  12 +-
>  hw/misc/avr_power.c                           |   6 +-
>  hw/misc/bcm2835_mbox.c                        |   6 +-
>  hw/misc/bcm2835_mphi.c                        |   6 +-
>  hw/misc/bcm2835_property.c                    |   6 +-
>  hw/misc/bcm2835_rng.c                         |   6 +-
>  hw/misc/bcm2835_thermal.c                     |   6 +-
>  hw/misc/debugexit.c                           |  16 +-
>  hw/misc/eccmemctl.c                           |  15 +-
>  hw/misc/edu.c                                 |   9 +-
>  hw/misc/empty_slot.c                          |  15 +-
>  hw/misc/exynos4210_clk.c                      |  12 +-
>  hw/misc/exynos4210_pmu.c                      |  16 +-
>  hw/misc/exynos4210_rng.c                      |  16 +-
>  hw/misc/grlib_ahb_apb_pnp.c                   |   8 +-
>  hw/misc/imx25_ccm.c                           |   6 +-
>  hw/misc/imx31_ccm.c                           |   6 +-
>  hw/misc/imx6_ccm.c                            |   6 +-
>  hw/misc/imx6_src.c                            |   6 +-
>  hw/misc/imx6ul_ccm.c                          |   6 +-
>  hw/misc/imx7_ccm.c                            |   8 +-
>  hw/misc/imx7_gpr.c                            |   6 +-
>  hw/misc/imx7_snvs.c                           |   6 +-
>  hw/misc/imx_ccm.c                             |   6 +-
>  hw/misc/imx_rngc.c                            |   6 +-
>  hw/misc/iotkit-secctl.c                       |   6 +-
>  hw/misc/iotkit-sysctl.c                       |   6 +-
>  hw/misc/iotkit-sysinfo.c                      |   6 +-
>  hw/misc/ivshmem.c                             |  32 +-
>  hw/misc/mac_via.c                             |  10 +-
>  hw/misc/macio/cuda.c                          |   8 +-
>  hw/misc/macio/gpio.c                          |   6 +-
>  hw/misc/macio/mac_dbdma.c                     |   6 +-
>  hw/misc/macio/macio.c                         |  12 +-
>  hw/misc/macio/pmu.c                           |   8 +-
>  hw/misc/max111x.c                             |  10 +-
>  hw/misc/milkymist-hpdmc.c                     |  13 +-
>  hw/misc/milkymist-pfpu.c                      |  13 +-
>  hw/misc/mips_cmgcr.c                          |   6 +-
>  hw/misc/mips_cpc.c                            |   6 +-
>  hw/misc/mips_itu.c                            |   6 +-
>  hw/misc/mos6522.c                             |   6 +-
>  hw/misc/mps2-fpgaio.c                         |   6 +-
>  hw/misc/mps2-scc.c                            |   6 +-
>  hw/misc/msf2-sysreg.c                         |   6 +-
>  hw/misc/mst_fpga.c                            |  16 +-
>  hw/misc/nrf51_rng.c                           |   6 +-
>  hw/misc/pc-testdev.c                          |  16 +-
>  hw/misc/pca9552.c                             |  20 +-
>  hw/misc/pci-testdev.c                         |  16 +-
>  hw/misc/puv3_pm.c                             |  15 +-
>  hw/misc/pvpanic.c                             |  16 +-
>  hw/misc/sga.c                                 |  15 +-
>  hw/misc/slavio_misc.c                         |  25 +-
>  hw/misc/stm32f2xx_syscfg.c                    |   6 +-
>  hw/misc/stm32f4xx_exti.c                      |   6 +-
>  hw/misc/stm32f4xx_syscfg.c                    |   6 +-
>  hw/misc/tmp105.c                              |   6 +-
>  hw/misc/tmp421.c                              |  20 +-
>  hw/misc/tz-mpc.c                              |   8 +-
>  hw/misc/tz-msc.c                              |   6 +-
>  hw/misc/tz-ppc.c                              |   6 +-
>  hw/misc/unimp.c                               |   6 +-
>  hw/misc/vmcoreinfo.c                          |   6 +-
>  hw/misc/zynq-xadc.c                           |   6 +-
>  hw/misc/zynq_slcr.c                           |  15 +-
>  hw/net/allwinner-sun8i-emac.c                 |   6 +-
>  hw/net/allwinner_emac.c                       |   6 +-
>  hw/net/cadence_gem.c                          |   6 +-
>  hw/net/can/can_kvaser_pci.c                   |  16 +-
>  hw/net/can/can_mioe3680_pci.c                 |  16 +-
>  hw/net/can/can_pcm3680_pci.c                  |  16 +-
>  hw/net/dp8393x.c                              |  15 +-
>  hw/net/e1000.c                                |  25 +-
>  hw/net/e1000e.c                               |  15 +-
>  hw/net/etraxfs_eth.c                          |  17 +-
>  hw/net/fsl_etsec/etsec.c                      |   6 +-
>  hw/net/ftgmac100.c                            |   8 +-
>  hw/net/imx_fec.c                              |   8 +-
>  hw/net/lan9118.c                              |  15 +-
>  hw/net/lance.c                                |   6 +-
>  hw/net/lasi_i82596.c                          |   6 +-
>  hw/net/mcf_fec.c                              |  10 +-
>  hw/net/milkymist-minimac2.c                   |  13 +-
>  hw/net/mipsnet.c                              |  15 +-
>  hw/net/msf2-emac.c                            |   6 +-
>  hw/net/ne2000-isa.c                           |  15 +-
>  hw/net/ne2000-pci.c                           |   6 +-
>  hw/net/opencores_eth.c                        |  15 +-
>  hw/net/pcnet-pci.c                            |  16 +-
>  hw/net/rocker/rocker.c                        |  11 +-
>  hw/net/rtl8139.c                              |  16 +-
>  hw/net/smc91c111.c                            |  15 +-
>  hw/net/spapr_llan.c                           |  12 +-
>  hw/net/stellaris_enet.c                       |  16 +-
>  hw/net/sungem.c                               |  15 +-
>  hw/net/sunhme.c                               |  15 +-
>  hw/net/tulip.c                                |  10 +-
>  hw/net/virtio-net.c                           |   6 +-
>  hw/net/vmxnet3.c                              |  14 +-
>  hw/net/xgmac.c                                |  15 +-
>  hw/net/xilinx_axienet.c                       |  29 +-
>  hw/net/xilinx_ethlite.c                       |  11 +-
>  hw/nubus/mac-nubus-bridge.c                   |   6 +-
>  hw/nubus/nubus-bridge.c                       |   6 +-
>  hw/nubus/nubus-bus.c                          |   6 +-
>  hw/nubus/nubus-device.c                       |   6 +-
>  hw/nvram/ds1225y.c                            |  15 +-
>  hw/nvram/eeprom_at24c.c                       |  15 +-
>  hw/nvram/fw_cfg.c                             |  12 +-
>  hw/nvram/mac_nvram.c                          |   6 +-
>  hw/nvram/nrf51_nvm.c                          |   6 +-
>  hw/nvram/spapr_nvram.c                        |  16 +-
>  hw/pci-bridge/dec.c                           |  19 +-
>  hw/pci-bridge/gen_pcie_root_port.c            |  10 +-
>  hw/pci-bridge/i82801b11.c                     |   6 +-
>  hw/pci-bridge/ioh3420.c                       |   6 +-
>  hw/pci-bridge/pci_bridge_dev.c                |  15 +-
>  hw/pci-bridge/pci_expander_bridge.c           |  37 +-
>  hw/pci-bridge/pcie_pci_bridge.c               |  16 +-
>  hw/pci-bridge/pcie_root_port.c                |   6 +-
>  hw/pci-bridge/simba.c                         |   6 +-
>  hw/pci-bridge/xio3130_downstream.c            |   6 +-
>  hw/pci-bridge/xio3130_upstream.c              |   6 +-
>  hw/pci-host/bonito.c                          |  22 +-
>  hw/pci-host/designware.c                      |   8 +-
>  hw/pci-host/gpex.c                            |   8 +-
>  hw/pci-host/grackle.c                         |  18 +-
>  hw/pci-host/i440fx.c                          |  18 +-
>  hw/pci-host/pnv_phb3.c                        |  17 +-
>  hw/pci-host/pnv_phb3_msi.c                    |   6 +-
>  hw/pci-host/pnv_phb3_pbcq.c                   |   6 +-
>  hw/pci-host/pnv_phb4.c                        |  17 +-
>  hw/pci-host/pnv_phb4_pec.c                    |   8 +-
>  hw/pci-host/ppce500.c                         |  21 +-
>  hw/pci-host/prep.c                            |  27 +-
>  hw/pci-host/q35.c                             |   8 +-
>  hw/pci-host/sabre.c                           |   8 +-
>  hw/pci-host/uninorth.c                        |  18 +-
>  hw/pci-host/versatile.c                       |  24 +-
>  hw/pci-host/xen_igd_pt.c                      |   6 +-
>  hw/pci-host/xilinx-pcie.c                     |   8 +-
>  hw/pci/pci.c                                  |  14 +-
>  hw/pci/pci_bridge.c                           |   6 +-
>  hw/pci/pci_host.c                             |   6 +-
>  hw/pci/pcie_host.c                            |   6 +-
>  hw/pci/pcie_port.c                            |   8 +-
>  hw/pcmcia/pcmcia.c                            |   6 +-
>  hw/pcmcia/pxa2xx.c                            |  10 +-
>  hw/ppc/e500.c                                 |   8 +-
>  hw/ppc/e500plat.c                             |   6 +-
>  hw/ppc/mac_newworld.c                         |   6 +-
>  hw/ppc/mac_oldworld.c                         |   6 +-
>  hw/ppc/mpc8544_guts.c                         |  12 +-
>  hw/ppc/mpc8544ds.c                            |   6 +-
>  hw/ppc/pnv_core.c                             |   6 +-
>  hw/ppc/pnv_homer.c                            |  10 +-
>  hw/ppc/pnv_lpc.c                              |  12 +-
>  hw/ppc/pnv_occ.c                              |  10 +-
>  hw/ppc/pnv_pnor.c                             |   6 +-
>  hw/ppc/pnv_psi.c                              |  12 +-
>  hw/ppc/pnv_xscom.c                            |   6 +-
>  hw/ppc/ppc405_boards.c                        |   8 +-
>  hw/ppc/ppc440_pcix.c                          |  16 +-
>  hw/ppc/ppc440_uc.c                            |  16 +-
>  hw/ppc/ppc4xx_pci.c                           |  15 +-
>  hw/ppc/ppce500_spin.c                         |  15 +-
>  hw/ppc/prep_systemio.c                        |  16 +-
>  hw/ppc/rs6000_mc.c                            |  16 +-
>  hw/ppc/spapr.c                                |   6 +-
>  hw/ppc/spapr_drc.c                            |  16 +-
>  hw/ppc/spapr_iommu.c                          |   8 +-
>  hw/ppc/spapr_irq.c                            |   6 +-
>  hw/ppc/spapr_pci.c                            |   6 +-
>  hw/ppc/spapr_rng.c                            |  13 +-
>  hw/ppc/spapr_rtc.c                            |   6 +-
>  hw/ppc/spapr_tpm_proxy.c                      |   2 +-
>  hw/ppc/spapr_vio.c                            |  10 +-
>  hw/rdma/rdma.c                                |   6 +-
>  hw/rdma/vmw/pvrdma_main.c                     |   6 +-
>  hw/riscv/opentitan.c                          |  90 ++-
>  hw/riscv/riscv_hart.c                         |   6 +-
>  hw/riscv/sifive_clint.c                       |   6 +-
>  hw/riscv/sifive_e.c                           |  94 ++-
>  hw/riscv/sifive_e_prci.c                      |   6 +-
>  hw/riscv/sifive_gpio.c                        |   6 +-
>  hw/riscv/sifive_plic.c                        |   6 +-
>  hw/riscv/sifive_test.c                        |   6 +-
>  hw/riscv/sifive_u.c                           | 148 ++---
>  hw/riscv/sifive_u_otp.c                       |   6 +-
>  hw/riscv/sifive_u_prci.c                      |   6 +-
>  hw/riscv/virt.c                               |   6 +-
>  hw/rtc/allwinner-rtc.c                        |  12 +-
>  hw/rtc/aspeed_rtc.c                           |   6 +-
>  hw/rtc/ds1338.c                               |  15 +-
>  hw/rtc/exynos4210_rtc.c                       |  16 +-
>  hw/rtc/goldfish_rtc.c                         |   6 +-
>  hw/rtc/m41t80.c                               |  15 +-
>  hw/rtc/m48t59-isa.c                           |  23 +-
>  hw/rtc/m48t59.c                               |  23 +-
>  hw/rtc/mc146818rtc.c                          |   6 +-
>  hw/rtc/pl031.c                                |   6 +-
>  hw/rtc/sun4v-rtc.c                            |  15 +-
>  hw/rtc/twl92230.c                             |  15 +-
>  hw/rtc/xlnx-zynqmp-rtc.c                      |   6 +-
>  hw/rx/rx-gdbsim.c                             |  19 +-
>  hw/rx/rx62n.c                                 |  12 +-
>  hw/s390x/3270-ccw.c                           |   6 +-
>  hw/s390x/ap-bridge.c                          |   8 +-
>  hw/s390x/ap-device.c                          |   6 +-
>  hw/s390x/ccw-device.c                         |   6 +-
>  hw/s390x/css-bridge.c                         |   8 +-
>  hw/s390x/event-facility.c                     |  10 +-
>  hw/s390x/ipl.c                                |   6 +-
>  hw/s390x/s390-ccw.c                           |   6 +-
>  hw/s390x/s390-pci-bus.c                       |  14 +-
>  hw/s390x/s390-skeys-kvm.c                     |   6 +-
>  hw/s390x/s390-skeys.c                         |   8 +-
>  hw/s390x/s390-stattrib-kvm.c                  |   6 +-
>  hw/s390x/s390-stattrib.c                      |   8 +-
>  hw/s390x/s390-virtio-ccw.c                    |   6 +-
>  hw/s390x/sclp.c                               |   6 +-
>  hw/s390x/sclpcpu.c                            |   6 +-
>  hw/s390x/sclpquiesce.c                        |   6 +-
>  hw/s390x/tod-kvm.c                            |   6 +-
>  hw/s390x/tod-qemu.c                           |   6 +-
>  hw/s390x/tod.c                                |   6 +-
>  hw/s390x/vhost-vsock-ccw.c                    |   6 +-
>  hw/s390x/virtio-ccw-9p.c                      |   6 +-
>  hw/s390x/virtio-ccw-balloon.c                 |   6 +-
>  hw/s390x/virtio-ccw-blk.c                     |   6 +-
>  hw/s390x/virtio-ccw-crypto.c                  |   6 +-
>  hw/s390x/virtio-ccw-gpu.c                     |   6 +-
>  hw/s390x/virtio-ccw-input.c                   |  14 +-
>  hw/s390x/virtio-ccw-net.c                     |   6 +-
>  hw/s390x/virtio-ccw-rng.c                     |   6 +-
>  hw/s390x/virtio-ccw-scsi.c                    |   4 +-
>  hw/s390x/virtio-ccw-serial.c                  |   6 +-
>  hw/s390x/virtio-ccw.c                         |   8 +-
>  hw/scsi/esp-pci.c                             |  27 +-
>  hw/scsi/esp.c                                 |   6 +-
>  hw/scsi/lsi53c895a.c                          |  18 +-
>  hw/scsi/megasas.c                             |  29 +-
>  hw/scsi/mptsas.c                              |   5 -
>  hw/scsi/scsi-bus.c                            |   8 +-
>  hw/scsi/scsi-disk.c                           |  30 +-
>  hw/scsi/scsi-generic.c                        |   6 +-
>  hw/scsi/spapr_vscsi.c                         |  16 +-
>  hw/scsi/vhost-scsi-common.c                   |   6 +-
>  hw/scsi/vhost-scsi.c                          |   6 +-
>  hw/scsi/vhost-user-scsi.c                     |   6 +-
>  hw/scsi/virtio-scsi.c                         |   8 +-
>  hw/scsi/vmw_pvscsi.c                          |  29 +-
>  hw/sd/allwinner-sdhost.c                      |  18 +-
>  hw/sd/aspeed_sdhci.c                          |   6 +-
>  hw/sd/bcm2835_sdhost.c                        |  14 +-
>  hw/sd/core.c                                  |   6 +-
>  hw/sd/milkymist-memcard.c                     |  13 +-
>  hw/sd/pl181.c                                 |  15 +-
>  hw/sd/pxa2xx_mmci.c                           |  16 +-
>  hw/sd/sd.c                                    |   6 +-
>  hw/sd/sdhci-pci.c                             |   6 +-
>  hw/sd/sdhci.c                                 |  17 +-
>  hw/sd/ssi-sd.c                                |  15 +-
>  hw/sh4/sh_pci.c                               |  18 +-
>  hw/sparc/sun4m.c                              |  62 +-
>  hw/sparc/sun4m_iommu.c                        |   8 +-
>  hw/sparc64/niagara.c                          |   6 +-
>  hw/sparc64/sun4u.c                            |  45 +-
>  hw/sparc64/sun4u_iommu.c                      |   8 +-
>  hw/ssi/aspeed_smc.c                           |   2 +-
>  hw/ssi/imx_spi.c                              |   6 +-
>  hw/ssi/mss-spi.c                              |   6 +-
>  hw/ssi/pl022.c                                |   6 +-
>  hw/ssi/ssi.c                                  |  12 +-
>  hw/ssi/stm32f2xx_spi.c                        |   6 +-
>  hw/ssi/xilinx_spi.c                           |  15 +-
>  hw/ssi/xilinx_spips.c                         |  10 +-
>  hw/timer/a9gtimer.c                           |   6 +-
>  hw/timer/allwinner-a10-pit.c                  |   6 +-
>  hw/timer/altera_timer.c                       |  16 +-
>  hw/timer/arm_mptimer.c                        |   6 +-
>  hw/timer/arm_timer.c                          |  26 +-
>  hw/timer/armv7m_systick.c                     |   6 +-
>  hw/timer/aspeed_timer.c                       |  12 +-
>  hw/timer/avr_timer16.c                        |   6 +-
>  hw/timer/bcm2835_systmr.c                     |   6 +-
>  hw/timer/cadence_ttc.c                        |  16 +-
>  hw/timer/cmsdk-apb-dualtimer.c                |   6 +-
>  hw/timer/cmsdk-apb-timer.c                    |   6 +-
>  hw/timer/digic-timer.c                        |   6 +-
>  hw/timer/etraxfs_timer.c                      |  16 +-
>  hw/timer/exynos4210_mct.c                     |  16 +-
>  hw/timer/exynos4210_pwm.c                     |  16 +-
>  hw/timer/grlib_gptimer.c                      |  13 +-
>  hw/timer/hpet.c                               |  15 +-
>  hw/timer/i8254.c                              |  16 +-
>  hw/timer/i8254_common.c                       |   6 +-
>  hw/timer/imx_epit.c                           |   6 +-
>  hw/timer/imx_gpt.c                            |  12 +-
>  hw/timer/lm32_timer.c                         |  12 +-
>  hw/timer/milkymist-sysctl.c                   |  13 +-
>  hw/timer/mss-timer.c                          |   6 +-
>  hw/timer/nrf51_timer.c                        |   6 +-
>  hw/timer/puv3_ost.c                           |  15 +-
>  hw/timer/pxa2xx_timer.c                       |  17 +-
>  hw/timer/renesas_cmt.c                        |   6 +-
>  hw/timer/renesas_tmr.c                        |   6 +-
>  hw/timer/slavio_timer.c                       |  16 +-
>  hw/timer/stm32f2xx_timer.c                    |   6 +-
>  hw/timer/xilinx_timer.c                       |  11 +-
>  hw/tpm/tpm_crb.c                              |  15 +-
>  hw/tpm/tpm_spapr.c                            |  16 +-
>  hw/tpm/tpm_tis_isa.c                          |  15 +-
>  hw/tpm/tpm_tis_sysbus.c                       |  15 +-
>  hw/usb/bus.c                                  |   8 +-
>  hw/usb/ccid-card-emulated.c                   |  13 +-
>  hw/usb/ccid-card-passthru.c                   |  11 +-
>  hw/usb/chipidea.c                             |   6 +-
>  hw/usb/dev-audio.c                            |  11 +-
>  hw/usb/dev-hid.c                              |  17 +-
>  hw/usb/dev-hub.c                              |  15 +-
>  hw/usb/dev-mtp.c                              |  10 +-
>  hw/usb/dev-network.c                          |  15 +-
>  hw/usb/dev-serial.c                           |  15 +-
>  hw/usb/dev-smartcard-reader.c                 |  23 +-
>  hw/usb/dev-storage.c                          |  19 +-
>  hw/usb/dev-uas.c                              |  10 +-
>  hw/usb/dev-wacom.c                            |  11 +-
>  hw/usb/hcd-dwc2.c                             |  14 +-
>  hw/usb/hcd-ehci-pci.c                         |   2 +-
>  hw/usb/hcd-ehci-sysbus.c                      |  18 +-
>  hw/usb/hcd-ohci-pci.c                         |  15 +-
>  hw/usb/hcd-ohci.c                             |   6 +-
>  hw/usb/hcd-uhci.c                             |   6 +-
>  hw/usb/hcd-xhci-nec.c                         |   6 +-
>  hw/usb/hcd-xhci.c                             |   8 +-
>  hw/usb/host-libusb.c                          |  13 +-
>  hw/usb/imx-usb-phy.c                          |   6 +-
>  hw/usb/redirect.c                             |  10 +-
>  hw/usb/tusb6010.c                             |  15 +-
>  hw/vfio/amd-xgbe.c                            |   6 +-
>  hw/vfio/ap.c                                  |  16 +-
>  hw/vfio/calxeda-xgmac.c                       |   6 +-
>  hw/vfio/ccw.c                                 |   6 +-
>  hw/vfio/igd.c                                 |   6 +-
>  hw/vfio/pci.c                                 |  11 +-
>  hw/vfio/platform.c                            |   6 +-
>  hw/virtio/vhost-scsi-pci.c                    |   5 +-
>  hw/virtio/vhost-user-blk-pci.c                |   5 +-
>  hw/virtio/vhost-user-fs-pci.c                 |   5 +-
>  hw/virtio/vhost-user-fs.c                     |   6 +-
>  hw/virtio/vhost-user-input-pci.c              |   5 +-
>  hw/virtio/vhost-user-scsi-pci.c               |   5 +-
>  hw/virtio/vhost-user-vsock-pci.c              |   5 +-
>  hw/virtio/vhost-user-vsock.c                  |   6 +-
>  hw/virtio/vhost-vsock-common.c                |   6 +-
>  hw/virtio/vhost-vsock-pci.c                   |   5 +-
>  hw/virtio/vhost-vsock.c                       |   6 +-
>  hw/virtio/virtio-9p-pci.c                     |  10 +-
>  hw/virtio/virtio-balloon-pci.c                |   5 +-
>  hw/virtio/virtio-balloon.c                    |   6 +-
>  hw/virtio/virtio-blk-pci.c                    |   5 +-
>  hw/virtio/virtio-bus.c                        |   6 +-
>  hw/virtio/virtio-crypto-pci.c                 |   5 +-
>  hw/virtio/virtio-crypto.c                     |   6 +-
>  hw/virtio/virtio-input-host-pci.c             |   5 +-
>  hw/virtio/virtio-input-pci.c                  |  13 +-
>  hw/virtio/virtio-iommu-pci.c                  |   5 +-
>  hw/virtio/virtio-iommu.c                      |   8 +-
>  hw/virtio/virtio-mem.c                        |   6 +-
>  hw/virtio/virtio-mmio.c                       |   8 +-
>  hw/virtio/virtio-net-pci.c                    |   5 +-
>  hw/virtio/virtio-pci.c                        |   4 +-
>  hw/virtio/virtio-pmem.c                       |   6 +-
>  hw/virtio/virtio-rng-pci.c                    |   5 +-
>  hw/virtio/virtio-rng.c                        |   6 +-
>  hw/virtio/virtio-scsi-pci.c                   |   5 +-
>  hw/virtio/virtio-serial-pci.c                 |   5 +-
>  hw/virtio/virtio.c                            |   6 +-
>  hw/watchdog/cmsdk-apb-watchdog.c              |   8 +-
>  hw/watchdog/wdt_aspeed.c                      |   8 +-
>  hw/watchdog/wdt_diag288.c                     |   2 +-
>  hw/watchdog/wdt_i6300esb.c                    |   7 +-
>  hw/watchdog/wdt_ib700.c                       |  11 +-
>  hw/watchdog/wdt_imx2.c                        |   2 +-
>  hw/xen/xen-bus.c                              |  10 +-
>  hw/xen/xen-legacy-backend.c                   |  10 +-
>  hw/xen/xen_pt.c                               |   6 +-
>  hw/xtensa/xtfpga.c                            |  20 +-
>  io/channel-buffer.c                           |   6 +-
>  io/channel-command.c                          |   6 +-
>  io/channel-file.c                             |   6 +-
>  io/channel-socket.c                           |   6 +-
>  io/channel-tls.c                              |   6 +-
>  io/channel-websock.c                          |   6 +-
>  io/channel.c                                  |   6 +-
>  io/dns-resolver.c                             |   6 +-
>  io/net-listener.c                             |   6 +-
>  iothread.c                                    |  12 +-
>  migration/migration.c                         |   6 +-
>  migration/rdma.c                              |  13 +-
>  net/can/can_core.c                            |   6 +-
>  net/can/can_host.c                            |   6 +-
>  net/can/can_socketcan.c                       |  16 +-
>  net/colo-compare.c                            |  15 +-
>  net/dump.c                                    |  13 +-
>  net/filter-buffer.c                           |  15 +-
>  net/filter-mirror.c                           |  25 +-
>  net/filter-replay.c                           |  13 +-
>  net/filter-rewriter.c                         |  17 +-
>  net/filter.c                                  |   6 +-
>  qom/container.c                               |   6 +-
>  qom/object.c                                  |   6 +-
>  scsi/pr-manager-helper.c                      |  17 +-
>  scsi/pr-manager.c                             |   7 +-
>  softmmu/memory.c                              |   8 +-
>  target/arm/cpu.c                              |   4 +-
>  target/arm/cpu64.c                            |   2 +-
>  target/hppa/cpu.c                             |   6 +-
>  target/i386/cpu.c                             |   8 +-
>  target/i386/hax-all.c                         |   6 +-
>  target/i386/hvf/hvf.c                         |   6 +-
>  target/i386/sev.c                             |  14 +-
>  target/i386/whpx-all.c                        |   6 +-
>  target/microblaze/cpu.c                       |   6 +-
>  target/mips/cpu.c                             |   2 +-
>  target/nios2/cpu.c                            |   6 +-
>  target/ppc/translate_init.inc.c               |   4 +-
>  target/rx/cpu.c                               |   8 +-
>  target/s390x/cpu.c                            |   6 +-
>  target/s390x/cpu_models.c                     |   6 +-
>  target/sparc/cpu.c                            |   2 +-
>  target/tilegx/cpu.c                           |   6 +-
>  target/xtensa/cpu.c                           |   6 +-
>  tests/check-qom-interface.c                   |  11 +-
>  tests/check-qom-proplist.c                    |  16 +-
>  tests/test-qdev-global-props.c                |  13 +-
>  ui/console.c                                  |  15 +-
>  ui/gtk.c                                      |   8 +-
>  ui/input-barrier.c                            |  20 +-
>  ui/input-linux.c                              |  20 +-
>  ui/spice-app.c                                |   9 +-
>  1332 files changed, 9573 insertions(+), 9591 deletions(-)
>  create mode 100644 scripts/codeconverter/codeconverter/__init__.py
>  create mode 100644 scripts/codeconverter/codeconverter/patching.py
>  create mode 100644 scripts/codeconverter/codeconverter/qom_macros.py
>  create mode 100644 scripts/codeconverter/codeconverter/qom_type_info.py
>  create mode 100644 scripts/codeconverter/codeconverter/regexps.py
>  create mode 100644 scripts/codeconverter/codeconverter/test_patching.py
>  create mode 100644 scripts/codeconverter/codeconverter/test_regexps.py
>  create mode 100644 scripts/codeconverter/codeconverter/utils.py
>  create mode 100755 scripts/codeconverter/converter.py
> 
> --=20
> 2.26.2
> 

-- 
Eduardo


Re: [PATCH v2 00/58] qom: Automated conversion of type checking boilerplate
Posted by no-reply@patchew.org 3 years, 8 months ago
Patchew URL: https://patchew.org/QEMU/20200820001236.1284548-1-ehabkost@redhat.com/



Hi,

This series failed the docker-quick@centos7 build test. Please find the testing commands and
their output below. If you have Docker installed, you can probably reproduce it
locally.

=== TEST SCRIPT BEGIN ===
#!/bin/bash
make docker-image-centos7 V=1 NETWORK=1
time make docker-test-quick@centos7 SHOW_ENV=1 J=14 NETWORK=1
=== TEST SCRIPT END ===

  LINK    tests/test-opts-visitor
  LINK    tests/test-coroutine
**
ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
  LINK    tests/test-visitor-serialization
  LINK    fp-test
**
ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
**
ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
  LINK    tests/test-iov
  LINK    tests/test-bitmap
  LINK    tests/test-aio
---
  TEST    check-qtest-x86_64: tests/qtest/endianness-test
  TEST    check-qtest-aarch64: tests/qtest/arm-cpu-features
**
ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
**
ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
  TEST    check-unit: tests/check-qdict
  TEST    iotest-qcow2: 008
  TEST    iotest-qcow2: 009
---
  TEST    check-unit: tests/test-crypto-cipher
  TEST    check-unit: tests/test-crypto-secret
**
ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
ERROR test-crypto-secret - Bail out! ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
make: *** [check-unit] Error 1
make: *** Waiting for unfinished jobs....
  TEST    iotest-qcow2: 034
socket_accept failed: Resource temporarily unavailable
socket_accept failed: Resource temporarily unavailable
**
ERROR:/tmp/qemu-test/src/tests/qtest/libqtest.c:301:qtest_init_without_qmp_handshake: assertion failed: (s->fd >= 0 && s->qmp_fd >= 0)
**
ERROR:/tmp/qemu-test/src/tests/qtest/libqtest.c:301:qtest_init_without_qmp_handshake: assertion failed: (s->fd >= 0 && s->qmp_fd >= 0)
/tmp/qemu-test/src/tests/qtest/libqtest.c:175: kill_qemu() detected QEMU death from signal 6 (Aborted) (core dumped)
/tmp/qemu-test/src/tests/qtest/libqtest.c:175: kill_qemu() detected QEMU death from signal 6 (Aborted) (core dumped)
ERROR arm-cpu-features - Bail out! ERROR:/tmp/qemu-test/src/tests/qtest/libqtest.c:301:qtest_init_without_qmp_handshake: assertion failed: (s->fd >= 0 && s->qmp_fd >= 0)
ERROR endianness-test - Bail out! ERROR:/tmp/qemu-test/src/tests/qtest/libqtest.c:301:qtest_init_without_qmp_handshake: assertion failed: (s->fd >= 0 && s->qmp_fd >= 0)
make: *** [check-qtest-x86_64] Error 1
make: *** [check-qtest-aarch64] Error 1
  TEST    iotest-qcow2: 035
  TEST    iotest-qcow2: 036
  TEST    iotest-qcow2: 037
---
 qemu-img create -f qcow2 --object secret,id=sec0,data=123456 -o encryption=on,encrypt.key-secret=sec0 TEST_DIR/t.qcow2 64M
-Formatting 'TEST_DIR/t.qcow2', fmt=qcow2 encryption=on encrypt.key-secret=sec0 cluster_size=65536 compression_type=zlib size=67108864 lazy_refcounts=off refcount_bits=16
+**
+ERROR:TEST_DIR/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 171: 26499 Aborted                 (core dumped) ( VALGRIND_QEMU="${VALGRIND_QEMU_IMG}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_IMG_PROG" $QEMU_IMG_OPTIONS "$@" )
 
 == Check lazy_refcounts option (only with v3) ==
---
-{"return": {}}
-{"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false, "reason": "host-qmp-quit"}}
+**
+ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 156: 28773 Aborted                 (core dumped) ( if [ -n "${QEMU_NEED_PID}" ]; then
+    echo $BASHPID > "${QEMU_TEST_DIR}/qemu-${_QEMU_HANDLE}.pid";
+fi; VALGRIND_QEMU="${VALGRIND_QEMU_VM}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_PROG" $QEMU_OPTIONS "$@" )
---
-{"return": {}}
-{"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false, "reason": "host-qmp-quit"}}
+**
+ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: Aborted                 (core dumped) ( if [ -n "${QEMU_NEED_PID}" ]; then
+    echo $BASHPID > "${QEMU_TEST_DIR}/qemu-${_QEMU_HANDLE}.pid";
+fi; VALGRIND_QEMU="${VALGRIND_QEMU_VM}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_PROG" $QEMU_OPTIONS "$@" )
---
 QA output created by 134
-Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 encryption=on
+**
+ERROR:TEST_DIR/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 171:  5100 Aborted                 (core dumped) ( VALGRIND_QEMU="${VALGRIND_QEMU_IMG}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_IMG_PROG" $QEMU_IMG_OPTIONS "$@" )
 
 == reading whole image ==
-read 134217728/134217728 bytes at offset 0
-128 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
+**
+ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 183:  5121 Aborted                 (core dumped) ( VALGRIND_QEMU="${VALGRIND_QEMU_IO}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" )
 
 == rewriting cluster part ==
-wrote 512/512 bytes at offset 512
-512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
+**
+ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 183:  5130 Aborted                 (core dumped) ( VALGRIND_QEMU="${VALGRIND_QEMU_IO}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" )
 
 == verify pattern ==
---
-read 512/512 bytes at offset 512
-512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
+**
+ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 183:  5139 Aborted                 (core dumped) ( VALGRIND_QEMU="${VALGRIND_QEMU_IO}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" )
+**
+ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 183:  5148 Aborted                 (core dumped) ( VALGRIND_QEMU="${VALGRIND_QEMU_IO}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" )
 
 == rewriting whole image ==
-wrote 134217728/134217728 bytes at offset 0
-128 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
+**
+ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 183:  5156 Aborted                 (core dumped) ( VALGRIND_QEMU="${VALGRIND_QEMU_IO}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" )
 
 == verify pattern ==
-read 134217728/134217728 bytes at offset 0
-128 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
+**
+ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 183:  5165 Aborted                 (core dumped) ( VALGRIND_QEMU="${VALGRIND_QEMU_IO}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" )
 
 == verify pattern failure with wrong password ==
---
-read 134217728/134217728 bytes at offset 0
-128 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
+**
+ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 183:  5175 Aborted                 (core dumped) ( VALGRIND_QEMU="${VALGRIND_QEMU_IO}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" )
 *** done
  TEST    iotest-qcow2: 137
---
-*** done
+Timeout waiting for capabilities on handle 0
+**
+ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 156:  5674 Aborted                 (core dumped) ( if [ -n "${QEMU_NEED_PID}" ]; then
+    echo $BASHPID > "${QEMU_TEST_DIR}/qemu-${_QEMU_HANDLE}.pid";
+fi; VALGRIND_QEMU="${VALGRIND_QEMU_VM}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_PROG" $QEMU_OPTIONS "$@" )
---
-*** done
+Timeout waiting for capabilities on handle 0
+**
+ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 156:  5898 Aborted                 (core dumped) ( if [ -n "${QEMU_NEED_PID}" ]; then
+    echo $BASHPID > "${QEMU_TEST_DIR}/qemu-${_QEMU_HANDLE}.pid";
+fi; VALGRIND_QEMU="${VALGRIND_QEMU_VM}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_PROG" $QEMU_OPTIONS "$@" )
---
 == create base ==
-Formatting 'TEST_DIR/t.IMGFMT.base', fmt=IMGFMT size=134217728 encryption=on
+**
+ERROR:TEST_DIR/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 171:  8983 Aborted                 (core dumped) ( VALGRIND_QEMU="${VALGRIND_QEMU_IMG}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_IMG_PROG" $QEMU_IMG_OPTIONS "$@" )
 
 == writing whole image ==
-wrote 134217728/134217728 bytes at offset 0
-128 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
+**
+ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 183:  9003 Aborted                 (core dumped) ( VALGRIND_QEMU="${VALGRIND_QEMU_IO}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" )
 
 == verify pattern ==
-read 134217728/134217728 bytes at offset 0
-128 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
+**
+ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 183:  9013 Aborted                 (core dumped) ( VALGRIND_QEMU="${VALGRIND_QEMU_IO}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" )
 == create overlay ==
-Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 backing_file=TEST_DIR/t.IMGFMT.base backing_fmt=IMGFMT encryption=on
+**
+ERROR:TEST_DIR/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 171:  9025 Aborted                 (core dumped) ( VALGRIND_QEMU="${VALGRIND_QEMU_IMG}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_IMG_PROG" $QEMU_IMG_OPTIONS "$@" )
 
 == writing part of a cluster ==
-wrote 1024/1024 bytes at offset 0
-1 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
+**
+ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 183:  9046 Aborted                 (core dumped) ( VALGRIND_QEMU="${VALGRIND_QEMU_IO}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" )
 
 == verify pattern ==
-read 1024/1024 bytes at offset 0
-1 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
+**
+ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 183:  9055 Aborted                 (core dumped) ( VALGRIND_QEMU="${VALGRIND_QEMU_IO}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" )
 
 == verify pattern ==
-read 64512/64512 bytes at offset 1024
-63 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
+**
+ERROR:/tmp/qemu-test/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 183:  9063 Aborted                 (core dumped) ( VALGRIND_QEMU="${VALGRIND_QEMU_IO}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_IO_PROG" $QEMU_IO_ARGS "$@" )
 *** done
  TEST    iotest-qcow2: 159
---
-{"return": {}}
-{"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false, "reason": "host-qmp-quit"}}
+**
+ERROR:TEST_DIR/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 156: 11011 Aborted                 (core dumped) ( if [ -n "${QEMU_NEED_PID}" ]; then
+    echo $BASHPID > "${QEMU_TEST_DIR}/qemu-${_QEMU_HANDLE}.pid";
+fi; VALGRIND_QEMU="${VALGRIND_QEMU_VM}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_PROG" $QEMU_OPTIONS "$@" )
---
-{"return": {}}
-{"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false, "reason": "host-qmp-quit"}}
+**
+ERROR:TEST_DIR/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 156: 11147 Aborted                 (core dumped) ( if [ -n "${QEMU_NEED_PID}" ]; then
+    echo $BASHPID > "${QEMU_TEST_DIR}/qemu-${_QEMU_HANDLE}.pid";
+fi; VALGRIND_QEMU="${VALGRIND_QEMU_VM}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_PROG" $QEMU_OPTIONS "$@" )
---
-{"return": {}}
-{"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false, "reason": "host-qmp-quit"}}
+**
+ERROR:TEST_DIR/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 156: 11260 Aborted                 (core dumped) ( if [ -n "${QEMU_NEED_PID}" ]; then
+    echo $BASHPID > "${QEMU_TEST_DIR}/qemu-${_QEMU_HANDLE}.pid";
+fi; VALGRIND_QEMU="${VALGRIND_QEMU_VM}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_PROG" $QEMU_OPTIONS "$@" )
---
-{"return": {}}
-{"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false, "reason": "host-qmp-quit"}}
+**
+ERROR:TEST_DIR/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 156: 11396 Aborted                 (core dumped) ( if [ -n "${QEMU_NEED_PID}" ]; then
+    echo $BASHPID > "${QEMU_TEST_DIR}/qemu-${_QEMU_HANDLE}.pid";
+fi; VALGRIND_QEMU="${VALGRIND_QEMU_VM}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_PROG" $QEMU_OPTIONS "$@" )
---
-{"return": {}}
-{"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false, "reason": "host-qmp-quit"}}
+**
+ERROR:TEST_DIR/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 156: 11507 Aborted                 (core dumped) ( if [ -n "${QEMU_NEED_PID}" ]; then
+    echo $BASHPID > "${QEMU_TEST_DIR}/qemu-${_QEMU_HANDLE}.pid";
+fi; VALGRIND_QEMU="${VALGRIND_QEMU_VM}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_PROG" $QEMU_OPTIONS "$@" )
---
-{"return": {}}
-{"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false, "reason": "host-qmp-quit"}}
+**
+ERROR:TEST_DIR/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 156: 11644 Aborted                 (core dumped) ( if [ -n "${QEMU_NEED_PID}" ]; then
+    echo $BASHPID > "${QEMU_TEST_DIR}/qemu-${_QEMU_HANDLE}.pid";
+fi; VALGRIND_QEMU="${VALGRIND_QEMU_VM}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_PROG" $QEMU_OPTIONS "$@" )
---
-{"return": {}}
-{"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false, "reason": "host-qmp-quit"}}
+**
+ERROR:TEST_DIR/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 156: 11755 Aborted                 (core dumped) ( if [ -n "${QEMU_NEED_PID}" ]; then
+    echo $BASHPID > "${QEMU_TEST_DIR}/qemu-${_QEMU_HANDLE}.pid";
+fi; VALGRIND_QEMU="${VALGRIND_QEMU_VM}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_PROG" $QEMU_OPTIONS "$@" )
---
-{"return": {}}
-{"timestamp": {"seconds":  TIMESTAMP, "microseconds":  TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false, "reason": "host-qmp-quit"}}
+**
+ERROR:TEST_DIR/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: line 156: 11876 Aborted                 (core dumped) ( if [ -n "${QEMU_NEED_PID}" ]; then
+    echo $BASHPID > "${QEMU_TEST_DIR}/qemu-${_QEMU_HANDLE}.pid";
+fi; VALGRIND_QEMU="${VALGRIND_QEMU_VM}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_PROG" $QEMU_OPTIONS "$@" )
---
-No errors were found on the image.
-*** done
+**
+ERROR:TEST_DIR/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: Aborted                 (core dumped) ( if [ -n "${QEMU_NEED_PID}" ]; then
+    echo $BASHPID > "${QEMU_TEST_DIR}/qemu-${_QEMU_HANDLE}.pid";
+fi; VALGRIND_QEMU="${VALGRIND_QEMU_VM}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_PROG" $QEMU_OPTIONS "$@" )
---
-    }
-}
+**
+ERROR:TEST_DIR/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: Aborted                 (core dumped) ( if [ -n "${QEMU_NEED_PID}" ]; then
+    echo $BASHPID > "${QEMU_TEST_DIR}/qemu-${_QEMU_HANDLE}.pid";
+fi; VALGRIND_QEMU="${VALGRIND_QEMU_VM}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_PROG" $QEMU_OPTIONS "$@" )
---
-    }
-}
+**
+ERROR:TEST_DIR/src/qom/object.c:314:type_initialize: assertion failed: (parent->class_size <= ti->class_size)
+./common.rc: Aborted                 (core dumped) ( if [ -n "${QEMU_NEED_PID}" ]; then
+    echo $BASHPID > "${QEMU_TEST_DIR}/qemu-${_QEMU_HANDLE}.pid";
+fi; VALGRIND_QEMU="${VALGRIND_QEMU_VM}" _qemu_proc_exec "${VALGRIND_LOGFILE}" "$QEMU_PROG" $QEMU_OPTIONS "$@" )
---
Not run: 030 040 041 071 099 120 127 172 184 186 192 203 256 259 267 283 299
Failures: 049 060 117 134 140 141 143 156 158 161 176 181 191 195 229 249
Failed 16 of 104 iotests
make: *** [check-tests/check-block.sh] Error 1
Traceback (most recent call last):
  File "./tests/docker/docker.py", line 709, in <module>
    sys.exit(main())
---
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['sudo', '-n', 'docker', 'run', '--label', 'com.qemu.instance.uuid=e8a297c36a8742eab40876f808961283', '-u', '1001', '--security-opt', 'seccomp=unconfined', '--rm', '-e', 'TARGET_LIST=', '-e', 'EXTRA_CONFIGURE_OPTS=', '-e', 'V=', '-e', 'J=14', '-e', 'DEBUG=', '-e', 'SHOW_ENV=1', '-e', 'CCACHE_DIR=/var/tmp/ccache', '-v', '/home/patchew/.cache/qemu-docker-ccache:/var/tmp/ccache:z', '-v', '/var/tmp/patchew-tester-tmp-gclqij04/src/docker-src.2020-08-19-20.57.41.25420:/var/tmp/qemu:z,ro', 'qemu/centos7', '/var/tmp/qemu/run', 'test-quick']' returned non-zero exit status 2.
filter=--filter=label=com.qemu.instance.uuid=e8a297c36a8742eab40876f808961283
make[1]: *** [docker-run] Error 1
make[1]: Leaving directory `/var/tmp/patchew-tester-tmp-gclqij04/src'
make: *** [docker-run-test-quick@centos7] Error 2

real    11m18.348s
user    0m8.871s


The full log is available at
http://patchew.org/logs/20200820001236.1284548-1-ehabkost@redhat.com/testing.docker-quick@centos7/?type=message.
---
Email generated automatically by Patchew [https://patchew.org/].
Please send your feedback to patchew-devel@redhat.com
Re: [PATCH v2 00/58] qom: Automated conversion of type checking boilerplate
Posted by no-reply@patchew.org 3 years, 8 months ago
Patchew URL: https://patchew.org/QEMU/20200820001236.1284548-1-ehabkost@redhat.com/



Hi,

This series failed the docker-mingw@fedora build test. Please find the testing commands and
their output below. If you have Docker installed, you can probably reproduce it
locally.

=== TEST SCRIPT BEGIN ===
#! /bin/bash
export ARCH=x86_64
make docker-image-fedora V=1 NETWORK=1
time make docker-test-mingw@fedora J=14 NETWORK=1
=== TEST SCRIPT END ===

  CC      util/lockcnt.o
  CC      util/iov.o
  CC      util/iova-tree.o
/tmp/qemu-test/src/docs/../include/exec/memory.h:353: warning: Function parameter or member 'parent_class' not described in 'IOMMUMemoryRegionClass'
/tmp/qemu-test/src/docs/../include/exec/memory.h:353: warning: Function parameter or member 'translate' not described in 'IOMMUMemoryRegionClass'
/tmp/qemu-test/src/docs/../include/exec/memory.h:353: warning: Function parameter or member 'get_min_page_size' not described in 'IOMMUMemoryRegionClass'
/tmp/qemu-test/src/docs/../include/exec/memory.h:353: warning: Function parameter or member 'notify_flag_changed' not described in 'IOMMUMemoryRegionClass'
/tmp/qemu-test/src/docs/../include/exec/memory.h:353: warning: Function parameter or member 'replay' not described in 'IOMMUMemoryRegionClass'
/tmp/qemu-test/src/docs/../include/exec/memory.h:353: warning: Function parameter or member 'get_attr' not described in 'IOMMUMemoryRegionClass'
/tmp/qemu-test/src/docs/../include/exec/memory.h:353: warning: Function parameter or member 'attrs_to_index' not described in 'IOMMUMemoryRegionClass'
/tmp/qemu-test/src/docs/../include/exec/memory.h:353: warning: Function parameter or member 'num_indexes' not described in 'IOMMUMemoryRegionClass'

Warning, treated as error:
/tmp/qemu-test/src/docs/../include/exec/memory.h:231:Unexpected indentation.
  CC      util/hbitmap.o
  CC      util/nvdimm-utils.o
---
  CC      authz/trace.o
  CC      block/trace.o
  CC      io/trace.o
make: *** [Makefile:1091: docs/devel/index.html] Error 2
make: *** Waiting for unfinished jobs....
  CC      nbd/trace.o
Traceback (most recent call last):
---
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['sudo', '-n', 'docker', 'run', '--label', 'com.qemu.instance.uuid=62d463591f654fe38bc353aec9affcb0', '-u', '1003', '--security-opt', 'seccomp=unconfined', '--rm', '-e', 'TARGET_LIST=', '-e', 'EXTRA_CONFIGURE_OPTS=', '-e', 'V=', '-e', 'J=14', '-e', 'DEBUG=', '-e', 'SHOW_ENV=', '-e', 'CCACHE_DIR=/var/tmp/ccache', '-v', '/home/patchew2/.cache/qemu-docker-ccache:/var/tmp/ccache:z', '-v', '/var/tmp/patchew-tester-tmp-gpils9at/src/docker-src.2020-08-19-20.57.29.24703:/var/tmp/qemu:z,ro', 'qemu/fedora', '/var/tmp/qemu/run', 'test-mingw']' returned non-zero exit status 2.
filter=--filter=label=com.qemu.instance.uuid=62d463591f654fe38bc353aec9affcb0
make[1]: *** [docker-run] Error 1
make[1]: Leaving directory `/var/tmp/patchew-tester-tmp-gpils9at/src'
make: *** [docker-run-test-mingw@fedora] Error 2

real    3m14.229s
user    0m8.051s


The full log is available at
http://patchew.org/logs/20200820001236.1284548-1-ehabkost@redhat.com/testing.docker-mingw@fedora/?type=message.
---
Email generated automatically by Patchew [https://patchew.org/].
Please send your feedback to patchew-devel@redhat.com
Re: [PATCH v2 00/58] qom: Automated conversion of type checking boilerplate
Posted by no-reply@patchew.org 3 years, 8 months ago
Patchew URL: https://patchew.org/QEMU/20200820001236.1284548-1-ehabkost@redhat.com/



Hi,

This series seems to have some coding style problems. See output below for
more information:

Type: series
Message-id: 20200820001236.1284548-1-ehabkost@redhat.com
Subject: [PATCH v2 00/58] qom: Automated conversion of type checking boilerplate

=== TEST SCRIPT BEGIN ===
#!/bin/bash
git rev-parse base > /dev/null || exit 0
git config --local diff.renamelimit 0
git config --local diff.renames True
git config --local diff.algorithm histogram
./scripts/checkpatch.pl --mailback base..
=== TEST SCRIPT END ===

From https://github.com/patchew-project/qemu
 * [new tag]         patchew/20200820001236.1284548-1-ehabkost@redhat.com -> patchew/20200820001236.1284548-1-ehabkost@redhat.com
Switched to a new branch 'test'
2c07647 crypto: use QOM macros for declaration/definition of TLS creds types
3e7aa6f crypto: use QOM macros for declaration/definition of secret types
5165b3c Use OBJECT_DECLARE_SIMPLE_TYPE when possible
d5cb09a Use OBJECT_DECLARE_TYPE where possible
e384d74 Use DECLARE_*CHECKER* when possible (--force mode)
e5fd745ed Use DECLARE_*CHECKER* macros
e72847b Move QOM typedefs and add missing includes
8633876 Use TYPE_INFO macro
ac2b53e Delete duplicate QOM typedefs
c514337 codeconverter: script for automating QOM code cleanups
98bc659 qom: TYPE_INFO macro
9fd130d qom: Make type checker functions accept const pointers
300bf50 qom: DECLARE_*_CHECKERS macros
996101e qom: Allow class type name to be specified in OBJECT_DECLARE*
4b52466 qom: provide convenient macros for declaring and defining types
7d4c50b qom: make object_ref/unref use a void * instead of Object *.
015012b vfio/pci: Move QOM macros to header
45826c3 kvm: Move QOM macros to kvm.h
09eddbf mptsas: Move QOM macros to header
a13d791 pxa2xx: Move QOM macros to header
12586d7 rocker: Move QOM macros to header
9d33500 auxbus: Move QOM macros to header
de4f45f piix: Move QOM macros to header
41a38b2 virtio-serial-bus: Move QOM macros to header
bfd8f57 vmbus: Move QOM macros to vmbus.h
98c8e55 pckbd: Move QOM macro to header
819bc97 ahci: Move QOM macro to header
d16f97d i8257: Move QOM macro to header
2d99e4e ahci: Move QOM macros to header
f01b1f4 vhost-user-gpu: Move QOM macro to header
d7f96b1 s390x: Move typedef SCLPEventFacility to event-facility.h
84e90b9 spapr: Move typedef SpaprMachineState to spapr.h
fbf8890 xen-legacy-backend: Add missing typedef XenLegacyDevice
1ecaa93 armsse: Rename QOM macros to avoid conflicts
201e419 platform-bus: Delete macros for non-existing typedef
db1c2f3 nubus: Delete unused NUBUS_BRIDGE macro
a25c30b can_emu: Delete macros for non-existing typedef
68aacc3 s390_flic: Move KVMS390FLICState typedef to header
53e7b5e mcf_fec: Move mcf_fec_state typedef to header
9984567 hvf: Move HVFState typedef to hvf.h
5fae80e i8254: Move PITCommonState/PITCommonClass typedefs to i8254.h
f77900a pci: Move PCIBusClass typedef to pci.h
60d3bdb throttle-groups: Move ThrottleGroup typedef to header
5c015d1 tulip: Move TulipState typedef to header
aa5fa56 hcd-dwc2: Rename USB_*CLASS macros for consistency
8963a12 hvf: Add missing include
acbd352 virtio-ccw: Fix definition of VIRTIO_CCW_BUS_GET_CLASS
5b73cbf versatile: Fix typo in PCI_VPB_HOST definition
deb8bfb aspeed_timer: Fix ASPEED_TIMER macro definition
e408ed4 sifive_u: Rename memmap enum constants
9faf429 sifive_e: Rename memmap enum constants
cf281bb opentitan: Rename memmap enum constants
9f27b92 aspeed_soc: Rename memmap/irqmap enum constants
1f3ef9c allwinner-h3: Rename memmap enum constants
76717ce pl110: Rename pl110_version enum values
8699bb0 vmw_pvscsi: Rename QOM class cast macros
e9add89 megasas: Rename QOM class cast macros
b1de232 e1000: Rename QOM class cast macros

=== OUTPUT BEGIN ===
1/58 Checking commit b1de2322cd1a (e1000: Rename QOM class cast macros)
2/58 Checking commit e9add89a2ce7 (megasas: Rename QOM class cast macros)
3/58 Checking commit 8699bb0e7a65 (vmw_pvscsi: Rename QOM class cast macros)
4/58 Checking commit 76717ce2750b (pl110: Rename pl110_version enum values)
5/58 Checking commit 1f3ef9ce5d89 (allwinner-h3: Rename memmap enum constants)
WARNING: line over 80 characters
#129: FILE: hw/arm/allwinner-h3.c:328:
+    memory_region_add_subregion(get_system_memory(), s->memmap[AW_H3_DEV_SRAM_A1],

WARNING: line over 80 characters
#132: FILE: hw/arm/allwinner-h3.c:330:
+    memory_region_add_subregion(get_system_memory(), s->memmap[AW_H3_DEV_SRAM_A2],

WARNING: line over 80 characters
#135: FILE: hw/arm/allwinner-h3.c:332:
+    memory_region_add_subregion(get_system_memory(), s->memmap[AW_H3_DEV_SRAM_C],

WARNING: line over 80 characters
#146: FILE: hw/arm/allwinner-h3.c:341:
+    sysbus_mmio_map(SYS_BUS_DEVICE(&s->sysctrl), 0, s->memmap[AW_H3_DEV_SYSCTRL]);

WARNING: line over 80 characters
#255: FILE: hw/arm/orangepi.c:82:
+    object_property_set_uint(OBJECT(h3), "ram-addr", h3->memmap[AW_H3_DEV_SDRAM],

WARNING: line over 80 characters
#264: FILE: hw/arm/orangepi.c:101:
+    memory_region_add_subregion(get_system_memory(), h3->memmap[AW_H3_DEV_SDRAM],

total: 0 errors, 6 warnings, 310 lines checked

Patch 5/58 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
6/58 Checking commit 9f27b92c2164 (aspeed_soc: Rename memmap/irqmap enum constants)
7/58 Checking commit cf281bb84815 (opentitan: Rename memmap enum constants)
WARNING: line over 80 characters
#153: FILE: hw/riscv/opentitan.c:174:
+        memmap[IBEX_DEV_ALERT_HANDLER].base, memmap[IBEX_DEV_ALERT_HANDLER].size);

total: 0 errors, 1 warnings, 184 lines checked

Patch 7/58 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
8/58 Checking commit 9faf4298b028 (sifive_e: Rename memmap enum constants)
WARNING: line over 80 characters
#84: FILE: hw/riscv/sifive_e.c:114:
+                          memmap[SIFIVE_E_DEV_MROM].base, &address_space_memory);

WARNING: line over 80 characters
#128: FILE: hw/riscv/sifive_e.c:227:
+    sysbus_mmio_map(SYS_BUS_DEVICE(&s->gpio), 0, memmap[SIFIVE_E_DEV_GPIO0].base);

total: 0 errors, 2 warnings, 185 lines checked

Patch 8/58 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
9/58 Checking commit e408ed48993a (sifive_u: Rename memmap enum constants)
WARNING: line over 80 characters
#264: FILE: hw/riscv/sifive_u.c:494:
+                          memmap[SIFIVE_U_DEV_MROM].base, &address_space_memory);

WARNING: line over 80 characters
#327: FILE: hw/riscv/sifive_u.c:693:
+    sysbus_mmio_map(SYS_BUS_DEVICE(&s->prci), 0, memmap[SIFIVE_U_DEV_PRCI].base);

WARNING: line over 80 characters
#334: FILE: hw/riscv/sifive_u.c:699:
+    sysbus_mmio_map(SYS_BUS_DEVICE(&s->gpio), 0, memmap[SIFIVE_U_DEV_GPIO].base);

total: 0 errors, 3 warnings, 360 lines checked

Patch 9/58 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
10/58 Checking commit deb8bfb7db85 (aspeed_timer: Fix ASPEED_TIMER macro definition)
11/58 Checking commit 5b73cbfd0fb1 (versatile: Fix typo in PCI_VPB_HOST definition)
12/58 Checking commit acbd35279499 (virtio-ccw: Fix definition of VIRTIO_CCW_BUS_GET_CLASS)
13/58 Checking commit 8963a12fbe7f (hvf: Add missing include)
14/58 Checking commit aa5fa56ffab7 (hcd-dwc2: Rename USB_*CLASS macros for consistency)
15/58 Checking commit 5c015d1dfbeb (tulip: Move TulipState typedef to header)
16/58 Checking commit 60d3bdb5e346 (throttle-groups: Move ThrottleGroup typedef to header)
17/58 Checking commit f77900a57adf (pci: Move PCIBusClass typedef to pci.h)
18/58 Checking commit 5fae80e51512 (i8254: Move PITCommonState/PITCommonClass typedefs to i8254.h)
19/58 Checking commit 99845678bd3e (hvf: Move HVFState typedef to hvf.h)
20/58 Checking commit 53e7b5e74b5e (mcf_fec: Move mcf_fec_state typedef to header)
21/58 Checking commit 68aacc315a0c (s390_flic: Move KVMS390FLICState typedef to header)
ERROR: missing space after struct definition
#24: FILE: hw/intc/s390_flic_kvm.c:32:
+struct KVMS390FLICState{

total: 1 errors, 0 warnings, 21 lines checked

Patch 21/58 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

22/58 Checking commit a25c30b2dfcb (can_emu: Delete macros for non-existing typedef)
23/58 Checking commit db1c2f3c0ebb (nubus: Delete unused NUBUS_BRIDGE macro)
24/58 Checking commit 201e41966645 (platform-bus: Delete macros for non-existing typedef)
25/58 Checking commit 1ecaa9333d10 (armsse: Rename QOM macros to avoid conflicts)
26/58 Checking commit fbf8890524f7 (xen-legacy-backend: Add missing typedef XenLegacyDevice)
27/58 Checking commit 84e90b9f700b (spapr: Move typedef SpaprMachineState to spapr.h)
WARNING: line over 80 characters
#56: FILE: include/hw/ppc/spapr_irq.h:75:
+void spapr_irq_cpu_intc_destroy(struct SpaprMachineState *spapr, PowerPCCPU *cpu);

WARNING: line over 80 characters
#64: FILE: include/hw/ppc/spapr_irq.h:81:
+int spapr_irq_msi_alloc(struct SpaprMachineState *spapr, uint32_t num, bool align,

WARNING: line over 80 characters
#83: FILE: include/hw/ppc/spapr_irq.h:96:
+int spapr_irq_claim(struct SpaprMachineState *spapr, int irq, bool lsi, Error **errp);

WARNING: line over 80 characters
#88: FILE: include/hw/ppc/spapr_irq.h:101:
+int spapr_irq_get_phandle(struct SpaprMachineState *spapr, void *fdt, Error **errp);

WARNING: line over 80 characters
#97: FILE: include/hw/ppc/spapr_irq.h:114:
+int spapr_irq_find(struct SpaprMachineState *spapr, int num, bool align, Error **errp);

total: 0 errors, 5 warnings, 81 lines checked

Patch 27/58 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
28/58 Checking commit d7f96b164446 (s390x: Move typedef SCLPEventFacility to event-facility.h)
29/58 Checking commit f01b1f4277c4 (vhost-user-gpu: Move QOM macro to header)
30/58 Checking commit 2d99e4e884b0 (ahci: Move QOM macros to header)
31/58 Checking commit d16f97d2373f (i8257: Move QOM macro to header)
32/58 Checking commit 819bc978d1d8 (ahci: Move QOM macro to header)
33/58 Checking commit 98c8e55d70aa (pckbd: Move QOM macro to header)
34/58 Checking commit bfd8f572b85c (vmbus: Move QOM macros to vmbus.h)
35/58 Checking commit 41a38b20573e (virtio-serial-bus: Move QOM macros to header)
36/58 Checking commit de4f45fed353 (piix: Move QOM macros to header)
37/58 Checking commit 9d3350066dda (auxbus: Move QOM macros to header)
38/58 Checking commit 12586d7b3ecb (rocker: Move QOM macros to header)
39/58 Checking commit a13d7913b137 (pxa2xx: Move QOM macros to header)
40/58 Checking commit 09eddbf3f57c (mptsas: Move QOM macros to header)
41/58 Checking commit 45826c3d3c84 (kvm: Move QOM macros to kvm.h)
42/58 Checking commit 015012b91abd (vfio/pci: Move QOM macros to header)
43/58 Checking commit 7d4c50b946aa (qom: make object_ref/unref use a void * instead of Object *.)
44/58 Checking commit 4b5246617293 (qom: provide convenient macros for declaring and defining types)
WARNING: line over 80 characters
#294: FILE: include/qom/object.h:619:
+ * @...: list of initializers for "InterfaceInfo" to declare implemented interfaces

WARNING: line over 80 characters
#362: FILE: include/qom/object.h:687:
+ * @...: list of initializers for "InterfaceInfo" to declare implemented interfaces

total: 0 errors, 2 warnings, 289 lines checked

Patch 44/58 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
45/58 Checking commit 996101e48f06 (qom: Allow class type name to be specified in OBJECT_DECLARE*)
WARNING: line over 80 characters
#36: FILE: include/qom/object.h:571:
+#define OBJECT_DECLARE_TYPE(InstanceType, ClassType, module_obj_name, MODULE_OBJ_NAME) \

ERROR: line over 90 characters
#85: FILE: include/qom/object.h:608:
+    OBJECT_DECLARE_TYPE(InstanceType, InstanceType##Class, module_obj_name, MODULE_OBJ_NAME) \

total: 1 errors, 1 warnings, 68 lines checked

Patch 45/58 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

46/58 Checking commit 300bf5058c37 (qom: DECLARE_*_CHECKERS macros)
47/58 Checking commit 9fd130dce632 (qom: Make type checker functions accept const pointers)
48/58 Checking commit 98bc6592ffaa (qom: TYPE_INFO macro)
49/58 Checking commit c514337834f2 (codeconverter: script for automating QOM code cleanups)
WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
#21: 
new file mode 100644

ERROR: line over 90 characters
#29: FILE: scripts/codeconverter/codeconverter/patching.py:1:
+from typing import IO, Match, NamedTuple, Optional, Literal, Iterable, Type, Dict, List, Any, TypeVar, NewType, Tuple

WARNING: line over 80 characters
#97: FILE: scripts/codeconverter/codeconverter/patching.py:69:
+        logger.log(level, '%s:%d:%d: '+fmt, self.file.filename, pos.line, pos.col, *args)

ERROR: line over 90 characters
#162: FILE: scripts/codeconverter/codeconverter/patching.py:134:
+                                                    end.line, end.col, self.group(0)[:100])

WARNING: line over 80 characters
#165: FILE: scripts/codeconverter/codeconverter/patching.py:137:
+        """Can be implemented by subclasses to keep track of identifier references

WARNING: line over 80 characters
#167: FILE: scripts/codeconverter/codeconverter/patching.py:139:
+        This method will be used by the code that moves declarations around the file,

WARNING: line over 80 characters
#173: FILE: scripts/codeconverter/codeconverter/patching.py:145:
+        """Can be implemented by subclasses to keep track of identifier references

WARNING: line over 80 characters
#175: FILE: scripts/codeconverter/codeconverter/patching.py:147:
+        This method will be used by the code that moves declarations around the file,

ERROR: line over 90 characters
#220: FILE: scripts/codeconverter/codeconverter/patching.py:192:
+        DBG("Applying patch at position %d (%s) - %d (%s): %r", p.start, line_col(s, p.start), p.end, line_col(s, p.end), p.replacement)

ERROR: line over 90 characters
#222: FILE: scripts/codeconverter/codeconverter/patching.py:194:
+            raise OverLappingPatchesError("Overlapping patch at position %d (%s), last patch at %d (%s)" % \

WARNING: line over 80 characters
#233: FILE: scripts/codeconverter/codeconverter/patching.py:205:
+        self.match_name_index: Dict[Tuple[Type[Any], str, str], Optional[FileMatch]] = {}

WARNING: line over 80 characters
#243: FILE: scripts/codeconverter/codeconverter/patching.py:215:
+    def find_match(self, t: Type[T], name: str, group: str='name') -> Optional[T]:

ERROR: line over 90 characters
#263: FILE: scripts/codeconverter/codeconverter/patching.py:235:
+    def __init__(self, files: 'FileList', filename: os.PathLike, force:bool=False) -> None:

WARNING: line over 80 characters
#284: FILE: scripts/codeconverter/codeconverter/patching.py:256:
+        matches = [klass(self, m) for m in klass.find_matches(self.original_content)]

WARNING: line over 80 characters
#289: FILE: scripts/codeconverter/codeconverter/patching.py:261:
+    def find_match(self, t: Type[T], name: str, group: str='name') -> Optional[T]:

WARNING: line over 80 characters
#336: FILE: scripts/codeconverter/codeconverter/patching.py:308:
+    def patch_content(self, max_passes=0, class_names: Optional[List[str]]=None) -> None:

WARNING: line over 80 characters
#349: FILE: scripts/codeconverter/codeconverter/patching.py:321:
+            DBG("patch content: pass %d: %d patches generated", passes, len(self.patches))

ERROR: line over 90 characters
#357: FILE: scripts/codeconverter/codeconverter/patching.py:329:
+        INFO("%s: %d patches applied total in %d passes", self.filename, total_patches, passes)

WARNING: line over 80 characters
#360: FILE: scripts/codeconverter/codeconverter/patching.py:332:
+        """Replace self.original_content after applying patches from self.patches"""

ERROR: adding a line without newline at end of file
#409: FILE: scripts/codeconverter/codeconverter/patching.py:381:
+            return None

WARNING: line over 80 characters
#462: FILE: scripts/codeconverter/codeconverter/qom_macros.py:46:
+        """Check if identifiers match, return new identifier with complete list"""

WARNING: line over 80 characters
#578: FILE: scripts/codeconverter/codeconverter/qom_macros.py:162:
+        other_td = [td for td in chain(self.file.matches_of_type(SimpleTypedefMatch),

WARNING: line over 80 characters
#579: FILE: scripts/codeconverter/codeconverter/qom_macros.py:163:
+                                       self.file.matches_of_type(FullStructTypedefMatch))

WARNING: line over 80 characters
#592: FILE: scripts/codeconverter/codeconverter/qom_macros.py:176:
+                if self.group('typedef_type') == 'struct '+td.group('structname'):

ERROR: line over 90 characters
#598: FILE: scripts/codeconverter/codeconverter/qom_macros.py:182:
+        qom_macros = [TypeCheckMacro, DeclareInstanceChecker, DeclareClassCheckers, DeclareObjCheckers]

WARNING: line over 80 characters
#600: FILE: scripts/codeconverter/codeconverter/qom_macros.py:184:
+        in_use = any(RequiredIdentifier('type', self.name) in m.required_identifiers()

ERROR: line over 90 characters
#608: FILE: scripts/codeconverter/codeconverter/qom_macros.py:192:
+        qom_macros = [TypeCheckMacro, DeclareInstanceChecker, DeclareClassCheckers, DeclareObjCheckers]

WARNING: line over 80 characters
#610: FILE: scripts/codeconverter/codeconverter/qom_macros.py:194:
+        in_use = any(RequiredIdentifier('type', self.name) in m.required_identifiers()

WARNING: line over 80 characters
#629: FILE: scripts/codeconverter/codeconverter/qom_macros.py:213:
+CheckerMacroName = Literal['OBJECT_CHECK', 'OBJECT_CLASS_CHECK', 'OBJECT_GET_CLASS']

ERROR: line over 90 characters
#634: FILE: scripts/codeconverter/codeconverter/qom_macros.py:218:
+      M(r'\s*\(\s*', OR(NAMED('typedefname', RE_IDENTIFIER), RE_TYPE, name='c_type'), r'\s*,', CPP_SPACE,

WARNING: line over 80 characters
#685: FILE: scripts/codeconverter/codeconverter/qom_macros.py:269:
+    def merge_ids(self, matches: List['TypeCheckMacro']) -> Optional[TypeIdentifiers]:

WARNING: line over 80 characters
#686: FILE: scripts/codeconverter/codeconverter/qom_macros.py:270:
+        """Try to merge info about type identifiers from all matches in a list"""

WARNING: line over 80 characters
#743: FILE: scripts/codeconverter/codeconverter/qom_macros.py:327:
+            self.warn("couldn't extract type information from macro %s", self.name)

ERROR: line over 90 characters
#753: FILE: scripts/codeconverter/codeconverter/qom_macros.py:337:
+                    self.warn("macro %s is using macro %s instead of %s", self.name, self.checker, checker)

ERROR: line over 90 characters
#758: FILE: scripts/codeconverter/codeconverter/qom_macros.py:342:
+        DBG("found %d matching macros: %s", len(matches), ' '.join(m.name for m in matches))

WARNING: line over 80 characters
#761: FILE: scripts/codeconverter/codeconverter/qom_macros.py:345:
+            DBG("skipping %s (will patch when handling %s)", self.name, matches[0].name)

WARNING: line over 80 characters
#771: FILE: scripts/codeconverter/codeconverter/qom_macros.py:355:
+            self.warn("macro %s doesn't follow the expected name pattern", self.name)

WARNING: line over 80 characters
#782: FILE: scripts/codeconverter/codeconverter/qom_macros.py:366:
+        names = [n for n in (ids.instancetype, ids.classtype, ids.uppercase, ids.typename)

WARNING: line over 80 characters
#792: FILE: scripts/codeconverter/codeconverter/qom_macros.py:376:
+            new_decl = (f'DECLARE_OBJ_CHECKERS({ids.instancetype}, {ids.classtype},\n'

WARNING: line over 80 characters
#793: FILE: scripts/codeconverter/codeconverter/qom_macros.py:377:
+                        f'                     {ids.uppercase}, {ids.typename})\n')

WARNING: line over 80 characters
#795: FILE: scripts/codeconverter/codeconverter/qom_macros.py:379:
+            new_decl = (f'DECLARE_CLASS_CHECKERS({ids.classtype}, {ids.uppercase},\n'

WARNING: line over 80 characters
#798: FILE: scripts/codeconverter/codeconverter/qom_macros.py:382:
+            new_decl = (f'DECLARE_INSTANCE_CHECKER({ids.instancetype}, {ids.uppercase},\n'

ERROR: line over 90 characters
#823: FILE: scripts/codeconverter/codeconverter/qom_macros.py:407:
+                issues.append("typedef %s need to be moved earlier in the file" % (td.name))

ERROR: line over 90 characters
#900: FILE: scripts/codeconverter/codeconverter/qom_macros.py:484:
+            self.warn("type %s mismatch with uppercase name %s", ids.typename, ids.uppercase)

WARNING: line over 80 characters
#913: FILE: scripts/codeconverter/codeconverter/qom_macros.py:497:
+            #TODO: check if the only match is inside the "struct { ... }" declaration

ERROR: line over 90 characters
#914: FILE: scripts/codeconverter/codeconverter/qom_macros.py:498:
+            if re.search(r'\b'+t+r'\b', self.file.original_content[td.end():self.start()]):

WARNING: line over 80 characters
#915: FILE: scripts/codeconverter/codeconverter/qom_macros.py:499:
+                self.warn("typedef %s can't be moved, it is used before the macro", t)

ERROR: line over 90 characters
#930: FILE: scripts/codeconverter/codeconverter/qom_macros.py:514:
+               r'\s*{\s*', NAMED('parent_struct', RE_IDENTIFIER), r'\s*parent(_class)?\s*;\s*};\n')

WARNING: line over 80 characters
#945: FILE: scripts/codeconverter/codeconverter/qom_macros.py:529:
+        trivial_struct = self.file.find_match(TrivialClassStruct, self.group('classtype'))

WARNING: line over 80 characters
#951: FILE: scripts/codeconverter/codeconverter/qom_macros.py:535:
+                 "                           %(uppercase)s, %(parent_struct)s)\n" % d)

ERROR: line over 90 characters
#983: FILE: scripts/codeconverter/codeconverter/qom_macros.py:567:
+        definition_classes = [SimpleTypedefMatch, FullStructTypedefMatch, ConstantDefine, Include]

ERROR: line over 90 characters
#984: FILE: scripts/codeconverter/codeconverter/qom_macros.py:568:
+        user_classes = [TypeCheckMacro, DeclareObjCheckers, DeclareInstanceChecker, DeclareClassCheckers]

WARNING: line over 80 characters
#992: FILE: scripts/codeconverter/codeconverter/qom_macros.py:576:
+                    index.setdefault(i, SymbolUserList([], [])).definitions.append(d)

WARNING: line over 80 characters
#1012: FILE: scripts/codeconverter/codeconverter/qom_macros.py:596:
+                    u.warn("definition of %s %s not found in file", i.type, i.name)

ERROR: line over 90 characters
#1042: FILE: scripts/codeconverter/codeconverter/qom_macros.py:626:
+                definition.warn("definition of %s %s needs to be moved earlier in the file", i.type, i.name)

WARNING: line over 80 characters
#1043: FILE: scripts/codeconverter/codeconverter/qom_macros.py:627:
+                earliest.warn("definition of %s %s is used here", i.type, i.name)

WARNING: line over 80 characters
#1063: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:13:
+RE_ARRAY_ITEM = S(r'{\s*', NAMED('arrayitem', M(RE_SIMPLE_VALUE, n='?')), r'\s*}\s*,?')

ERROR: line over 90 characters
#1088: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:38:
+RE_TYPEINFO_START = S(r'^[ \t]*', M(r'(static|const)\s+', name='modifiers'), r'TypeInfo\s+',

ERROR: line over 90 characters
#1105: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:55:
+    return [m.group('arrayitem') for m in re.finditer(RE_ARRAY_ITEM, m.group('arrayitems'))]

ERROR: line over 90 characters
#1160: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:110:
+        if typename and re.fullmatch(RE_IDENTIFIER, typename) and typename.startswith("TYPE_"):

WARNING: line over 80 characters
#1242: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:192:
+                yield self.append_field('instance_finalize', ids.lowercase+'_finalize')

ERROR: line over 90 characters
#1246: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:196:
+                yield self.prepend(('static void %s_class_init(ObjectClass *oc, void *data)\n'

WARNING: line over 80 characters
#1249: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:199:
+                yield self.append_field('class_init', ids.lowercase+'_class_init')

WARNING: line over 80 characters
#1255: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:205:
+    regexp = S(r'^[ \t]*type_init\(\s*', NAMED('name', RE_IDENTIFIER), r'\s*\);?[ \t]*\n')

WARNING: line over 80 characters
#1268: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:218:
+    #      of the function.  Tt will just look for "}" in the beginning of a line

WARNING: line over 80 characters
#1269: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:219:
+    regexp = S(r'static\s+void\s+', NAMED('name', RE_IDENTIFIER), r'\s*\(\s*void\s*\)\n',

ERROR: line over 90 characters
#1287: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:237:
+    regexp = S(r'^[ \t]*type_register_static\(&\s*', NAMED('name', RE_IDENTIFIER), r'\s*\);[ \t]*\n')

ERROR: line over 90 characters
#1299: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:249:
+            self.warn("can't find function where type_register_static(&%s) is called", self.name)

ERROR: line over 90 characters
#1327: FILE: scripts/codeconverter/codeconverter/qom_type_info.py:277:
+    regexp = S(r'^[ \t]*TYPE_INFO\s*\(\s*', NAMED('name', RE_IDENTIFIER), r'\s*\)[ \t]*;?[ \t]*\n')

WARNING: line over 80 characters
#1385: FILE: scripts/codeconverter/codeconverter/regexps.py:15:
+    """Just add parenthesis around regexp(s), with optional name or repeat suffix"""

ERROR: line over 90 characters
#1455: FILE: scripts/codeconverter/codeconverter/regexps.py:85:
+RE_INCLUDE = S(r'^[ \t]*#[ \t]*include[ \t]+', NAMED('includepath', RE_INCLUDEPATH), r'[ \t]*\n')

WARNING: line over 80 characters
#1654: FILE: scripts/codeconverter/codeconverter/test_regexps.py:85:
+    assert fullmatch(RE_TI_FIELDS, r'''/* could be TYPE_SYS_BUS_DEVICE (or LPC etc) */

ERROR: line over 90 characters
#1794: FILE: scripts/codeconverter/codeconverter/test_regexps.py:225:
+    print(repr(list(m.groupdict() for m in re.finditer(InitialIncludes.regexp, c, re.MULTILINE))))

ERROR: line over 90 characters
#1809: FILE: scripts/codeconverter/codeconverter/test_regexps.py:240:
+    print(repr(list(m.groupdict() for m in re.finditer(InitialIncludes.regexp, c, re.MULTILINE))))

ERROR: line over 90 characters
#1836: FILE: scripts/codeconverter/codeconverter/test_regexps.py:267:
+    print(repr(list(m.groupdict() for m in re.finditer(InitialIncludes.regexp, c, re.MULTILINE))))

ERROR: adding a line without newline at end of file
#1912: FILE: scripts/codeconverter/codeconverter/utils.py:65:
+__all__ = ['not_optional', 'opt_compare', 'merge', 'line_col', 'LineAndColumn']

WARNING: line over 80 characters
#1938: FILE: scripts/codeconverter/converter.py:19:
+def process_all_files(parser: argparse.ArgumentParser, args: argparse.Namespace) -> None:

WARNING: line over 80 characters
#1999: FILE: scripts/codeconverter/converter.py:80:
+    p = argparse.ArgumentParser(formatter_class=argparse.RawDescriptionHelpFormatter)

ERROR: adding a line without newline at end of file
#2032: FILE: scripts/codeconverter/converter.py:113:
+    main()

total: 32 errors, 47 warnings, 1960 lines checked

Patch 49/58 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

50/58 Checking commit ac2b53ebd0e7 (Delete duplicate QOM typedefs)
51/58 Checking commit 8633876e45a9 (Use TYPE_INFO macro)
52/58 Checking commit e72847b49ba0 (Move QOM typedefs and add missing includes)
53/58 Checking commit e5fd745edabc (Use DECLARE_*CHECKER* macros)
WARNING: line over 80 characters
#55: FILE: backends/cryptodev-vhost-user.c:43:
+DECLARE_INSTANCE_CHECKER(CryptoDevBackendVhostUser, CRYPTODEV_BACKEND_VHOST_USER,

WARNING: line over 80 characters
#4087: FILE: hw/net/xilinx_axienet.c:54:
+DECLARE_INSTANCE_CHECKER(XilinxAXIEnetStreamSlave, XILINX_AXI_ENET_CONTROL_STREAM,

total: 0 errors, 2 warnings, 10350 lines checked

Patch 53/58 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
54/58 Checking commit e384d741ef66 (Use DECLARE_*CHECKER* when possible (--force mode))
55/58 Checking commit d5cb09a0a490 (Use OBJECT_DECLARE_TYPE where possible)
56/58 Checking commit 5165b3c3e93e (Use OBJECT_DECLARE_SIMPLE_TYPE when possible)
57/58 Checking commit 3e7aa6f9a978 (crypto: use QOM macros for declaration/definition of secret types)
WARNING: line over 80 characters
#128: FILE: crypto/secret_keyring.c:30:
+                                   QCRYPTO_SECRET_KEYRING, QCRYPTO_SECRET_COMMON,

total: 0 errors, 1 warnings, 138 lines checked

Patch 57/58 has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.
58/58 Checking commit 2c0764742a0b (crypto: use QOM macros for declaration/definition of TLS creds types)
=== OUTPUT END ===

Test command exited with code: 1


The full log is available at
http://patchew.org/logs/20200820001236.1284548-1-ehabkost@redhat.com/testing.checkpatch/?type=message.
---
Email generated automatically by Patchew [https://patchew.org/].
Please send your feedback to patchew-devel@redhat.com