On 15/03/2016 16:03, Markus Armbruster wrote: > This series tackles two issues: > > * qapi/error.h and therefore qapi-types.h get included into every file > via qemu/osdep.h. Touch the QAPI schema, recompile the world. As > the QAPI maintainer, I get to touch it regularly, so this is an itch > I need to scratch. PATCH 01-04 drop qapi/error.h from qemu/osdep.h. > Unfortunately, the number of .o depending on qapi-types.h barely > changes, because it gets included by so many other headers. More > work is needed here. > > * qemu-common.h explicitly asks not to be included in headers, but we > do it anyway. PATCH 05-15 clean that up. Cuts the number of .o > depending on qemu-common.h from ~95% to ~35%. > > For additional motivation, see the "Our use of #include is > undisciplined, and what to do about it" thread.
Patches 1-13 and possibly 15 are great. For patch 14 I am worried that some of the additions of cpu.h make things a bit harder for my series. Any tree that I can pull from to check myself? Paolo > Markus Armbruster (15): > include/qemu/osdep.h: Don't include qapi/error.h > Use scripts/clean-includes to drop redundant qemu/typedefs.h > include/config.h: Unused, remove > Clean up includes some more > fw_cfg: Split fw_cfg_keys.h off fw_cfg.h > include/qemu/iov.h: Don't include qemu-common.h > include/hw/hw.h: Don't include qemu-common.h > hw/pci/pci.h: Don't include qemu-common.h > Move HOST_LONG_BITS from qemu-common.h to qemu/osdep.h > Move QEMU_ALIGN_*() from qemu-common.h to qemu/osdep.h > Move ParallelIOArg from qemu-common.h to sysemu/char.h > isa: Move DMA_transfer_handler from qemu-common.h to hw/isa/isa.h > include/crypto: Include qapi-types.h instead of qemu-common.h > Don't include qemu-common.h in headers > Drop superfluous qemu-common.h inclusions > > aio-posix.c | 1 - > aio-win32.c | 1 - > arch_init.c | 2 + > async.c | 2 +- > audio/alsaaudio.c | 1 - > audio/audio.c | 2 + > audio/audio_pt_int.c | 1 - > audio/audio_win_int.c | 1 - > audio/coreaudio.c | 1 - > audio/dsoundaudio.c | 1 - > audio/noaudio.c | 1 - > audio/ossaudio.c | 1 - > audio/paaudio.c | 1 - > audio/sdlaudio.c | 1 - > backends/baum.c | 2 +- > backends/hostmem-file.c | 1 + > backends/hostmem-ram.c | 3 ++ > backends/hostmem.c | 1 + > backends/rng-egd.c | 1 + > backends/rng-random.c | 2 + > backends/rng.c | 2 + > backends/tpm.c | 2 + > block/archipelago.c | 1 - > block/backup.c | 3 +- > block/blkdebug.c | 1 + > block/blkverify.c | 2 + > block/block-backend.c | 1 + > block/bochs.c | 2 +- > block/cloop.c | 2 +- > block/commit.c | 1 + > block/curl.c | 1 + > block/dmg.c | 2 +- > block/gluster.c | 3 ++ > block/io.c | 2 + > block/linux-aio.c | 1 - > block/mirror.c | 1 + > block/nbd-client.h | 1 - > block/nbd.c | 2 + > block/nfs.c | 1 - > block/null.c | 2 + > block/parallels.c | 2 +- > block/qapi.c | 1 + > block/qcow.c | 2 +- > block/qcow2-cache.c | 1 - > block/qcow2-cluster.c | 2 +- > block/qcow2-refcount.c | 2 +- > block/qcow2-snapshot.c | 1 + > block/qed.c | 2 + > block/quorum.c | 1 + > block/raw-aio.h | 2 + > block/raw-posix.c | 1 + > block/raw-win32.c | 1 - > block/raw_bsd.c | 2 + > block/rbd.c | 1 + > block/sheepdog.c | 1 + > block/snapshot.c | 1 + > block/ssh.c | 4 +- > block/stream.c | 1 + > block/throttle-groups.c | 1 + > block/vdi.c | 1 + > block/vhdx-endian.c | 1 - > block/vhdx-log.c | 2 +- > block/vhdx.c | 2 +- > block/vmdk.c | 1 + > block/vpc.c | 2 +- > block/vvfat.c | 1 + > block/win32-aio.c | 1 - > blockdev.c | 1 + > blockjob.c | 1 - > bootdevice.c | 1 + > bsd-user/main.c | 1 - > bsd-user/mmap.c | 1 - > bsd-user/syscall.c | 1 - > bt-vhci.c | 1 - > contrib/ivshmem-client/ivshmem-client.c | 1 - > contrib/ivshmem-client/main.c | 1 - > contrib/ivshmem-server/main.c | 1 + > cpu-exec.c | 1 + > cpus.c | 3 +- > cputlb.c | 1 + > crypto/aes.c | 1 - > crypto/cipher.c | 1 + > crypto/hash.c | 1 + > crypto/init.c | 1 + > crypto/secret.c | 2 + > crypto/tlscreds.c | 2 + > crypto/tlscredsanon.c | 2 + > crypto/tlscredsx509.c | 2 + > crypto/tlssession.c | 1 + > device_tree.c | 2 +- > disas.c | 1 - > disas/cris.c | 1 - > disas/s390.c | 1 - > disas/tci.c | 1 - > exec.c | 1 + > fsdev/qemu-fsdev.c | 1 - > fsdev/virtfs-proxy-helper.c | 1 - > gdbstub.c | 1 + > hmp.c | 1 + > hmp.h | 1 - > hw/9pfs/9p-handle.c | 1 + > hw/9pfs/9p-local.c | 1 + > hw/9pfs/9p-proxy.c | 1 + > hw/9pfs/9p-synth.c | 1 + > hw/9pfs/9p.c | 1 + > hw/9pfs/coth.c | 1 - > hw/acpi/bios-linker-loader.c | 1 - > hw/acpi/cpu_hotplug.c | 1 + > hw/acpi/ich9.c | 1 + > hw/acpi/pcihp.c | 1 + > hw/acpi/piix4.c | 1 + > hw/acpi/tco.c | 1 - > hw/alpha/dp264.c | 1 + > hw/alpha/typhoon.c | 1 + > hw/arm/allwinner-a10.c | 1 + > hw/arm/armv7m.c | 1 + > hw/arm/bcm2835_peripherals.c | 1 + > hw/arm/bcm2836.c | 1 + > hw/arm/boot.c | 2 + > hw/arm/cubieboard.c | 1 + > hw/arm/digic.c | 1 + > hw/arm/digic_boards.c | 2 + > hw/arm/exynos4210.c | 1 + > hw/arm/fsl-imx25.c | 1 + > hw/arm/fsl-imx31.c | 1 + > hw/arm/highbank.c | 2 + > hw/arm/imx25_pdk.c | 1 + > hw/arm/integratorcp.c | 1 + > hw/arm/kzm.c | 1 + > hw/arm/mainstone.c | 1 + > hw/arm/musicpal.c | 1 + > hw/arm/netduino2.c | 1 + > hw/arm/nseries.c | 1 + > hw/arm/omap1.c | 2 + > hw/arm/omap2.c | 1 + > hw/arm/omap_sx1.c | 1 + > hw/arm/palm.c | 1 + > hw/arm/pxa2xx.c | 2 + > hw/arm/raspi.c | 1 + > hw/arm/realview.c | 1 + > hw/arm/spitz.c | 1 + > hw/arm/stellaris.c | 1 + > hw/arm/stm32f205_soc.c | 1 + > hw/arm/strongarm.c | 1 + > hw/arm/sysbus-fdt.c | 2 +- > hw/arm/tosa.c | 1 + > hw/arm/versatilepb.c | 1 + > hw/arm/vexpress.c | 2 + > hw/arm/virt-acpi-build.c | 1 + > hw/arm/virt.c | 2 + > hw/arm/xilinx_zynq.c | 1 + > hw/arm/xlnx-ep108.c | 1 + > hw/arm/xlnx-zynqmp.c | 1 + > hw/audio/adlib.c | 1 + > hw/audio/gus.c | 1 + > hw/block/block.c | 1 + > hw/block/cdrom.c | 1 - > hw/block/dataplane/virtio-blk.c | 1 + > hw/block/fdc.c | 1 + > hw/block/nand.c | 1 + > hw/block/nvme.c | 2 + > hw/block/onenand.c | 2 +- > hw/block/pflash_cfi01.c | 1 + > hw/block/pflash_cfi02.c | 1 + > hw/block/virtio-blk.c | 2 +- > hw/block/xen_disk.c | 1 + > hw/bt/core.c | 1 - > hw/bt/hci-csr.c | 1 - > hw/bt/hci.c | 1 + > hw/bt/hid.c | 1 - > hw/bt/l2cap.c | 1 - > hw/char/debugcon.c | 1 + > hw/char/parallel.c | 1 + > hw/char/serial-isa.c | 1 + > hw/char/serial-pci.c | 1 + > hw/char/serial.c | 1 + > hw/char/spapr_vty.c | 1 + > hw/char/virtio-serial-bus.c | 1 + > hw/core/fw-path-provider.c | 1 + > hw/core/loader.c | 2 + > hw/core/machine.c | 2 + > hw/core/nmi.c | 2 + > hw/core/null-machine.c | 1 - > hw/core/ptimer.c | 2 + > hw/core/qdev-properties-system.c | 1 + > hw/core/qdev-properties.c | 3 ++ > hw/core/qdev.c | 1 + > hw/core/stream.c | 1 + > hw/cpu/a15mpcore.c | 1 + > hw/cpu/a9mpcore.c | 1 + > hw/cpu/arm11mpcore.c | 1 + > hw/cpu/realview_mpcore.c | 1 + > hw/cris/axis_dev88.c | 1 + > hw/display/blizzard.c | 1 - > hw/display/cg3.c | 1 + > hw/display/cirrus_vga.c | 1 + > hw/display/exynos4210_fimd.c | 1 - > hw/display/jazz_led.c | 1 - > hw/display/qxl.c | 1 - > hw/display/qxl.h | 2 - > hw/display/sm501.c | 1 + > hw/display/tc6393xb.c | 1 + > hw/display/tcx.c | 1 + > hw/display/vga.c | 1 + > hw/display/virtio-gpu-3d.c | 1 - > hw/display/virtio-gpu.c | 1 - > hw/display/vmware_vga.c | 1 + > hw/dma/etraxfs_dma.c | 1 - > hw/dma/i8257.c | 2 +- > hw/dma/omap_dma.c | 1 - > hw/dma/pl330.c | 2 + > hw/dma/soc_dma.c | 1 - > hw/dma/xilinx_axidma.c | 1 + > hw/i386/acpi-build.c | 2 +- > hw/i386/acpi-build.h | 2 - > hw/i386/kvm/clock.c | 1 - > hw/i386/kvm/i8254.c | 1 + > hw/i386/kvm/pci-assign.c | 1 + > hw/i386/pc.c | 2 + > hw/i386/pc_sysfw.c | 2 + > hw/i386/pci-assign-load-rom.c | 1 + > hw/i386/xen/xen_platform.c | 1 + > hw/i386/xen/xen_pvdevice.c | 1 + > hw/ide/core.c | 1 + > hw/ide/qdev.c | 1 + > hw/input/milkymist-softusb.c | 1 + > hw/input/virtio-input-host.c | 2 +- > hw/input/virtio-input.c | 1 + > hw/intc/apic_common.c | 1 + > hw/intc/arm_gic.c | 1 + > hw/intc/arm_gic_common.c | 1 + > hw/intc/arm_gicv2m.c | 1 + > hw/intc/arm_gicv3_common.c | 1 + > hw/intc/armv7m_nvic.c | 1 + > hw/intc/exynos4210_gic.c | 1 - > hw/intc/ioapic_common.c | 1 + > hw/intc/openpic.c | 1 + > hw/intc/realview_gic.c | 1 + > hw/intc/xics.c | 1 + > hw/ipack/ipack.c | 1 + > hw/ipmi/ipmi_bmc_extern.c | 1 + > hw/ipmi/isa_ipmi_bt.c | 1 + > hw/ipmi/isa_ipmi_kcs.c | 1 + > hw/isa/isa-bus.c | 1 + > hw/isa/lpc_ich9.c | 1 - > hw/isa/pc87312.c | 1 + > hw/lm32/lm32_boards.c | 1 + > hw/lm32/lm32_hwsetup.h | 1 - > hw/lm32/milkymist.c | 1 + > hw/m68k/an5206.c | 1 + > hw/m68k/mcf5208.c | 1 + > hw/mem/pc-dimm.c | 1 + > hw/microblaze/petalogix_ml605_mmu.c | 1 + > hw/microblaze/petalogix_s3adsp1800_mmu.c | 1 + > hw/mips/mips_fulong2e.c | 2 + > hw/mips/mips_jazz.c | 1 + > hw/mips/mips_malta.c | 1 + > hw/mips/mips_mipssim.c | 3 ++ > hw/mips/mips_r4k.c | 3 ++ > hw/misc/bcm2835_mbox.c | 1 + > hw/misc/bcm2835_property.c | 1 + > hw/misc/cbus.c | 2 +- > hw/misc/ivshmem.c | 3 ++ > hw/misc/macio/cuda.c | 1 + > hw/misc/macio/macio.c | 1 + > hw/misc/tmp105.c | 1 + > hw/moxie/moxiesim.c | 1 + > hw/net/dp8393x.c | 1 + > hw/net/milkymist-minimac2.c | 1 + > hw/net/ne2000-isa.c | 1 + > hw/net/rocker/qmp-norocker.c | 1 - > hw/net/vmxnet3.c | 1 - > hw/net/vmxnet_rx_pkt.c | 1 - > hw/net/vmxnet_rx_pkt.h | 2 - > hw/net/vmxnet_tx_pkt.c | 1 - > hw/net/vmxnet_tx_pkt.h | 2 - > hw/net/xilinx_axienet.c | 1 + > hw/nvram/fw_cfg.c | 1 + > hw/nvram/mac_nvram.c | 2 + > hw/nvram/spapr_nvram.c | 1 + > hw/openrisc/openrisc_sim.c | 1 + > hw/pci-bridge/dec.h | 2 - > hw/pci-bridge/pci_bridge_dev.c | 1 + > hw/pci-host/piix.c | 1 + > hw/pci-host/prep.c | 2 + > hw/pci-host/q35.c | 1 + > hw/pci/pci.c | 2 + > hw/pci/pcie.c | 2 +- > hw/pci/shpc.c | 2 +- > hw/pcmcia/pcmcia.c | 1 - > hw/ppc/e500.c | 1 + > hw/ppc/e500plat.c | 1 - > hw/ppc/mac_newworld.c | 3 ++ > hw/ppc/mac_oldworld.c | 3 ++ > hw/ppc/mpc8544ds.c | 1 - > hw/ppc/ppc405_boards.c | 3 ++ > hw/ppc/ppc405_uc.c | 1 + > hw/ppc/spapr.c | 1 + > hw/ppc/spapr_drc.c | 2 + > hw/ppc/spapr_events.c | 3 ++ > hw/ppc/spapr_hcall.c | 1 + > hw/ppc/spapr_pci.c | 1 + > hw/ppc/spapr_pci_vfio.c | 1 + > hw/ppc/spapr_rng.c | 1 + > hw/ppc/spapr_rtas.c | 2 + > hw/ppc/spapr_rtc.c | 2 + > hw/ppc/spapr_vio.c | 1 + > hw/ppc/virtex_ml507.c | 1 + > hw/s390x/event-facility.c | 1 + > hw/s390x/ipl.c | 2 + > hw/s390x/s390-virtio-ccw.c | 1 + > hw/s390x/s390-virtio.c | 1 + > hw/s390x/sclp.c | 1 + > hw/s390x/virtio-ccw.c | 1 + > hw/scsi/esp-pci.c | 1 + > hw/scsi/esp.c | 1 + > hw/scsi/megasas.c | 1 + > hw/scsi/scsi-bus.c | 2 + > hw/scsi/scsi-disk.c | 1 + > hw/scsi/scsi-generic.c | 2 +- > hw/scsi/vhost-scsi.c | 2 + > hw/scsi/virtio-scsi-dataplane.c | 1 - > hw/scsi/virtio-scsi.c | 1 + > hw/scsi/vmw_pvscsi.c | 1 + > hw/sd/core.c | 1 + > hw/sd/pxa2xx_mmci.c | 1 + > hw/sd/sd.c | 1 + > hw/sh4/r2d.c | 1 + > hw/sh4/shix.c | 1 + > hw/smbios/smbios.c | 2 + > hw/sparc/leon3.c | 3 ++ > hw/sparc/sun4m.c | 3 ++ > hw/sparc64/sun4u.c | 3 ++ > hw/timer/a9gtimer.c | 1 + > hw/timer/arm_mptimer.c | 1 + > hw/timer/arm_timer.c | 1 - > hw/timer/ds1338.c | 1 + > hw/timer/exynos4210_mct.c | 1 - > hw/timer/exynos4210_pwm.c | 1 - > hw/timer/hpet.c | 1 + > hw/timer/m48t59.c | 2 + > hw/timer/mc146818rtc.c | 2 + > hw/timer/pl031.c | 1 + > hw/timer/twl92230.c | 1 + > hw/tpm/tpm_passthrough.c | 1 - > hw/tpm/tpm_tis.c | 2 +- > hw/tpm/tpm_tis.h | 1 - > hw/tricore/tricore_testboard.c | 1 + > hw/unicore32/puv3.c | 2 +- > hw/usb/bus.c | 2 + > hw/usb/ccid-card-passthru.c | 1 + > hw/usb/combined-packet.c | 1 - > hw/usb/core.c | 1 - > hw/usb/dev-audio.c | 1 - > hw/usb/dev-bluetooth.c | 1 - > hw/usb/dev-hid.c | 1 + > hw/usb/dev-hub.c | 2 +- > hw/usb/dev-mtp.c | 2 +- > hw/usb/dev-network.c | 1 + > hw/usb/dev-serial.c | 1 + > hw/usb/dev-smartcard-reader.c | 1 + > hw/usb/dev-storage.c | 1 + > hw/usb/dev-uas.c | 1 - > hw/usb/hcd-ehci.c | 1 + > hw/usb/hcd-musb.c | 1 - > hw/usb/hcd-ohci.c | 1 + > hw/usb/hcd-uhci.c | 1 + > hw/usb/host-legacy.c | 1 - > hw/usb/host-libusb.c | 2 +- > hw/usb/host-stub.c | 1 - > hw/usb/libhw.c | 1 - > hw/usb/redirect.c | 1 + > hw/usb/tusb6010.c | 1 - > hw/vfio/pci.h | 1 - > hw/vfio/platform.c | 1 + > hw/virtio/vhost-user.c | 2 + > hw/virtio/vhost.c | 1 + > hw/virtio/virtio-balloon.c | 1 - > hw/virtio/virtio-pci.c | 1 + > hw/virtio/virtio-rng.c | 1 + > hw/virtio/virtio.c | 1 + > hw/watchdog/wdt_i6300esb.c | 1 - > hw/watchdog/wdt_ib700.c | 1 - > hw/xen/xen-host-pci-device.c | 1 + > hw/xen/xen_pt.c | 1 + > hw/xen/xen_pt.h | 1 - > hw/xen/xen_pt_config_init.c | 1 + > hw/xen/xen_pt_graphics.c | 1 + > hw/xtensa/sim.c | 1 + > hw/xtensa/xtfpga.c | 1 + > include/block/accounting.h | 2 - > include/block/aio.h | 2 - > include/block/block.h | 2 +- > include/block/nbd.h | 2 - > include/block/qapi.h | 1 + > include/block/snapshot.h | 1 - > include/block/write-threshold.h | 4 -- > include/config.h | 1 - > include/crypto/cipher.h | 2 +- > include/crypto/hash.h | 2 +- > include/crypto/init.h | 2 - > include/crypto/secret.h | 1 - > include/crypto/tlscreds.h | 1 - > include/disas/bfd.h | 2 +- > include/disas/disas.h | 2 - > include/exec/cpu-all.h | 1 - > include/exec/cpu-common.h | 1 - > include/exec/exec-all.h | 2 - > include/exec/ioport.h | 1 - > include/exec/memory.h | 1 - > include/hw/acpi/acpi.h | 1 - > include/hw/acpi/pcihp.h | 1 - > include/hw/acpi/piix4.h | 2 - > include/hw/acpi/tco.h | 2 - > include/hw/arm/allwinner-a10.h | 1 - > include/hw/arm/bcm2835_peripherals.h | 1 - > include/hw/arm/exynos4210.h | 1 - > include/hw/arm/omap.h | 1 + > include/hw/arm/sysbus-fdt.h | 1 - > include/hw/arm/virt-acpi-build.h | 1 - > include/hw/arm/virt.h | 2 +- > include/hw/arm/xlnx-zynqmp.h | 1 - > include/hw/block/block.h | 1 - > include/hw/boards.h | 1 - > include/hw/char/digic-uart.h | 1 - > include/hw/fw-path-provider.h | 1 - > include/hw/hotplug.h | 1 - > include/hw/hw.h | 5 ++- > include/hw/i386/apic.h | 2 +- > include/hw/i386/pc.h | 2 - > include/hw/ipmi/ipmi.h | 1 - > include/hw/isa/apm.h | 1 - > include/hw/isa/i8257.h | 2 +- > include/hw/isa/isa.h | 5 ++- > include/hw/lm32/lm32_pic.h | 1 - > include/hw/nmi.h | 1 - > include/hw/nvram/fw_cfg.h | 50 +------------------------ > include/hw/nvram/fw_cfg_keys.h | 46 +++++++++++++++++++++++ > include/hw/pci-host/apb.h | 1 - > include/hw/pci-host/pam.h | 1 - > include/hw/pci/msi.h | 1 - > include/hw/pci/msix.h | 1 - > include/hw/pci/pci.h | 11 +++++- > include/hw/pci/shpc.h | 1 - > include/hw/pci/slotid_cap.h | 1 - > include/hw/ppc/mac_dbdma.h | 1 + > include/hw/ppc/openpic.h | 1 - > include/hw/ptimer.h | 1 - > include/hw/qdev-core.h | 1 - > include/hw/scsi/scsi.h | 1 - > include/hw/sd/sdhci.h | 1 - > include/hw/sh4/sh_intc.h | 1 - > include/hw/sparc/sun4m.h | 1 - > include/hw/stream.h | 1 - > include/hw/timer/digic-timer.h | 1 - > include/hw/timer/m48t59.h | 1 - > include/hw/usb.h | 1 + > include/hw/vfio/vfio-common.h | 1 - > include/hw/vfio/vfio.h | 2 - > include/hw/virtio/vhost-scsi.h | 1 - > include/hw/xen/xen.h | 2 - > include/io/channel.h | 1 - > include/io/task.h | 1 - > include/migration/migration.h | 1 - > include/monitor/monitor.h | 1 - > include/monitor/qdev.h | 1 - > include/net/filter.h | 2 - > include/net/net.h | 1 - > include/net/queue.h | 2 - > include/net/slirp.h | 1 - > include/net/tap.h | 1 - > include/qapi/error.h | 5 --- > include/qapi/qmp/json-parser.h | 1 - > include/qapi/visitor.h | 1 - > include/qemu-common.h | 64 > -------------------------------- > include/qemu-io.h | 2 - > include/qemu/base64.h | 3 -- > include/qemu/bswap.h | 6 +-- > include/qemu/buffer.h | 2 - > include/qemu/coroutine.h | 1 - > include/qemu/crc32c.h | 2 - > include/qemu/event_notifier.h | 2 - > include/qemu/iov.h | 30 ++++++++++++++- > include/qemu/mmap-alloc.h | 2 - > include/qemu/option.h | 1 - > include/qemu/osdep.h | 24 ++++++++++-- > include/qemu/range.h | 1 - > include/qemu/throttle.h | 1 - > include/qemu/timer.h | 2 - > include/qemu/typedefs.h | 2 + > include/qom/cpu.h | 1 - > include/qom/object.h | 2 +- > include/sysemu/accel.h | 1 - > include/sysemu/block-backend.h | 2 +- > include/sysemu/char.h | 6 ++- > include/sysemu/cpus.h | 2 + > include/sysemu/kvm.h | 4 ++ > include/sysemu/memory_mapping.h | 1 - > include/sysemu/qtest.h | 2 - > include/sysemu/replay.h | 1 - > include/sysemu/rng.h | 1 - > include/sysemu/sysemu.h | 1 - > include/sysemu/tpm_backend.h | 1 - > include/ui/console.h | 1 - > include/ui/qemu-pixman.h | 2 - > include/ui/qemu-spice.h | 1 + > io/channel-buffer.c | 1 + > io/channel-command.c | 2 + > io/channel-file.c | 2 + > io/channel-socket.c | 2 + > io/channel-tls.c | 2 + > io/channel-util.c | 1 + > io/channel-websock.c | 2 + > io/channel.c | 2 + > io/task.c | 1 + > iohandler.c | 2 +- > ioport.c | 1 + > kvm-stub.c | 1 - > linux-user/elfload.c | 2 + > linux-user/mmap.c | 1 - > linux-user/signal.c | 1 - > linux-user/uaccess.c | 2 +- > main-loop.c | 1 + > memory.c | 2 + > memory_mapping.c | 2 +- > migration/block.c | 1 + > migration/exec.c | 2 +- > migration/fd.c | 2 +- > migration/postcopy-ram.c | 1 - > migration/qemu-file-buf.c | 1 - > migration/qemu-file-internal.h | 1 - > migration/qemu-file-stdio.c | 1 - > migration/qemu-file.c | 1 - > migration/ram.c | 1 + > migration/rdma.c | 1 + > migration/tcp.c | 1 - > migration/unix.c | 1 - > migration/vmstate.c | 1 - > monitor.c | 2 + > nbd/client.c | 1 + > nbd/common.c | 1 + > nbd/server.c | 1 + > net/checksum.c | 1 - > net/dump.c | 1 + > net/eth.c | 1 - > net/filter-buffer.c | 1 + > net/filter.c | 1 + > net/hub.h | 2 - > net/l2tpv3.c | 1 - > net/slirp.c | 1 + > net/socket.c | 1 + > net/tap-bsd.c | 1 - > net/tap-linux.c | 1 + > net/tap-win32.c | 1 - > net/tap.c | 1 + > net/tap_int.h | 1 - > net/vde.c | 1 - > os-posix.c | 1 + > pc-bios/optionrom/optionrom.h | 3 +- > qapi/opts-visitor.c | 1 + > qapi/qapi-dealloc-visitor.c | 1 - > qapi/qapi-util.c | 2 +- > qapi/qapi-visit-core.c | 2 +- > qapi/qmp-dispatch.c | 1 + > qapi/qmp-event.c | 1 - > qapi/qmp-input-visitor.c | 2 +- > qapi/qmp-output-visitor.c | 1 - > qapi/string-input-visitor.c | 2 +- > qapi/string-output-visitor.c | 1 - > qdev-monitor.c | 1 + > qemu-img.c | 1 + > qemu-io-cmds.c | 2 + > qemu-io.c | 2 + > qemu-nbd.c | 1 + > qemu-timer.c | 1 + > qga/channel-posix.c | 1 + > qga/commands-posix.c | 1 + > qga/commands.c | 1 + > qga/guest-agent-core.h | 1 - > qga/main.c | 2 +- > qga/vss-win32/requester.cpp | 1 - > qobject/json-lexer.c | 1 - > qobject/json-parser.c | 1 + > qobject/json-streamer.c | 1 - > qobject/qbool.c | 1 - > qobject/qfloat.c | 1 - > qobject/qint.c | 1 - > qobject/qjson.c | 1 + > qobject/qlist.c | 1 - > qobject/qnull.c | 1 - > qobject/qobject.c | 1 - > qobject/qstring.c | 1 - > qom/cpu.c | 1 + > qom/object.c | 1 + > qom/object_interfaces.c | 1 + > qom/qom-qobject.c | 2 +- > qtest.c | 2 + > replay/replay-events.c | 1 - > replay/replay-input.c | 2 +- > replay/replay-internal.c | 1 - > replay/replay-time.c | 1 - > replay/replay.c | 1 + > scripts/clean-includes | 6 +-- > scripts/qapi-types.py | 5 --- > scripts/qapi-visit.py | 1 + > scripts/tracetool/backend/log.py | 6 +-- > scripts/tracetool/format/events_h.py | 2 - > scripts/tracetool/format/h.py | 3 -- > scripts/tracetool/format/tcg_h.py | 2 - > scripts/tracetool/format/ust_events_c.py | 1 - > scripts/tracetool/format/ust_events_h.py | 1 - > slirp/ip_icmp.c | 1 + > slirp/libslirp.h | 2 - > slirp/misc.c | 2 +- > slirp/tcp_subr.c | 1 + > spice-qemu-char.c | 1 + > stubs/arch-query-cpu-def.c | 1 - > stubs/bdrv-commit-all.c | 1 - > stubs/clock-warp.c | 1 - > stubs/cpu-get-clock.c | 1 - > stubs/cpu-get-icount.c | 1 - > stubs/cpus.c | 1 - > stubs/dump.c | 1 - > stubs/fd-register.c | 1 - > stubs/fdset-add-fd.c | 1 - > stubs/fdset-find-fd.c | 1 - > stubs/fdset-get-fd.c | 1 - > stubs/fdset-remove-fd.c | 1 - > stubs/gdbstub.c | 2 - > stubs/get-fd.c | 2 +- > stubs/get-next-serial.c | 1 - > stubs/iothread-lock.c | 1 - > stubs/is-daemonized.c | 1 - > stubs/kvm.c | 1 - > stubs/machine-init-done.c | 1 - > stubs/migr-blocker.c | 1 - > stubs/mon-is-qmp.c | 1 - > stubs/mon-printf.c | 1 - > stubs/monitor-init.c | 1 - > stubs/notify-event.c | 1 - > stubs/set-fd-handler.c | 1 - > stubs/slirp.c | 1 - > stubs/target-get-monitor-def.c | 2 - > stubs/target-monitor-defs.c | 2 - > stubs/uuid.c | 1 - > stubs/vm-stop.c | 1 - > stubs/vmstate.c | 1 - > target-alpha/cpu.c | 1 + > target-alpha/cpu.h | 1 - > target-alpha/translate.c | 1 + > target-arm/cpu.c | 1 + > target-arm/cpu.h | 1 - > target-arm/cpu64.c | 1 + > target-arm/kvm-stub.c | 1 - > target-arm/kvm.c | 1 - > target-arm/kvm32.c | 1 - > target-arm/kvm64.c | 1 - > target-cris/cpu.c | 1 + > target-cris/cpu.h | 1 - > target-i386/cpu.c | 3 +- > target-i386/cpu.h | 1 - > target-i386/kvm-stub.c | 1 - > target-i386/kvm.c | 2 +- > target-i386/machine.c | 1 + > target-lm32/cpu.c | 1 + > target-lm32/cpu.h | 1 - > target-m68k/cpu.c | 1 + > target-m68k/cpu.h | 1 - > target-m68k/m68k-semi.c | 1 - > target-microblaze/cpu.c | 1 + > target-microblaze/cpu.h | 1 - > target-mips/cpu.c | 1 + > target-mips/cpu.h | 1 - > target-mips/kvm.c | 1 - > target-moxie/cpu.c | 1 + > target-moxie/cpu.h | 1 - > target-openrisc/cpu.c | 1 + > target-openrisc/cpu.h | 1 - > target-openrisc/exception.h | 1 - > target-openrisc/interrupt.c | 1 - > target-openrisc/mmu.c | 1 - > target-openrisc/translate.c | 1 - > target-ppc/cpu-models.c | 1 + > target-ppc/cpu.h | 1 - > target-ppc/kvm-stub.c | 1 - > target-ppc/kvm.c | 1 - > target-ppc/translate_init.c | 1 + > target-s390x/cpu.c | 1 + > target-s390x/cpu.h | 1 - > target-s390x/helper.c | 2 + > target-s390x/kvm.c | 1 - > target-s390x/misc_helper.c | 1 + > target-sh4/cpu.c | 1 + > target-sh4/cpu.h | 1 - > target-sparc/cpu.c | 3 ++ > target-sparc/cpu.h | 1 - > target-tilegx/cpu.c | 1 + > target-tilegx/cpu.h | 1 - > target-tilegx/helper.c | 1 - > target-tilegx/simd_helper.c | 1 - > target-tricore/cpu.c | 1 + > target-tricore/cpu.h | 1 - > target-unicore32/cpu.c | 1 + > target-unicore32/cpu.h | 1 - > target-xtensa/core-dc233c.c | 1 - > target-xtensa/cpu.c | 1 + > target-xtensa/cpu.h | 1 - > tcg/optimize.c | 1 - > tcg/tcg.h | 2 +- > tci.c | 1 - > tests/ahci-test.c | 1 - > tests/boot-order-test.c | 4 +- > tests/boot-sector.c | 1 - > tests/check-qdict.c | 1 - > tests/check-qfloat.c | 1 - > tests/check-qint.c | 1 - > tests/check-qjson.c | 1 - > tests/check-qom-proplist.c | 1 + > tests/check-qstring.c | 1 - > tests/crypto-tls-x509-helpers.h | 2 - > tests/device-introspect-test.c | 1 - > tests/fdc-test.c | 1 - > tests/fw_cfg-test.c | 3 +- > tests/hd-geo-test.c | 1 - > tests/io-channel-helpers.c | 1 + > tests/ipmi-bt-test.c | 1 - > tests/libqos/ahci.c | 1 - > tests/libqos/malloc-pc.c | 4 +- > tests/libqos/pci-pc.c | 1 - > tests/pc-cpu-test.c | 1 - > tests/pxe-test.c | 1 - > tests/rtl8139-test.c | 1 - > tests/tcg/test-i386-fprem.c | 4 +- > tests/test-aio.c | 1 + > tests/test-base64.c | 2 +- > tests/test-blockjob-txn.c | 1 + > tests/test-crypto-cipher.c | 1 + > tests/test-crypto-secret.c | 2 + > tests/test-crypto-tlscredsx509.c | 2 + > tests/test-crypto-tlssession.c | 2 + > tests/test-io-channel-buffer.c | 2 +- > tests/test-io-channel-command.c | 2 + > tests/test-io-channel-file.c | 3 +- > tests/test-io-channel-socket.c | 2 + > tests/test-io-channel-tls.c | 1 + > tests/test-io-task.c | 2 + > tests/test-iov.c | 1 - > tests/test-opts-visitor.c | 1 + > tests/test-qemu-opts.c | 1 + > tests/test-qmp-commands.c | 1 - > tests/test-qmp-event.c | 1 - > tests/test-qmp-input-strict.c | 2 +- > tests/test-qmp-input-visitor.c | 2 +- > tests/test-qmp-output-visitor.c | 2 +- > tests/test-string-input-visitor.c | 2 +- > tests/test-string-output-visitor.c | 2 +- > tests/test-thread-pool.c | 2 +- > tests/test-throttle.c | 1 + > tests/test-visitor-serialization.c | 2 +- > tests/test-vmstate.c | 1 - > tests/vhost-user-test.c | 1 + > tests/virtio-9p-test.c | 1 - > thread-pool.c | 1 - > trace/control.c | 1 + > trace/control.h | 2 - > trace/qmp.c | 1 - > ui/console-gl.c | 1 - > ui/curses.c | 1 - > ui/cursor.c | 1 - > ui/egl-context.c | 1 - > ui/egl-helpers.c | 1 - > ui/gtk-egl.c | 1 - > ui/gtk-gl-area.c | 1 - > ui/input-linux.c | 1 + > ui/keymaps.c | 1 + > ui/keymaps.h | 2 - > ui/qemu-pixman.c | 1 - > ui/sdl2-2d.c | 1 - > ui/sdl2-gl.c | 1 - > ui/sdl2-input.c | 1 - > ui/sdl2.c | 1 - > ui/shader.c | 1 - > ui/spice-core.c | 1 - > ui/spice-display.c | 1 - > ui/spice-input.c | 1 - > ui/vnc-auth-sasl.c | 1 + > ui/vnc-auth-vencrypt.c | 1 + > ui/vnc-enc-tight.c | 1 - > ui/vnc-ws.c | 1 + > ui/vnc.c | 1 + > ui/vnc.h | 1 - > ui/x_keymap.c | 1 - > util/acl.c | 1 - > util/base64.c | 3 +- > util/buffer.c | 1 + > util/compatfd.c | 1 - > util/coroutine-gthread.c | 1 - > util/coroutine-sigaltstack.c | 1 - > util/coroutine-ucontext.c | 1 - > util/coroutine-win32.c | 1 - > util/crc32c.c | 1 - > util/envlist.c | 1 - > util/error.c | 2 +- > util/event_notifier-win32.c | 1 - > util/fifo8.c | 1 - > util/getauxval.c | 1 - > util/iov.c | 1 + > util/log.c | 1 - > util/mmap-alloc.c | 1 + > util/module.c | 1 - > util/notify.c | 1 - > util/oslib-posix.c | 3 +- > util/qemu-config.c | 1 - > util/qemu-coroutine-lock.c | 1 - > util/qemu-coroutine.c | 1 - > util/qemu-option.c | 1 + > util/qemu-sockets.c | 4 +- > util/qemu-thread-win32.c | 1 - > util/rcu.c | 1 - > util/throttle.c | 1 + > vl.c | 1 + > 821 files changed, 684 insertions(+), 627 deletions(-) > delete mode 100644 include/config.h > create mode 100644 include/hw/nvram/fw_cfg_keys.h >