History log of /openbmc/qemu/hw/core/ (Results 901 – 925 of 1522)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
d5938f2912-Aug-2019 Markus Armbruster <armbru@redhat.com>

Clean up inclusion of sysemu/sysemu.h

In my "build everything" tree, changing sysemu/sysemu.h triggers a
recompile of some 5400 out of 6600 objects (not counting tests and
objects that don't depend

Clean up inclusion of sysemu/sysemu.h

In my "build everything" tree, changing sysemu/sysemu.h triggers a
recompile of some 5400 out of 6600 objects (not counting tests and
objects that don't depend on qemu/osdep.h).

Almost a third of its inclusions are actually superfluous. Delete
them. Downgrade two more to qapi/qapi-types-run-state.h, and move one
from char/serial.h to char/serial.c.

hw/semihosting/config.c, monitor/monitor.c, qdev-monitor.c, and
stubs/semihost.c define variables declared in sysemu/sysemu.h without
including it. The compiler is cool with that, but include it anyway.

This doesn't reduce actual use much, as it's still included into
widely included headers. The next commit will tackle that.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20190812052359.30071-27-armbru@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>

show more ...


/openbmc/qemu/accel/tcg/tcg-all.c
/openbmc/qemu/block/nfs.c
/openbmc/qemu/blockdev-nbd.c
/openbmc/qemu/dump/win_dump.c
/openbmc/qemu/hw/acpi/pcihp.c
/openbmc/qemu/hw/acpi/vmgenid.c
/openbmc/qemu/hw/alpha/pci.c
/openbmc/qemu/hw/alpha/typhoon.c
/openbmc/qemu/hw/arm/nrf51_soc.c
/openbmc/qemu/hw/arm/smmu-common.c
/openbmc/qemu/hw/arm/smmuv3.c
/openbmc/qemu/hw/arm/sysbus-fdt.c
/openbmc/qemu/hw/arm/z2.c
/openbmc/qemu/hw/char/exynos4210_uart.c
/openbmc/qemu/hw/char/imx_serial.c
/openbmc/qemu/hw/char/serial.c
loader-fit.c
platform-bus.c
qdev.c
/openbmc/qemu/hw/display/ramfb-standalone.c
/openbmc/qemu/hw/display/ramfb.c
/openbmc/qemu/hw/dma/xlnx-zynq-devcfg.c
/openbmc/qemu/hw/hppa/dino.c
/openbmc/qemu/hw/hppa/pci.c
/openbmc/qemu/hw/i2c/smbus_ich9.c
/openbmc/qemu/hw/ide/cmd646.c
/openbmc/qemu/hw/ide/ioport.c
/openbmc/qemu/hw/ide/piix.c
/openbmc/qemu/hw/ide/via.c
/openbmc/qemu/hw/input/adb-kbd.c
/openbmc/qemu/hw/intc/allwinner-a10-pic.c
/openbmc/qemu/hw/intc/mips_gic.c
/openbmc/qemu/hw/intc/xics_pnv.c
/openbmc/qemu/hw/ipmi/ipmi_bmc_extern.c
/openbmc/qemu/hw/isa/vt82c686.c
/openbmc/qemu/hw/misc/armsse-cpuid.c
/openbmc/qemu/hw/misc/armsse-mhu.c
/openbmc/qemu/hw/misc/imx6_src.c
/openbmc/qemu/hw/misc/imx7_gpr.c
/openbmc/qemu/hw/misc/iotkit-sysinfo.c
/openbmc/qemu/hw/misc/mips_cmgcr.c
/openbmc/qemu/hw/misc/mos6522.c
/openbmc/qemu/hw/misc/sga.c
/openbmc/qemu/hw/misc/zynq-xadc.c
/openbmc/qemu/hw/net/fsl_etsec/etsec.c
/openbmc/qemu/hw/net/lan9118.c
/openbmc/qemu/hw/net/ne2000.c
/openbmc/qemu/hw/net/opencores_eth.c
/openbmc/qemu/hw/net/pcnet.c
/openbmc/qemu/hw/nios2/generic_nommu.c
/openbmc/qemu/hw/pci-host/pam.c
/openbmc/qemu/hw/ppc/pnv_bmc.c
/openbmc/qemu/hw/ppc/pnv_core.c
/openbmc/qemu/hw/ppc/pnv_lpc.c
/openbmc/qemu/hw/ppc/pnv_occ.c
/openbmc/qemu/hw/ppc/ppce500_spin.c
/openbmc/qemu/hw/ppc/spapr_rng.c
/openbmc/qemu/hw/ppc/spapr_vio.c
/openbmc/qemu/hw/s390x/event-facility.c
/openbmc/qemu/hw/s390x/sclpcpu.c
/openbmc/qemu/hw/s390x/virtio-ccw.c
/openbmc/qemu/hw/scsi/scsi-disk.c
/openbmc/qemu/hw/sd/milkymist-memcard.c
/openbmc/qemu/hw/semihosting/config.c
/openbmc/qemu/hw/ssi/aspeed_smc.c
/openbmc/qemu/hw/ssi/imx_spi.c
/openbmc/qemu/hw/ssi/xilinx_spi.c
/openbmc/qemu/hw/ssi/xilinx_spips.c
/openbmc/qemu/hw/timer/allwinner-a10-pit.c
/openbmc/qemu/hw/timer/altera_timer.c
/openbmc/qemu/hw/timer/exynos4210_rtc.c
/openbmc/qemu/hw/tricore/tricore_testboard.c
/openbmc/qemu/hw/usb/hcd-ehci.h
/openbmc/qemu/hw/vfio/ap.c
/openbmc/qemu/hw/vfio/platform.c
/openbmc/qemu/hw/xen/xen_pt_load_rom.c
/openbmc/qemu/hw/xtensa/xtensa_memory.c
/openbmc/qemu/include/hw/arm/allwinner-a10.h
/openbmc/qemu/include/hw/char/serial.h
/openbmc/qemu/include/hw/i386/pc.h
/openbmc/qemu/include/hw/riscv/riscv_htif.h
/openbmc/qemu/include/hw/timer/stm32f2xx_timer.h
/openbmc/qemu/include/hw/virtio/virtio-bus.h
/openbmc/qemu/include/hw/xen/xen-legacy-backend.h
/openbmc/qemu/include/migration/global_state.h
/openbmc/qemu/include/sysemu/kvm_int.h
/openbmc/qemu/include/sysemu/replay.h
/openbmc/qemu/include/ui/spice-display.h
/openbmc/qemu/monitor/monitor.c
/openbmc/qemu/net/tap-bsd.c
/openbmc/qemu/net/tap-linux.c
/openbmc/qemu/net/tap-solaris.c
/openbmc/qemu/net/tap-win32.c
/openbmc/qemu/qdev-monitor.c
/openbmc/qemu/qemu-img.c
/openbmc/qemu/qom/cpu.c
/openbmc/qemu/replay/replay-audio.c
/openbmc/qemu/replay/replay-char.c
/openbmc/qemu/replay/replay-net.c
/openbmc/qemu/replay/replay-snapshot.c
/openbmc/qemu/stubs/replay.c
/openbmc/qemu/stubs/semihost.c
/openbmc/qemu/target/arm/cpu64.c
/openbmc/qemu/target/arm/helper-a64.c
/openbmc/qemu/target/arm/helper.c
/openbmc/qemu/target/arm/kvm32.c
/openbmc/qemu/target/arm/kvm64.c
/openbmc/qemu/target/arm/m_helper.c
/openbmc/qemu/target/i386/hvf/x86_task.c
/openbmc/qemu/target/lm32/helper.c
/openbmc/qemu/target/m68k/m68k-semi.c
/openbmc/qemu/target/nios2/nios2-semi.c
/openbmc/qemu/target/ppc/kvm.c
/openbmc/qemu/target/sparc/helper.c
/openbmc/qemu/target/xtensa/translate.c
/openbmc/qemu/target/xtensa/xtensa-semi.c
/openbmc/qemu/tests/migration-test.c
/openbmc/qemu/ui/input-keymap.c
/openbmc/qemu/ui/input-legacy.c
/openbmc/qemu/ui/input-linux.c
/openbmc/qemu/ui/keymaps.c
/openbmc/qemu/ui/sdl2-2d.c
/openbmc/qemu/ui/sdl2-gl.c
/openbmc/qemu/ui/sdl2-input.c
/openbmc/qemu/ui/spice-display.c
/openbmc/qemu/util/qemu-timer.c
b58c5c2d12-Aug-2019 Markus Armbruster <armbru@redhat.com>

numa: Move remaining NUMA declarations from sysemu.h to numa.h

Commit e35704ba9c "numa: Move NUMA declarations from sysemu.h to
numa.h" left a few NUMA-related macros behind. Move them now.

Cc: Ed

numa: Move remaining NUMA declarations from sysemu.h to numa.h

Commit e35704ba9c "numa: Move NUMA declarations from sysemu.h to
numa.h" left a few NUMA-related macros behind. Move them now.

Cc: Eduardo Habkost <ehabkost@redhat.com>
Cc: Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Eduardo Habkost <ehabkost@redhat.com>
Message-Id: <20190812052359.30071-26-armbru@redhat.com>

show more ...

12e9493d12-Aug-2019 Markus Armbruster <armbru@redhat.com>

Include hw/boards.h a bit less

hw/boards.h pulls in almost 60 headers. The less we include it into
headers, the better. As a first step, drop superfluous inclusions,
and downgrade some more to wha

Include hw/boards.h a bit less

hw/boards.h pulls in almost 60 headers. The less we include it into
headers, the better. As a first step, drop superfluous inclusions,
and downgrade some more to what's actually needed. Gets rid of just
one inclusion into a header.

Cc: Eduardo Habkost <ehabkost@redhat.com>
Cc: Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20190812052359.30071-23-armbru@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Eduardo Habkost <ehabkost@redhat.com>

show more ...

a27bd6c712-Aug-2019 Markus Armbruster <armbru@redhat.com>

Include hw/qdev-properties.h less

In my "build everything" tree, changing hw/qdev-properties.h triggers
a recompile of some 2700 out of 6600 objects (not counting tests and
objects that don't depend

Include hw/qdev-properties.h less

In my "build everything" tree, changing hw/qdev-properties.h triggers
a recompile of some 2700 out of 6600 objects (not counting tests and
objects that don't depend on qemu/osdep.h).

Many places including hw/qdev-properties.h (directly or via hw/qdev.h)
actually need only hw/qdev-core.h. Include hw/qdev-core.h there
instead.

hw/qdev.h is actually pointless: all it does is include hw/qdev-core.h
and hw/qdev-properties.h, which in turn includes hw/qdev-core.h.
Replace the remaining uses of hw/qdev.h by hw/qdev-properties.h.

While there, delete a few superfluous inclusions of hw/qdev-core.h.

Touching hw/qdev-properties.h now recompiles some 1200 objects.

Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: "Daniel P. Berrangé" <berrange@redhat.com>
Cc: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Eduardo Habkost <ehabkost@redhat.com>
Message-Id: <20190812052359.30071-22-armbru@redhat.com>

show more ...


/openbmc/qemu/backends/vhost-user.c
/openbmc/qemu/hw/9pfs/virtio-9p-device.c
/openbmc/qemu/hw/acpi/piix4.c
/openbmc/qemu/hw/acpi/vmgenid.c
/openbmc/qemu/hw/arm/armv7m.c
/openbmc/qemu/hw/arm/aspeed.c
/openbmc/qemu/hw/arm/digic.c
/openbmc/qemu/hw/arm/exynos4210.c
/openbmc/qemu/hw/arm/exynos4_boards.c
/openbmc/qemu/hw/arm/fsl-imx25.c
/openbmc/qemu/hw/arm/fsl-imx31.c
/openbmc/qemu/hw/arm/fsl-imx6.c
/openbmc/qemu/hw/arm/mcimx6ul-evk.c
/openbmc/qemu/hw/arm/mcimx7d-sabre.c
/openbmc/qemu/hw/arm/microbit.c
/openbmc/qemu/hw/arm/msf2-som.c
/openbmc/qemu/hw/arm/musicpal.c
/openbmc/qemu/hw/arm/netduino2.c
/openbmc/qemu/hw/arm/nseries.c
/openbmc/qemu/hw/arm/omap1.c
/openbmc/qemu/hw/arm/omap2.c
/openbmc/qemu/hw/arm/pxa2xx.c
/openbmc/qemu/hw/arm/pxa2xx_gpio.c
/openbmc/qemu/hw/arm/sabrelite.c
/openbmc/qemu/hw/arm/sbsa-ref.c
/openbmc/qemu/hw/arm/spitz.c
/openbmc/qemu/hw/arm/stm32f205_soc.c
/openbmc/qemu/hw/arm/strongarm.c
/openbmc/qemu/hw/arm/virt.c
/openbmc/qemu/hw/audio/ac97.c
/openbmc/qemu/hw/audio/adlib.c
/openbmc/qemu/hw/audio/cs4231a.c
/openbmc/qemu/hw/audio/gus.c
/openbmc/qemu/hw/audio/hda-codec.c
/openbmc/qemu/hw/audio/intel-hda.c
/openbmc/qemu/hw/audio/intel-hda.h
/openbmc/qemu/hw/audio/marvell_88w8618.c
/openbmc/qemu/hw/audio/pl041.c
/openbmc/qemu/hw/audio/sb16.c
/openbmc/qemu/hw/block/fdc.c
/openbmc/qemu/hw/block/m25p80.c
/openbmc/qemu/hw/block/nand.c
/openbmc/qemu/hw/block/nvme.c
/openbmc/qemu/hw/block/onenand.c
/openbmc/qemu/hw/block/pflash_cfi01.c
/openbmc/qemu/hw/block/pflash_cfi02.c
/openbmc/qemu/hw/block/vhost-user-blk.c
/openbmc/qemu/hw/block/virtio-blk.c
/openbmc/qemu/hw/block/xen-block.c
/openbmc/qemu/hw/char/bcm2835_aux.c
/openbmc/qemu/hw/char/debugcon.c
/openbmc/qemu/hw/char/digic-uart.c
/openbmc/qemu/hw/char/escc.c
/openbmc/qemu/hw/char/etraxfs_ser.c
/openbmc/qemu/hw/char/exynos4210_uart.c
/openbmc/qemu/hw/char/grlib_apbuart.c
/openbmc/qemu/hw/char/imx_serial.c
/openbmc/qemu/hw/char/ipoctal232.c
/openbmc/qemu/hw/char/lm32_juart.c
/openbmc/qemu/hw/char/lm32_uart.c
/openbmc/qemu/hw/char/mcf_uart.c
/openbmc/qemu/hw/char/milkymist-uart.c
/openbmc/qemu/hw/char/nrf51_uart.c
/openbmc/qemu/hw/char/parallel-isa.c
/openbmc/qemu/hw/char/parallel.c
/openbmc/qemu/hw/char/sclpconsole-lm.c
/openbmc/qemu/hw/char/sclpconsole.c
/openbmc/qemu/hw/char/serial-isa.c
/openbmc/qemu/hw/char/serial-pci-multi.c
/openbmc/qemu/hw/char/serial-pci.c
/openbmc/qemu/hw/char/spapr_vty.c
/openbmc/qemu/hw/char/stm32f2xx_usart.c
/openbmc/qemu/hw/char/terminal3270.c
/openbmc/qemu/hw/char/virtio-console.c
/openbmc/qemu/hw/char/virtio-serial-bus.c
/openbmc/qemu/hw/char/xilinx_uartlite.c
bus.c
generic-loader.c
or-irq.c
platform-bus.c
qdev-fw.c
qdev-properties-system.c
qdev-properties.c
qdev.c
register.c
split-irq.c
vm-change-state-handler.c
/openbmc/qemu/hw/cpu/a15mpcore.c
/openbmc/qemu/hw/cpu/a9mpcore.c
/openbmc/qemu/hw/cpu/arm11mpcore.c
/openbmc/qemu/hw/cpu/cluster.c
/openbmc/qemu/hw/cpu/realview_mpcore.c
/openbmc/qemu/hw/display/ati.c
/openbmc/qemu/hw/display/bcm2835_fb.c
/openbmc/qemu/hw/display/bochs-display.c
/openbmc/qemu/hw/display/cg3.c
/openbmc/qemu/hw/display/cirrus_vga.c
/openbmc/qemu/hw/display/cirrus_vga_isa.c
/openbmc/qemu/hw/display/g364fb.c
/openbmc/qemu/hw/display/i2c-ddc.c
/openbmc/qemu/hw/display/milkymist-vgafb.c
/openbmc/qemu/hw/display/qxl.c
/openbmc/qemu/hw/display/ramfb-standalone.c
/openbmc/qemu/hw/display/sm501.c
/openbmc/qemu/hw/display/tcx.c
/openbmc/qemu/hw/display/vga-isa.c
/openbmc/qemu/hw/display/vga-pci.c
/openbmc/qemu/hw/display/vhost-user-gpu.c
/openbmc/qemu/hw/display/virtio-gpu-pci.c
/openbmc/qemu/hw/display/virtio-gpu.c
/openbmc/qemu/hw/display/virtio-vga.c
/openbmc/qemu/hw/display/vmware_vga.c
/openbmc/qemu/hw/dma/i82374.c
/openbmc/qemu/hw/dma/i8257.c
/openbmc/qemu/hw/dma/pl080.c
/openbmc/qemu/hw/dma/pl330.c
/openbmc/qemu/hw/dma/pxa2xx_dma.c
/openbmc/qemu/hw/dma/sparc32_dma.c
/openbmc/qemu/hw/dma/xilinx_axidma.c
/openbmc/qemu/hw/dma/xlnx-zdma.c
/openbmc/qemu/hw/gpio/imx_gpio.c
/openbmc/qemu/hw/gpio/max7310.c
/openbmc/qemu/hw/gpio/omap_gpio.c
/openbmc/qemu/hw/hyperv/hyperv_testdev.c
/openbmc/qemu/hw/i2c/core.c
/openbmc/qemu/hw/i2c/omap_i2c.c
/openbmc/qemu/hw/i2c/smbus_eeprom.c
/openbmc/qemu/hw/i386/intel_iommu.c
/openbmc/qemu/hw/i386/kvm/clock.c
/openbmc/qemu/hw/i386/kvm/ioapic.c
/openbmc/qemu/hw/i386/pc_q35.c
/openbmc/qemu/hw/i386/pc_sysfw.c
/openbmc/qemu/hw/i386/vmmouse.c
/openbmc/qemu/hw/i386/vmport.c
/openbmc/qemu/hw/i386/x86-iommu.c
/openbmc/qemu/hw/i386/xen/xen_pvdevice.c
/openbmc/qemu/hw/ide/ahci.c
/openbmc/qemu/hw/ide/cmd646.c
/openbmc/qemu/hw/ide/isa.c
/openbmc/qemu/hw/ide/macio.c
/openbmc/qemu/hw/ide/mmio.c
/openbmc/qemu/hw/ide/qdev.c
/openbmc/qemu/hw/input/adb.c
/openbmc/qemu/hw/input/milkymist-softusb.c
/openbmc/qemu/hw/input/vhost-user-input.c
/openbmc/qemu/hw/input/virtio-input-hid.c
/openbmc/qemu/hw/input/virtio-input-host.c
/openbmc/qemu/hw/input/virtio-input.c
/openbmc/qemu/hw/intc/apic_common.c
/openbmc/qemu/hw/intc/arm_gic_common.c
/openbmc/qemu/hw/intc/arm_gicv2m.c
/openbmc/qemu/hw/intc/arm_gicv3_common.c
/openbmc/qemu/hw/intc/arm_gicv3_its_kvm.c
/openbmc/qemu/hw/intc/armv7m_nvic.c
/openbmc/qemu/hw/intc/etraxfs_pic.c
/openbmc/qemu/hw/intc/exynos4210_combiner.c
/openbmc/qemu/hw/intc/exynos4210_gic.c
/openbmc/qemu/hw/intc/grlib_irqmp.c
/openbmc/qemu/hw/intc/i8259_common.c
/openbmc/qemu/hw/intc/ioapic.c
/openbmc/qemu/hw/intc/mips_gic.c
/openbmc/qemu/hw/intc/omap_intc.c
/openbmc/qemu/hw/intc/ompic.c
/openbmc/qemu/hw/intc/openpic.c
/openbmc/qemu/hw/intc/openpic_kvm.c
/openbmc/qemu/hw/intc/pnv_xive.c
/openbmc/qemu/hw/intc/realview_gic.c
/openbmc/qemu/hw/intc/s390_flic.c
/openbmc/qemu/hw/intc/spapr_xive.c
/openbmc/qemu/hw/intc/xics.c
/openbmc/qemu/hw/intc/xilinx_intc.c
/openbmc/qemu/hw/intc/xlnx-pmu-iomod-intc.c
/openbmc/qemu/hw/ipack/ipack.c
/openbmc/qemu/hw/ipmi/ipmi.c
/openbmc/qemu/hw/ipmi/ipmi_bmc_extern.c
/openbmc/qemu/hw/ipmi/ipmi_bmc_sim.c
/openbmc/qemu/hw/ipmi/isa_ipmi_bt.c
/openbmc/qemu/hw/ipmi/isa_ipmi_kcs.c
/openbmc/qemu/hw/isa/isa-superio.c
/openbmc/qemu/hw/isa/lpc_ich9.c
/openbmc/qemu/hw/isa/pc87312.c
/openbmc/qemu/hw/isa/vt82c686.c
/openbmc/qemu/hw/lm32/lm32.h
/openbmc/qemu/hw/lm32/milkymist-hw.h
/openbmc/qemu/hw/lm32/milkymist.c
/openbmc/qemu/hw/mem/memory-device.c
/openbmc/qemu/hw/mem/nvdimm.c
/openbmc/qemu/hw/mem/pc-dimm.c
/openbmc/qemu/hw/microblaze/petalogix_ml605_mmu.c
/openbmc/qemu/hw/microblaze/xlnx-zynqmp-pmu.c
/openbmc/qemu/hw/mips/boston.c
/openbmc/qemu/hw/mips/cps.c
/openbmc/qemu/hw/misc/a9scu.c
/openbmc/qemu/hw/misc/applesmc.c
/openbmc/qemu/hw/misc/arm11scu.c
/openbmc/qemu/hw/misc/arm_l2x0.c
/openbmc/qemu/hw/misc/arm_sysctl.c
/openbmc/qemu/hw/misc/armsse-cpuid.c
/openbmc/qemu/hw/misc/bcm2835_property.c
/openbmc/qemu/hw/misc/debugexit.c
/openbmc/qemu/hw/misc/eccmemctl.c
/openbmc/qemu/hw/misc/iotkit-sysctl.c
/openbmc/qemu/hw/misc/iotkit-sysinfo.c
/openbmc/qemu/hw/misc/ivshmem.c
/openbmc/qemu/hw/misc/macio/cuda.c
/openbmc/qemu/hw/misc/macio/gpio.c
/openbmc/qemu/hw/misc/macio/macio.c
/openbmc/qemu/hw/misc/macio/pmu.c
/openbmc/qemu/hw/misc/mips_cmgcr.c
/openbmc/qemu/hw/misc/mips_cpc.c
/openbmc/qemu/hw/misc/mips_itu.c
/openbmc/qemu/hw/misc/mos6522.c
/openbmc/qemu/hw/misc/mps2-fpgaio.c
/openbmc/qemu/hw/misc/mps2-scc.c
/openbmc/qemu/hw/misc/msf2-sysreg.c
/openbmc/qemu/hw/misc/nrf51_rng.c
/openbmc/qemu/hw/misc/pc-testdev.c
/openbmc/qemu/hw/misc/pci-testdev.c
/openbmc/qemu/hw/misc/pvpanic.c
/openbmc/qemu/hw/misc/tz-mpc.c
/openbmc/qemu/hw/misc/tz-msc.c
/openbmc/qemu/hw/misc/tz-ppc.c
/openbmc/qemu/hw/net/allwinner_emac.c
/openbmc/qemu/hw/net/cadence_gem.c
/openbmc/qemu/hw/net/can/can_kvaser_pci.c
/openbmc/qemu/hw/net/can/can_mioe3680_pci.c
/openbmc/qemu/hw/net/can/can_pcm3680_pci.c
/openbmc/qemu/hw/net/dp8393x.c
/openbmc/qemu/hw/net/e1000.c
/openbmc/qemu/hw/net/e1000e.c
/openbmc/qemu/hw/net/eepro100.c
/openbmc/qemu/hw/net/fsl_etsec/etsec.c
/openbmc/qemu/hw/net/fsl_etsec/etsec.h
/openbmc/qemu/hw/net/ftgmac100.c
/openbmc/qemu/hw/net/imx_fec.c
/openbmc/qemu/hw/net/lan9118.c
/openbmc/qemu/hw/net/lance.c
/openbmc/qemu/hw/net/mcf_fec.c
/openbmc/qemu/hw/net/milkymist-minimac2.c
/openbmc/qemu/hw/net/mipsnet.c
/openbmc/qemu/hw/net/ne2000-isa.c
/openbmc/qemu/hw/net/ne2000-pci.c
/openbmc/qemu/hw/net/opencores_eth.c
/openbmc/qemu/hw/net/pcnet-pci.c
/openbmc/qemu/hw/net/pcnet.c
/openbmc/qemu/hw/net/rocker/rocker.c
/openbmc/qemu/hw/net/rtl8139.c
/openbmc/qemu/hw/net/smc91c111.c
/openbmc/qemu/hw/net/spapr_llan.c
/openbmc/qemu/hw/net/stellaris_enet.c
/openbmc/qemu/hw/net/sungem.c
/openbmc/qemu/hw/net/sunhme.c
/openbmc/qemu/hw/net/virtio-net.c
/openbmc/qemu/hw/net/vmxnet3.c
/openbmc/qemu/hw/net/xgmac.c
/openbmc/qemu/hw/net/xilinx_axienet.c
/openbmc/qemu/hw/net/xilinx_ethlite.c
/openbmc/qemu/hw/nios2/10m50_devboard.c
/openbmc/qemu/hw/nvram/ds1225y.c
/openbmc/qemu/hw/nvram/eeprom_at24c.c
/openbmc/qemu/hw/nvram/fw_cfg.c
/openbmc/qemu/hw/nvram/mac_nvram.c
/openbmc/qemu/hw/nvram/nrf51_nvm.c
/openbmc/qemu/hw/nvram/spapr_nvram.c
/openbmc/qemu/hw/openrisc/openrisc_sim.c
/openbmc/qemu/hw/pci-bridge/gen_pcie_root_port.c
/openbmc/qemu/hw/pci-bridge/pci_bridge_dev.c
/openbmc/qemu/hw/pci-bridge/pci_expander_bridge.c
/openbmc/qemu/hw/pci-bridge/pcie_pci_bridge.c
/openbmc/qemu/hw/pci-bridge/pcie_root_port.c
/openbmc/qemu/hw/pci-bridge/xio3130_downstream.c
/openbmc/qemu/hw/pci-host/designware.c
/openbmc/qemu/hw/pci-host/gpex.c
/openbmc/qemu/hw/pci-host/grackle.c
/openbmc/qemu/hw/pci-host/piix.c
/openbmc/qemu/hw/pci-host/ppce500.c
/openbmc/qemu/hw/pci-host/prep.c
/openbmc/qemu/hw/pci-host/q35.c
/openbmc/qemu/hw/pci-host/sabre.c
/openbmc/qemu/hw/pci-host/uninorth.c
/openbmc/qemu/hw/pci-host/versatile.c
/openbmc/qemu/hw/pci-host/xilinx-pcie.c
/openbmc/qemu/hw/pci/pci.c
/openbmc/qemu/hw/pci/pcie_port.c
/openbmc/qemu/hw/ppc/e500.c
/openbmc/qemu/hw/ppc/mac_newworld.c
/openbmc/qemu/hw/ppc/mac_oldworld.c
/openbmc/qemu/hw/ppc/pnv.c
/openbmc/qemu/hw/ppc/pnv_core.c
/openbmc/qemu/hw/ppc/pnv_psi.c
/openbmc/qemu/hw/ppc/ppc440_uc.c
/openbmc/qemu/hw/ppc/prep_systemio.c
/openbmc/qemu/hw/ppc/rs6000_mc.c
/openbmc/qemu/hw/ppc/sam460ex.c
/openbmc/qemu/hw/ppc/spapr.c
/openbmc/qemu/hw/ppc/spapr_cpu_core.c
/openbmc/qemu/hw/ppc/spapr_drc.c
/openbmc/qemu/hw/ppc/spapr_events.c
/openbmc/qemu/hw/ppc/spapr_iommu.c
/openbmc/qemu/hw/ppc/spapr_irq.c
/openbmc/qemu/hw/ppc/spapr_pci.c
/openbmc/qemu/hw/ppc/spapr_rng.c
/openbmc/qemu/hw/ppc/spapr_rtas.c
/openbmc/qemu/hw/ppc/virtex_ml507.c
/openbmc/qemu/hw/rdma/vmw/pvrdma_main.c
/openbmc/qemu/hw/riscv/riscv_hart.c
/openbmc/qemu/hw/riscv/sifive_clint.c
/openbmc/qemu/hw/riscv/sifive_plic.c
/openbmc/qemu/hw/riscv/sifive_prci.c
/openbmc/qemu/hw/riscv/sifive_test.c
/openbmc/qemu/hw/s390x/3270-ccw.c
/openbmc/qemu/hw/s390x/ap-device.c
/openbmc/qemu/hw/s390x/ccw-device.c
/openbmc/qemu/hw/s390x/css-bridge.c
/openbmc/qemu/hw/s390x/css.c
/openbmc/qemu/hw/s390x/ipl.c
/openbmc/qemu/hw/s390x/ipl.h
/openbmc/qemu/hw/s390x/s390-pci-bus.c
/openbmc/qemu/hw/s390x/s390-virtio-ccw.c
/openbmc/qemu/hw/s390x/sclpquiesce.c
/openbmc/qemu/hw/s390x/vhost-vsock-ccw.c
/openbmc/qemu/hw/s390x/virtio-ccw-9p.c
/openbmc/qemu/hw/s390x/virtio-ccw-balloon.c
/openbmc/qemu/hw/s390x/virtio-ccw-blk.c
/openbmc/qemu/hw/s390x/virtio-ccw-crypto.c
/openbmc/qemu/hw/s390x/virtio-ccw-gpu.c
/openbmc/qemu/hw/s390x/virtio-ccw-input.c
/openbmc/qemu/hw/s390x/virtio-ccw-net.c
/openbmc/qemu/hw/s390x/virtio-ccw-rng.c
/openbmc/qemu/hw/s390x/virtio-ccw-scsi.c
/openbmc/qemu/hw/s390x/virtio-ccw-serial.c
/openbmc/qemu/hw/scsi/megasas.c
/openbmc/qemu/hw/scsi/mptsas.c
/openbmc/qemu/hw/scsi/scsi-bus.c
/openbmc/qemu/hw/scsi/scsi-disk.c
/openbmc/qemu/hw/scsi/scsi-generic.c
/openbmc/qemu/hw/scsi/spapr_vscsi.c
/openbmc/qemu/hw/scsi/vhost-scsi.c
/openbmc/qemu/hw/scsi/vhost-user-scsi.c
/openbmc/qemu/hw/scsi/virtio-scsi.c
/openbmc/qemu/hw/scsi/vmw_pvscsi.c
/openbmc/qemu/hw/sd/milkymist-memcard.c
/openbmc/qemu/hw/sd/pxa2xx_mmci.c
/openbmc/qemu/hw/sd/sd.c
/openbmc/qemu/hw/sd/sdhci-pci.c
/openbmc/qemu/hw/sd/sdhci.c
/openbmc/qemu/hw/sd/ssi-sd.c
/openbmc/qemu/hw/sh4/r2d.c
/openbmc/qemu/hw/sparc/leon3.c
/openbmc/qemu/hw/sparc/sun4m.c
/openbmc/qemu/hw/sparc/sun4m_iommu.c
/openbmc/qemu/hw/sparc64/sun4u.c
/openbmc/qemu/hw/ssi/aspeed_smc.c
/openbmc/qemu/hw/ssi/xilinx_spi.c
/openbmc/qemu/hw/ssi/xilinx_spips.c
/openbmc/qemu/hw/timer/a9gtimer.c
/openbmc/qemu/hw/timer/allwinner-a10-pit.c
/openbmc/qemu/hw/timer/altera_timer.c
/openbmc/qemu/hw/timer/arm_mptimer.c
/openbmc/qemu/hw/timer/arm_timer.c
/openbmc/qemu/hw/timer/cmsdk-apb-dualtimer.c
/openbmc/qemu/hw/timer/exynos4210_mct.c
/openbmc/qemu/hw/timer/grlib_gptimer.c
/openbmc/qemu/hw/timer/lm32_timer.c
/openbmc/qemu/hw/timer/m48t59-isa.c
/openbmc/qemu/hw/timer/m48t59.c
/openbmc/qemu/hw/timer/mc146818rtc.c
/openbmc/qemu/hw/timer/milkymist-sysctl.c
/openbmc/qemu/hw/timer/mss-timer.c
/openbmc/qemu/hw/timer/pl031.c
/openbmc/qemu/hw/timer/pxa2xx_timer.c
/openbmc/qemu/hw/timer/slavio_timer.c
/openbmc/qemu/hw/timer/stm32f2xx_timer.c
/openbmc/qemu/hw/timer/xilinx_timer.c
/openbmc/qemu/hw/tpm/tpm_crb.c
/openbmc/qemu/hw/tpm/tpm_tis.c
/openbmc/qemu/hw/tpm/tpm_util.c
/openbmc/qemu/hw/usb/bus.c
/openbmc/qemu/hw/usb/ccid-card-emulated.c
/openbmc/qemu/hw/usb/ccid-card-passthru.c
/openbmc/qemu/hw/usb/ccid.h
/openbmc/qemu/hw/usb/dev-audio.c
/openbmc/qemu/hw/usb/dev-hid.c
/openbmc/qemu/hw/usb/dev-hub.c
/openbmc/qemu/hw/usb/dev-mtp.c
/openbmc/qemu/hw/usb/dev-network.c
/openbmc/qemu/hw/usb/dev-serial.c
/openbmc/qemu/hw/usb/dev-smartcard-reader.c
/openbmc/qemu/hw/usb/dev-storage.c
/openbmc/qemu/hw/usb/dev-uas.c
/openbmc/qemu/hw/usb/hcd-ehci-pci.c
/openbmc/qemu/hw/usb/hcd-ehci-sysbus.c
/openbmc/qemu/hw/usb/hcd-ohci-pci.c
/openbmc/qemu/hw/usb/hcd-ohci.c
/openbmc/qemu/hw/usb/hcd-uhci.c
/openbmc/qemu/hw/usb/hcd-xhci-nec.c
/openbmc/qemu/hw/usb/hcd-xhci.c
/openbmc/qemu/hw/usb/host-libusb.c
/openbmc/qemu/hw/usb/redirect.c
/openbmc/qemu/hw/vfio/ap.c
/openbmc/qemu/hw/vfio/ccw.c
/openbmc/qemu/hw/vfio/pci-quirks.c
/openbmc/qemu/hw/vfio/pci.c
/openbmc/qemu/hw/vfio/platform.c
/openbmc/qemu/hw/virtio/vhost-scsi-pci.c
/openbmc/qemu/hw/virtio/vhost-user-blk-pci.c
/openbmc/qemu/hw/virtio/vhost-user-scsi-pci.c
/openbmc/qemu/hw/virtio/vhost-vsock-pci.c
/openbmc/qemu/hw/virtio/vhost-vsock.c
/openbmc/qemu/hw/virtio/virtio-9p-pci.c
/openbmc/qemu/hw/virtio/virtio-balloon-pci.c
/openbmc/qemu/hw/virtio/virtio-balloon.c
/openbmc/qemu/hw/virtio/virtio-blk-pci.c
/openbmc/qemu/hw/virtio/virtio-bus.c
/openbmc/qemu/hw/virtio/virtio-crypto-pci.c
/openbmc/qemu/hw/virtio/virtio-crypto.c
/openbmc/qemu/hw/virtio/virtio-input-pci.c
/openbmc/qemu/hw/virtio/virtio-mmio.c
/openbmc/qemu/hw/virtio/virtio-net-pci.c
/openbmc/qemu/hw/virtio/virtio-pci.c
/openbmc/qemu/hw/virtio/virtio-pmem.c
/openbmc/qemu/hw/virtio/virtio-rng.c
/openbmc/qemu/hw/virtio/virtio-scsi-pci.c
/openbmc/qemu/hw/virtio/virtio-serial-pci.c
/openbmc/qemu/hw/virtio/virtio.c
/openbmc/qemu/hw/watchdog/cmsdk-apb-watchdog.c
/openbmc/qemu/hw/watchdog/wdt_aspeed.c
/openbmc/qemu/hw/xen/xen-bus.c
/openbmc/qemu/hw/xen/xen-legacy-backend.c
/openbmc/qemu/hw/xen/xen_pt.c
/openbmc/qemu/hw/xtensa/xtfpga.c
/openbmc/qemu/include/hw/acpi/acpi_dev_interface.h
/openbmc/qemu/include/hw/acpi/vmgenid.h
/openbmc/qemu/include/hw/audio/pcspk.h
/openbmc/qemu/include/hw/boards.h
/openbmc/qemu/include/hw/char/cadence_uart.h
/openbmc/qemu/include/hw/char/cmsdk-apb-uart.h
/openbmc/qemu/include/hw/char/lm32_juart.h
/openbmc/qemu/include/hw/char/pl011.h
/openbmc/qemu/include/hw/char/xilinx_uartlite.h
/openbmc/qemu/include/hw/cpu/cluster.h
/openbmc/qemu/include/hw/cpu/core.h
/openbmc/qemu/include/hw/cris/etraxfs.h
/openbmc/qemu/include/hw/display/milkymist_tmu2.h
/openbmc/qemu/include/hw/i2c/i2c.h
/openbmc/qemu/include/hw/i386/intel_iommu.h
/openbmc/qemu/include/hw/input/adb.h
/openbmc/qemu/include/hw/ipack/ipack.h
/openbmc/qemu/include/hw/ipmi/ipmi.h
/openbmc/qemu/include/hw/isa/isa.h
/openbmc/qemu/include/hw/mem/memory-device.h
/openbmc/qemu/include/hw/mem/pc-dimm.h
/openbmc/qemu/include/hw/misc/auxbus.h
/openbmc/qemu/include/hw/misc/unimp.h
/openbmc/qemu/include/hw/misc/vmcoreinfo.h
/openbmc/qemu/include/hw/net/ne2000-isa.h
/openbmc/qemu/include/hw/pci/pci.h
/openbmc/qemu/include/hw/pcmcia.h
/openbmc/qemu/include/hw/ppc/openpic.h
/openbmc/qemu/include/hw/ppc/spapr_cpu_core.h
/openbmc/qemu/include/hw/ppc/spapr_drc.h
/openbmc/qemu/include/hw/ppc/xics.h
/openbmc/qemu/include/hw/ppc/xive.h
/openbmc/qemu/include/hw/s390x/event-facility.h
/openbmc/qemu/include/hw/s390x/sclp.h
/openbmc/qemu/include/hw/s390x/storage-attributes.h
/openbmc/qemu/include/hw/s390x/storage-keys.h
/openbmc/qemu/include/hw/s390x/tod.h
/openbmc/qemu/include/hw/scsi/scsi.h
/openbmc/qemu/include/hw/sd/sd.h
/openbmc/qemu/include/hw/sparc/grlib.h
/openbmc/qemu/include/hw/ssi/ssi.h
/openbmc/qemu/include/hw/sysbus.h
/openbmc/qemu/include/hw/timer/cmsdk-apb-timer.h
/openbmc/qemu/include/hw/timer/i8254.h
/openbmc/qemu/include/hw/usb.h
/openbmc/qemu/include/hw/virtio/vhost-scsi-common.h
/openbmc/qemu/include/hw/virtio/vhost-scsi.h
/openbmc/qemu/include/hw/virtio/vhost-user-blk.h
/openbmc/qemu/include/hw/virtio/vhost-user-scsi.h
/openbmc/qemu/include/hw/virtio/virtio-bus.h
/openbmc/qemu/include/hw/virtio/virtio-serial.h
/openbmc/qemu/include/hw/virtio/virtio.h
/openbmc/qemu/include/hw/watchdog/wdt_diag288.h
/openbmc/qemu/include/monitor/qdev.h
/openbmc/qemu/include/sysemu/accel.h
/openbmc/qemu/memory.c
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/migration.h
/openbmc/qemu/net/net.c
/openbmc/qemu/qdev-monitor.c
/openbmc/qemu/qom/qom-qmp-cmds.c
/openbmc/qemu/qtest.c
/openbmc/qemu/target/tilegx/cpu.c
/openbmc/qemu/tests/test-qdev-global-props.c
/openbmc/qemu/vl.c
db72581512-Aug-2019 Markus Armbruster <armbru@redhat.com>

Include qemu/main-loop.h less

In my "build everything" tree, changing qemu/main-loop.h triggers a
recompile of some 5600 out of 6600 objects (not counting tests and
objects that don't depend on qemu

Include qemu/main-loop.h less

In my "build everything" tree, changing qemu/main-loop.h triggers a
recompile of some 5600 out of 6600 objects (not counting tests and
objects that don't depend on qemu/osdep.h). It includes block/aio.h,
which in turn includes qemu/event_notifier.h, qemu/notify.h,
qemu/processor.h, qemu/qsp.h, qemu/queue.h, qemu/thread-posix.h,
qemu/thread.h, qemu/timer.h, and a few more.

Include qemu/main-loop.h only where it's needed. Touching it now
recompiles only some 1700 objects. For block/aio.h and
qemu/event_notifier.h, these numbers drop from 5600 to 2800. For the
others, they shrink only slightly.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20190812052359.30071-21-armbru@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>

show more ...


/openbmc/qemu/accel/kvm/kvm-all.c
/openbmc/qemu/block.c
/openbmc/qemu/block/block-backend.c
/openbmc/qemu/block/create.c
/openbmc/qemu/block/io.c
/openbmc/qemu/block/nbd.c
/openbmc/qemu/block/nfs.c
/openbmc/qemu/block/nvme.c
/openbmc/qemu/block/qcow2.c
/openbmc/qemu/block/qed.c
/openbmc/qemu/block/sheepdog.c
/openbmc/qemu/block/throttle-groups.c
/openbmc/qemu/blockdev.c
/openbmc/qemu/blockjob.c
/openbmc/qemu/chardev/baum.c
/openbmc/qemu/chardev/char-pipe.c
/openbmc/qemu/chardev/char-win-stdio.c
/openbmc/qemu/chardev/char-win.c
/openbmc/qemu/dump/dump.c
/openbmc/qemu/fsdev/qemu-fsdev-throttle.c
/openbmc/qemu/fsdev/qemu-fsdev-throttle.h
/openbmc/qemu/hw/9pfs/9p.c
/openbmc/qemu/hw/9pfs/codir.c
/openbmc/qemu/hw/9pfs/cofile.c
/openbmc/qemu/hw/9pfs/cofs.c
/openbmc/qemu/hw/9pfs/coth.c
/openbmc/qemu/hw/9pfs/coth.h
/openbmc/qemu/hw/9pfs/coxattr.c
/openbmc/qemu/hw/9pfs/xen-9p-backend.c
/openbmc/qemu/hw/arm/omap1.c
/openbmc/qemu/hw/block/dataplane/virtio-blk.c
/openbmc/qemu/hw/block/dataplane/xen-block.c
/openbmc/qemu/hw/block/fdc.c
/openbmc/qemu/hw/block/xen-block.c
/openbmc/qemu/hw/char/virtio-serial-bus.c
machine-qmp-cmds.c
/openbmc/qemu/hw/display/qxl.c
/openbmc/qemu/hw/dma/etraxfs_dma.c
/openbmc/qemu/hw/i386/intel_iommu.c
/openbmc/qemu/hw/i386/xen/xen-hvm.c
/openbmc/qemu/hw/ide/ahci.c
/openbmc/qemu/hw/ide/core.c
/openbmc/qemu/hw/ide/qdev.c
/openbmc/qemu/hw/intc/s390_flic.c
/openbmc/qemu/hw/m68k/mcf5206.c
/openbmc/qemu/hw/m68k/mcf5208.c
/openbmc/qemu/hw/misc/imx6_src.c
/openbmc/qemu/hw/net/fsl_etsec/etsec.c
/openbmc/qemu/hw/net/lan9118.c
/openbmc/qemu/hw/net/vhost_net.c
/openbmc/qemu/hw/net/virtio-net.c
/openbmc/qemu/hw/ppc/ppc.c
/openbmc/qemu/hw/ppc/ppc440_uc.c
/openbmc/qemu/hw/ppc/spapr_hcall.c
/openbmc/qemu/hw/ppc/spapr_rng.c
/openbmc/qemu/hw/scsi/mptsas.c
/openbmc/qemu/hw/scsi/scsi-disk.c
/openbmc/qemu/hw/scsi/vhost-scsi.c
/openbmc/qemu/hw/scsi/vmw_pvscsi.c
/openbmc/qemu/hw/timer/allwinner-a10-pit.c
/openbmc/qemu/hw/timer/altera_timer.c
/openbmc/qemu/hw/timer/etraxfs_timer.c
/openbmc/qemu/hw/timer/exynos4210_rtc.c
/openbmc/qemu/hw/timer/milkymist-sysctl.c
/openbmc/qemu/hw/usb/dev-uas.c
/openbmc/qemu/hw/usb/hcd-ehci.c
/openbmc/qemu/hw/usb/host-libusb.c
/openbmc/qemu/hw/usb/xen-usb.c
/openbmc/qemu/hw/vfio/ap.c
/openbmc/qemu/hw/vfio/ccw.c
/openbmc/qemu/hw/vfio/common.c
/openbmc/qemu/hw/vfio/pci.c
/openbmc/qemu/hw/vfio/platform.c
/openbmc/qemu/hw/virtio/vhost-backend.c
/openbmc/qemu/hw/virtio/vhost-user.c
/openbmc/qemu/hw/virtio/virtio-crypto.c
/openbmc/qemu/hw/virtio/virtio-pmem.c
/openbmc/qemu/hw/virtio/virtio.c
/openbmc/qemu/hw/xen/xen-legacy-backend.c
/openbmc/qemu/hw/xen/xen_pvdev.c
/openbmc/qemu/include/block/block_int.h
/openbmc/qemu/include/chardev/char-fe.h
/openbmc/qemu/include/chardev/char-io.h
/openbmc/qemu/include/chardev/char.h
/openbmc/qemu/include/exec/cpu-defs.h
/openbmc/qemu/include/hw/scsi/scsi.h
/openbmc/qemu/include/hw/xen/xen_common.h
/openbmc/qemu/include/net/can_emu.h
/openbmc/qemu/include/net/filter.h
/openbmc/qemu/include/qemu/range.h
/openbmc/qemu/include/qom/object.h
/openbmc/qemu/include/sysemu/cryptodev.h
/openbmc/qemu/include/sysemu/rng.h
/openbmc/qemu/include/sysemu/sysemu.h
/openbmc/qemu/linux-user/elfload.c
/openbmc/qemu/linux-user/main.c
/openbmc/qemu/linux-user/qemu.h
/openbmc/qemu/linux-user/syscall.c
/openbmc/qemu/memory.c
/openbmc/qemu/migration/block.c
/openbmc/qemu/migration/colo.c
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/savevm.c
/openbmc/qemu/nbd/client.c
/openbmc/qemu/nbd/nbd-internal.h
/openbmc/qemu/nbd/server.c
/openbmc/qemu/net/can/can_socketcan.c
/openbmc/qemu/net/netmap.c
/openbmc/qemu/net/tap-win32.c
/openbmc/qemu/net/tap.c
/openbmc/qemu/qapi/qapi-dealloc-visitor.c
/openbmc/qemu/qemu-img.c
/openbmc/qemu/qom/cpu.c
/openbmc/qemu/replay/replay-internal.c
/openbmc/qemu/target/arm/helper-a64.c
/openbmc/qemu/target/arm/helper.c
/openbmc/qemu/target/arm/kvm.c
/openbmc/qemu/target/arm/kvm64.c
/openbmc/qemu/target/arm/m_helper.c
/openbmc/qemu/target/arm/psci.c
/openbmc/qemu/target/i386/kvm.c
/openbmc/qemu/target/i386/whpx-all.c
/openbmc/qemu/target/lm32/op_helper.c
/openbmc/qemu/target/mips/kvm.c
/openbmc/qemu/target/ppc/int_helper.c
/openbmc/qemu/target/ppc/kvm.c
/openbmc/qemu/target/ppc/machine.c
/openbmc/qemu/target/ppc/mem_helper.c
/openbmc/qemu/target/ppc/misc_helper.c
/openbmc/qemu/target/ppc/mmu_helper.c
/openbmc/qemu/target/ppc/translate.c
/openbmc/qemu/target/s390x/kvm.c
/openbmc/qemu/tcg/tcg-op-gvec.c
/openbmc/qemu/tests/test-bdrv-drain.c
/openbmc/qemu/tests/test-bdrv-graph-mod.c
/openbmc/qemu/tests/test-block-backend.c
/openbmc/qemu/tests/test-block-iothread.c
/openbmc/qemu/tests/test-image-locking.c
/openbmc/qemu/tests/test-replication.c
/openbmc/qemu/tests/test-throttle.c
/openbmc/qemu/ui/cocoa.m
/openbmc/qemu/ui/input-linux.c
/openbmc/qemu/ui/kbd-state.c
/openbmc/qemu/ui/spice-core.c
/openbmc/qemu/ui/spice-display.c
/openbmc/qemu/ui/vnc-auth-sasl.h
/openbmc/qemu/ui/vnc.c
/openbmc/qemu/util/oslib-posix.c
/openbmc/qemu/util/vfio-helpers.c
650d103d12-Aug-2019 Markus Armbruster <armbru@redhat.com>

Include hw/hw.h exactly where needed

In my "build everything" tree, changing hw/hw.h triggers a recompile
of some 2600 out of 6600 objects (not counting tests and objects that
don't depend on qemu/o

Include hw/hw.h exactly where needed

In my "build everything" tree, changing hw/hw.h triggers a recompile
of some 2600 out of 6600 objects (not counting tests and objects that
don't depend on qemu/osdep.h).

The previous commits have left only the declaration of hw_error() in
hw/hw.h. This permits dropping most of its inclusions. Touching it
now recompiles less than 200 objects.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20190812052359.30071-19-armbru@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>

show more ...


/openbmc/qemu/accel/kvm/kvm-all.c
/openbmc/qemu/audio/audio.c
/openbmc/qemu/audio/spiceaudio.c
/openbmc/qemu/audio/wavcapture.c
/openbmc/qemu/cpus.c
/openbmc/qemu/device-hotplug.c
/openbmc/qemu/exec.c
/openbmc/qemu/hw/9pfs/xen-9p-backend.c
/openbmc/qemu/hw/acpi/core.c
/openbmc/qemu/hw/acpi/cpu_hotplug.c
/openbmc/qemu/hw/acpi/ich9.c
/openbmc/qemu/hw/acpi/pcihp.c
/openbmc/qemu/hw/acpi/piix4.c
/openbmc/qemu/hw/adc/stm32f2xx_adc.c
/openbmc/qemu/hw/alpha/dp264.c
/openbmc/qemu/hw/alpha/typhoon.c
/openbmc/qemu/hw/arm/boot.c
/openbmc/qemu/hw/arm/collie.c
/openbmc/qemu/hw/arm/gumstix.c
/openbmc/qemu/hw/arm/integratorcp.c
/openbmc/qemu/hw/arm/mainstone.c
/openbmc/qemu/hw/arm/musicpal.c
/openbmc/qemu/hw/arm/omap2.c
/openbmc/qemu/hw/arm/omap_sx1.c
/openbmc/qemu/hw/arm/palm.c
/openbmc/qemu/hw/arm/pxa2xx_pic.c
/openbmc/qemu/hw/arm/spitz.c
/openbmc/qemu/hw/arm/tosa.c
/openbmc/qemu/hw/arm/virt-acpi-build.c
/openbmc/qemu/hw/arm/z2.c
/openbmc/qemu/hw/audio/ac97.c
/openbmc/qemu/hw/audio/adlib.c
/openbmc/qemu/hw/audio/cs4231a.c
/openbmc/qemu/hw/audio/es1370.c
/openbmc/qemu/hw/audio/gus.c
/openbmc/qemu/hw/audio/hda-codec.c
/openbmc/qemu/hw/audio/intel-hda.c
/openbmc/qemu/hw/audio/lm4549.h
/openbmc/qemu/hw/audio/marvell_88w8618.c
/openbmc/qemu/hw/audio/milkymist-ac97.c
/openbmc/qemu/hw/audio/pcspk.c
/openbmc/qemu/hw/audio/sb16.c
/openbmc/qemu/hw/block/dataplane/xen-block.c
/openbmc/qemu/hw/block/ecc.c
/openbmc/qemu/hw/block/fdc.c
/openbmc/qemu/hw/block/m25p80.c
/openbmc/qemu/hw/block/nvme.c
/openbmc/qemu/hw/block/pflash_cfi01.c
/openbmc/qemu/hw/block/pflash_cfi02.c
/openbmc/qemu/hw/block/tc58128.c
/openbmc/qemu/hw/block/xen-block.c
/openbmc/qemu/hw/char/debugcon.c
/openbmc/qemu/hw/char/digic-uart.c
/openbmc/qemu/hw/char/escc.c
/openbmc/qemu/hw/char/lm32_juart.c
/openbmc/qemu/hw/char/lm32_uart.c
/openbmc/qemu/hw/char/mcf_uart.c
/openbmc/qemu/hw/char/milkymist-uart.c
/openbmc/qemu/hw/char/omap_uart.c
/openbmc/qemu/hw/char/parallel.c
/openbmc/qemu/hw/char/sh_serial.c
/openbmc/qemu/hw/char/xen_console.c
/openbmc/qemu/hw/char/xilinx_uartlite.c
empty_slot.c
null-machine.c
ptimer.c
/openbmc/qemu/hw/cris/boot.c
/openbmc/qemu/hw/display/ati.c
/openbmc/qemu/hw/display/bcm2835_fb.c
/openbmc/qemu/hw/display/bochs-display.c
/openbmc/qemu/hw/display/cirrus_vga.c
/openbmc/qemu/hw/display/cirrus_vga_isa.c
/openbmc/qemu/hw/display/edid-region.c
/openbmc/qemu/hw/display/exynos4210_fimd.c
/openbmc/qemu/hw/display/framebuffer.c
/openbmc/qemu/hw/display/milkymist-tmu2.c
/openbmc/qemu/hw/display/omap_lcdc.c
/openbmc/qemu/hw/display/qxl.h
/openbmc/qemu/hw/display/sm501.c
/openbmc/qemu/hw/display/tc6393xb.c
/openbmc/qemu/hw/display/vga-isa-mm.c
/openbmc/qemu/hw/display/vga-isa.c
/openbmc/qemu/hw/display/vga-pci.c
/openbmc/qemu/hw/display/vga.c
/openbmc/qemu/hw/display/virtio-vga.c
/openbmc/qemu/hw/display/vmware_vga.c
/openbmc/qemu/hw/display/xenfb.c
/openbmc/qemu/hw/dma/i8257.c
/openbmc/qemu/hw/dma/pl080.c
/openbmc/qemu/hw/dma/puv3_dma.c
/openbmc/qemu/hw/dma/rc4030.c
/openbmc/qemu/hw/dma/sparc32_dma.c
/openbmc/qemu/hw/dma/xilinx_axidma.c
/openbmc/qemu/hw/gpio/max7310.c
/openbmc/qemu/hw/gpio/omap_gpio.c
/openbmc/qemu/hw/gpio/puv3_gpio.c
/openbmc/qemu/hw/gpio/zaurus.c
/openbmc/qemu/hw/hppa/dino.c
/openbmc/qemu/hw/hppa/machine.c
/openbmc/qemu/hw/i2c/bitbang_i2c.c
/openbmc/qemu/hw/i2c/omap_i2c.c
/openbmc/qemu/hw/i2c/pm_smbus.c
/openbmc/qemu/hw/i2c/ppc4xx_i2c.c
/openbmc/qemu/hw/i2c/smbus_eeprom.c
/openbmc/qemu/hw/i2c/smbus_ich9.c
/openbmc/qemu/hw/i2c/smbus_master.c
/openbmc/qemu/hw/i2c/smbus_slave.c
/openbmc/qemu/hw/i386/amd_iommu.h
/openbmc/qemu/hw/i386/multiboot.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/i386/pc_piix.c
/openbmc/qemu/hw/i386/pc_q35.c
/openbmc/qemu/hw/i386/pc_sysfw.c
/openbmc/qemu/hw/i386/vmmouse.c
/openbmc/qemu/hw/i386/vmport.c
/openbmc/qemu/hw/i386/xen/xen-hvm.c
/openbmc/qemu/hw/i386/xen/xen_platform.c
/openbmc/qemu/hw/i386/xen/xen_pvdevice.c
/openbmc/qemu/hw/ide/ahci-allwinner.c
/openbmc/qemu/hw/ide/ahci.c
/openbmc/qemu/hw/ide/cmd646.c
/openbmc/qemu/hw/ide/core.c
/openbmc/qemu/hw/ide/ich.c
/openbmc/qemu/hw/ide/ioport.c
/openbmc/qemu/hw/ide/isa.c
/openbmc/qemu/hw/ide/macio.c
/openbmc/qemu/hw/ide/microdrive.c
/openbmc/qemu/hw/ide/mmio.c
/openbmc/qemu/hw/ide/pci.c
/openbmc/qemu/hw/ide/piix.c
/openbmc/qemu/hw/ide/qdev.c
/openbmc/qemu/hw/ide/via.c
/openbmc/qemu/hw/input/hid.c
/openbmc/qemu/hw/input/lm832x.c
/openbmc/qemu/hw/input/milkymist-softusb.c
/openbmc/qemu/hw/input/pckbd.c
/openbmc/qemu/hw/input/ps2.c
/openbmc/qemu/hw/input/stellaris_input.c
/openbmc/qemu/hw/input/tsc2005.c
/openbmc/qemu/hw/intc/etraxfs_pic.c
/openbmc/qemu/hw/intc/exynos4210_combiner.c
/openbmc/qemu/hw/intc/heathrow_pic.c
/openbmc/qemu/hw/intc/i8259.c
/openbmc/qemu/hw/intc/ioapic.c
/openbmc/qemu/hw/intc/lm32_pic.c
/openbmc/qemu/hw/intc/mips_gic.c
/openbmc/qemu/hw/intc/omap_intc.c
/openbmc/qemu/hw/intc/ompic.c
/openbmc/qemu/hw/intc/openpic.c
/openbmc/qemu/hw/intc/openpic_kvm.c
/openbmc/qemu/hw/intc/sh_intc.c
/openbmc/qemu/hw/intc/xics.c
/openbmc/qemu/hw/intc/xics_kvm.c
/openbmc/qemu/hw/intc/xics_spapr.c
/openbmc/qemu/hw/intc/xilinx_intc.c
/openbmc/qemu/hw/ipmi/ipmi.c
/openbmc/qemu/hw/ipmi/isa_ipmi_bt.c
/openbmc/qemu/hw/ipmi/isa_ipmi_kcs.c
/openbmc/qemu/hw/isa/apm.c
/openbmc/qemu/hw/isa/lpc_ich9.c
/openbmc/qemu/hw/isa/piix4.c
/openbmc/qemu/hw/isa/vt82c686.c
/openbmc/qemu/hw/lm32/lm32_boards.c
/openbmc/qemu/hw/lm32/milkymist.c
/openbmc/qemu/hw/m68k/an5206.c
/openbmc/qemu/hw/microblaze/boot.h
/openbmc/qemu/hw/microblaze/petalogix_ml605_mmu.c
/openbmc/qemu/hw/microblaze/petalogix_s3adsp1800_mmu.c
/openbmc/qemu/hw/mips/addr.c
/openbmc/qemu/hw/mips/boston.c
/openbmc/qemu/hw/mips/gt64xxx_pci.c
/openbmc/qemu/hw/mips/mips_fulong2e.c
/openbmc/qemu/hw/mips/mips_int.c
/openbmc/qemu/hw/mips/mips_jazz.c
/openbmc/qemu/hw/mips/mips_malta.c
/openbmc/qemu/hw/mips/mips_mipssim.c
/openbmc/qemu/hw/mips/mips_r4k.c
/openbmc/qemu/hw/misc/applesmc.c
/openbmc/qemu/hw/misc/arm_integrator_debug.c
/openbmc/qemu/hw/misc/arm_sysctl.c
/openbmc/qemu/hw/misc/debugexit.c
/openbmc/qemu/hw/misc/edu.c
/openbmc/qemu/hw/misc/ivshmem.c
/openbmc/qemu/hw/misc/macio/cuda.c
/openbmc/qemu/hw/misc/macio/gpio.c
/openbmc/qemu/hw/misc/macio/mac_dbdma.c
/openbmc/qemu/hw/misc/macio/macio.c
/openbmc/qemu/hw/misc/macio/pmu.c
/openbmc/qemu/hw/misc/milkymist-hpdmc.c
/openbmc/qemu/hw/misc/milkymist-pfpu.c
/openbmc/qemu/hw/misc/mips_cmgcr.c
/openbmc/qemu/hw/misc/mos6522.c
/openbmc/qemu/hw/misc/mst_fpga.c
/openbmc/qemu/hw/misc/omap_gpmc.c
/openbmc/qemu/hw/misc/omap_l4.c
/openbmc/qemu/hw/misc/omap_sdrc.c
/openbmc/qemu/hw/misc/pc-testdev.c
/openbmc/qemu/hw/misc/pca9552.c
/openbmc/qemu/hw/misc/pci-testdev.c
/openbmc/qemu/hw/misc/puv3_pm.c
/openbmc/qemu/hw/misc/tmp105.c
/openbmc/qemu/hw/misc/tmp421.c
/openbmc/qemu/hw/misc/unimp.c
/openbmc/qemu/hw/misc/zynq-xadc.c
/openbmc/qemu/hw/misc/zynq_slcr.c
/openbmc/qemu/hw/moxie/moxiesim.c
/openbmc/qemu/hw/net/can/can_kvaser_pci.c
/openbmc/qemu/hw/net/can/can_mioe3680_pci.c
/openbmc/qemu/hw/net/can/can_pcm3680_pci.c
/openbmc/qemu/hw/net/can/can_sja1000.c
/openbmc/qemu/hw/net/can/can_sja1000.h
/openbmc/qemu/hw/net/e1000.c
/openbmc/qemu/hw/net/e1000e.c
/openbmc/qemu/hw/net/e1000e_core.c
/openbmc/qemu/hw/net/e1000x_common.c
/openbmc/qemu/hw/net/eepro100.c
/openbmc/qemu/hw/net/lan9118.c
/openbmc/qemu/hw/net/milkymist-minimac2.c
/openbmc/qemu/hw/net/mipsnet.c
/openbmc/qemu/hw/net/ne2000.c
/openbmc/qemu/hw/net/ne2000.h
/openbmc/qemu/hw/net/opencores_eth.c
/openbmc/qemu/hw/net/rocker/rocker.c
/openbmc/qemu/hw/net/rocker/rocker_desc.c
/openbmc/qemu/hw/net/rtl8139.c
/openbmc/qemu/hw/net/spapr_llan.c
/openbmc/qemu/hw/net/sunhme.c
/openbmc/qemu/hw/net/xen_nic.c
/openbmc/qemu/hw/net/xilinx_axienet.c
/openbmc/qemu/hw/net/xilinx_ethlite.c
/openbmc/qemu/hw/nios2/10m50_devboard.c
/openbmc/qemu/hw/nios2/boot.h
/openbmc/qemu/hw/nios2/generic_nommu.c
/openbmc/qemu/hw/nvram/chrp_nvram.c
/openbmc/qemu/hw/nvram/eeprom93xx.c
/openbmc/qemu/hw/nvram/eeprom_at24c.c
/openbmc/qemu/hw/nvram/fw_cfg.c
/openbmc/qemu/hw/nvram/mac_nvram.c
/openbmc/qemu/hw/openrisc/cputimer.c
/openbmc/qemu/hw/openrisc/openrisc_sim.c
/openbmc/qemu/hw/openrisc/pic_cpu.c
/openbmc/qemu/hw/pci-host/bonito.c
/openbmc/qemu/hw/pci-host/gpex.c
/openbmc/qemu/hw/pci-host/piix.c
/openbmc/qemu/hw/pci-host/ppce500.c
/openbmc/qemu/hw/pci-host/prep.c
/openbmc/qemu/hw/pci-host/q35.c
/openbmc/qemu/hw/pci-host/uninorth.c
/openbmc/qemu/hw/pci/msix.c
/openbmc/qemu/hw/pci/pci.c
/openbmc/qemu/hw/pci/pcie_host.c
/openbmc/qemu/hw/pcmcia/pcmcia.c
/openbmc/qemu/hw/pcmcia/pxa2xx.c
/openbmc/qemu/hw/ppc/e500.c
/openbmc/qemu/hw/ppc/mac_newworld.c
/openbmc/qemu/hw/ppc/mac_oldworld.c
/openbmc/qemu/hw/ppc/mpc8544_guts.c
/openbmc/qemu/hw/ppc/pnv.c
/openbmc/qemu/hw/ppc/pnv_bmc.c
/openbmc/qemu/hw/ppc/pnv_occ.c
/openbmc/qemu/hw/ppc/pnv_psi.c
/openbmc/qemu/hw/ppc/pnv_xscom.c
/openbmc/qemu/hw/ppc/ppc.c
/openbmc/qemu/hw/ppc/ppc405_boards.c
/openbmc/qemu/hw/ppc/ppc405_uc.c
/openbmc/qemu/hw/ppc/ppc440_bamboo.c
/openbmc/qemu/hw/ppc/ppc440_pcix.c
/openbmc/qemu/hw/ppc/ppc440_uc.c
/openbmc/qemu/hw/ppc/ppc4xx_devs.c
/openbmc/qemu/hw/ppc/ppc4xx_pci.c
/openbmc/qemu/hw/ppc/ppc_booke.c
/openbmc/qemu/hw/ppc/prep.c
/openbmc/qemu/hw/ppc/sam460ex.c
/openbmc/qemu/hw/ppc/spapr.c
/openbmc/qemu/hw/ppc/spapr_iommu.c
/openbmc/qemu/hw/ppc/spapr_pci.c
/openbmc/qemu/hw/ppc/spapr_vio.c
/openbmc/qemu/hw/ppc/virtex_ml507.c
/openbmc/qemu/hw/rdma/vmw/pvrdma_cmd.c
/openbmc/qemu/hw/rdma/vmw/pvrdma_main.c
/openbmc/qemu/hw/riscv/sifive_e.c
/openbmc/qemu/hw/riscv/sifive_prci.c
/openbmc/qemu/hw/riscv/sifive_test.c
/openbmc/qemu/hw/riscv/sifive_u.c
/openbmc/qemu/hw/riscv/sifive_uart.c
/openbmc/qemu/hw/riscv/spike.c
/openbmc/qemu/hw/riscv/virt.c
/openbmc/qemu/hw/s390x/virtio-ccw.c
/openbmc/qemu/hw/scsi/lsi53c895a.c
/openbmc/qemu/hw/scsi/megasas.c
/openbmc/qemu/hw/scsi/mptconfig.c
/openbmc/qemu/hw/scsi/mptendian.c
/openbmc/qemu/hw/scsi/mptsas.c
/openbmc/qemu/hw/scsi/scsi-bus.c
/openbmc/qemu/hw/scsi/spapr_vscsi.c
/openbmc/qemu/hw/sd/milkymist-memcard.c
/openbmc/qemu/hw/sd/omap_mmc.c
/openbmc/qemu/hw/sd/pxa2xx_mmci.c
/openbmc/qemu/hw/sd/sd.c
/openbmc/qemu/hw/sd/sdhci-pci.c
/openbmc/qemu/hw/sd/sdhci.c
/openbmc/qemu/hw/sh4/r2d.c
/openbmc/qemu/hw/sh4/sh7750.c
/openbmc/qemu/hw/sh4/sh7750_regnames.c
/openbmc/qemu/hw/sh4/shix.c
/openbmc/qemu/hw/sparc/leon3.c
/openbmc/qemu/hw/sparc64/niagara.c
/openbmc/qemu/hw/sparc64/sun4u.c
/openbmc/qemu/hw/timer/a9gtimer.c
/openbmc/qemu/hw/timer/arm_mptimer.c
/openbmc/qemu/hw/timer/exynos4210_mct.c
/openbmc/qemu/hw/timer/exynos4210_rtc.c
/openbmc/qemu/hw/timer/hpet.c
/openbmc/qemu/hw/timer/i8254.c
/openbmc/qemu/hw/timer/i8254_common.c
/openbmc/qemu/hw/timer/lm32_timer.c
/openbmc/qemu/hw/timer/m48t59.c
/openbmc/qemu/hw/timer/mc146818rtc.c
/openbmc/qemu/hw/timer/milkymist-sysctl.c
/openbmc/qemu/hw/timer/mips_gictimer.c
/openbmc/qemu/hw/timer/omap_gptimer.c
/openbmc/qemu/hw/timer/omap_synctimer.c
/openbmc/qemu/hw/timer/pxa2xx_timer.c
/openbmc/qemu/hw/timer/sun4v-rtc.c
/openbmc/qemu/hw/timer/twl92230.c
/openbmc/qemu/hw/tpm/tpm_emulator.c
/openbmc/qemu/hw/tpm/tpm_passthrough.c
/openbmc/qemu/hw/tricore/tricore_testboard.c
/openbmc/qemu/hw/usb/bus.c
/openbmc/qemu/hw/usb/dev-audio.c
/openbmc/qemu/hw/usb/dev-hid.c
/openbmc/qemu/hw/usb/dev-wacom.c
/openbmc/qemu/hw/usb/hcd-ehci.h
/openbmc/qemu/hw/usb/hcd-ohci-pci.c
/openbmc/qemu/hw/usb/hcd-ohci.c
/openbmc/qemu/hw/usb/hcd-uhci.c
/openbmc/qemu/hw/usb/hcd-xhci-nec.c
/openbmc/qemu/hw/usb/hcd-xhci.c
/openbmc/qemu/hw/usb/libhw.c
/openbmc/qemu/hw/usb/tusb6010.c
/openbmc/qemu/hw/vfio/pci-quirks.c
/openbmc/qemu/hw/vfio/pci.c
/openbmc/qemu/hw/virtio/vhost.c
/openbmc/qemu/hw/virtio/virtio-bus.c
/openbmc/qemu/hw/watchdog/wdt_i6300esb.c
/openbmc/qemu/hw/watchdog/wdt_ib700.c
/openbmc/qemu/hw/xen/xen-bus-helper.c
/openbmc/qemu/hw/xen/xen-bus.c
/openbmc/qemu/hw/xen/xen-legacy-backend.c
/openbmc/qemu/hw/xen/xen_pt_load_rom.c
/openbmc/qemu/hw/xenpv/xen_machine_pv.c
/openbmc/qemu/hw/xtensa/mx_pic.c
/openbmc/qemu/hw/xtensa/pic_cpu.c
/openbmc/qemu/hw/xtensa/xtensa_memory.h
/openbmc/qemu/include/hw/arm/boot.h
/openbmc/qemu/include/hw/arm/fsl-imx7.h
/openbmc/qemu/include/hw/arm/soc_dma.h
/openbmc/qemu/include/hw/audio/pcspk.h
/openbmc/qemu/include/hw/audio/wm8750.h
/openbmc/qemu/include/hw/block/flash.h
/openbmc/qemu/include/hw/boards.h
/openbmc/qemu/include/hw/char/parallel.h
/openbmc/qemu/include/hw/char/serial.h
/openbmc/qemu/include/hw/char/stm32f2xx_usart.h
/openbmc/qemu/include/hw/display/edid.h
/openbmc/qemu/include/hw/display/milkymist_tmu2.h
/openbmc/qemu/include/hw/display/tc6393xb.h
/openbmc/qemu/include/hw/display/vga.h
/openbmc/qemu/include/hw/dma/i8257.h
/openbmc/qemu/include/hw/hw.h
/openbmc/qemu/include/hw/i2c/pm_smbus.h
/openbmc/qemu/include/hw/i2c/smbus_eeprom.h
/openbmc/qemu/include/hw/i386/ich9.h
/openbmc/qemu/include/hw/i386/ioapic_internal.h
/openbmc/qemu/include/hw/input/i8042.h
/openbmc/qemu/include/hw/isa/apm.h
/openbmc/qemu/include/hw/isa/i8259_internal.h
/openbmc/qemu/include/hw/misc/auxbus.h
/openbmc/qemu/include/hw/misc/stm32f2xx_syscfg.h
/openbmc/qemu/include/hw/net/ne2000-isa.h
/openbmc/qemu/include/hw/pci-host/designware.h
/openbmc/qemu/include/hw/pci-host/gpex.h
/openbmc/qemu/include/hw/pci-host/q35.h
/openbmc/qemu/include/hw/pci-host/uninorth.h
/openbmc/qemu/include/hw/pci-host/xilinx-pcie.h
/openbmc/qemu/include/hw/pci/pcie.h
/openbmc/qemu/include/hw/pci/pcie_aer.h
/openbmc/qemu/include/hw/ppc/xics.h
/openbmc/qemu/include/hw/qdev.h
/openbmc/qemu/include/hw/riscv/riscv_htif.h
/openbmc/qemu/include/hw/ssi/stm32f2xx_spi.h
/openbmc/qemu/include/hw/timer/aspeed_rtc.h
/openbmc/qemu/include/hw/timer/i8254.h
/openbmc/qemu/include/hw/timer/i8254_internal.h
/openbmc/qemu/include/hw/usb.h
/openbmc/qemu/include/hw/virtio/vhost.h
/openbmc/qemu/include/hw/virtio/virtio.h
/openbmc/qemu/include/hw/xen/xen_common.h
/openbmc/qemu/include/sysemu/dma.h
/openbmc/qemu/include/sysemu/hax.h
/openbmc/qemu/include/sysemu/hvf.h
/openbmc/qemu/migration/colo.c
/openbmc/qemu/migration/migration.h
/openbmc/qemu/migration/postcopy-ram.c
/openbmc/qemu/migration/rdma.c
/openbmc/qemu/monitor/misc.c
/openbmc/qemu/target/alpha/machine.c
/openbmc/qemu/target/arm/machine.c
/openbmc/qemu/target/cris/machine.c
/openbmc/qemu/target/hppa/machine.c
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/i386/machine.c
/openbmc/qemu/target/lm32/machine.c
/openbmc/qemu/target/mips/machine.c
/openbmc/qemu/target/moxie/machine.c
/openbmc/qemu/target/openrisc/machine.c
/openbmc/qemu/target/ppc/kvm.c
/openbmc/qemu/target/ppc/machine.c
/openbmc/qemu/target/s390x/cpu.c
/openbmc/qemu/target/s390x/kvm.c
/openbmc/qemu/target/s390x/machine.c
/openbmc/qemu/target/s390x/mmu_helper.c
/openbmc/qemu/target/sparc/machine.c
/openbmc/qemu/ui/spice-core.c
/openbmc/qemu/vl.c
d645427012-Aug-2019 Markus Armbruster <armbru@redhat.com>

Include migration/vmstate.h less

In my "build everything" tree, changing migration/vmstate.h triggers a
recompile of some 2700 out of 6600 objects (not counting tests and
objects that don't depend o

Include migration/vmstate.h less

In my "build everything" tree, changing migration/vmstate.h triggers a
recompile of some 2700 out of 6600 objects (not counting tests and
objects that don't depend on qemu/osdep.h).

hw/hw.h supposedly includes it for convenience. Several other headers
include it just to get VMStateDescription. The previous commit made
that unnecessary.

Include migration/vmstate.h only where it's still needed. Touching it
now recompiles only some 1600 objects.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20190812052359.30071-16-armbru@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>

show more ...


/openbmc/qemu/accel/stubs/tcg-stub.c
/openbmc/qemu/audio/audio.c
/openbmc/qemu/balloon.c
/openbmc/qemu/cpus.c
/openbmc/qemu/hw/acpi/cpu.c
/openbmc/qemu/hw/acpi/ich9.c
/openbmc/qemu/hw/acpi/memory_hotplug.c
/openbmc/qemu/hw/acpi/pcihp.c
/openbmc/qemu/hw/acpi/piix4.c
/openbmc/qemu/hw/acpi/tco.c
/openbmc/qemu/hw/acpi/vmgenid.c
/openbmc/qemu/hw/adc/stm32f2xx_adc.c
/openbmc/qemu/hw/arm/armsse.c
/openbmc/qemu/hw/arm/highbank.c
/openbmc/qemu/hw/arm/integratorcp.c
/openbmc/qemu/hw/arm/musicpal.c
/openbmc/qemu/hw/arm/pxa2xx.c
/openbmc/qemu/hw/arm/pxa2xx_gpio.c
/openbmc/qemu/hw/arm/pxa2xx_pic.c
/openbmc/qemu/hw/arm/smmuv3.c
/openbmc/qemu/hw/arm/spitz.c
/openbmc/qemu/hw/arm/stellaris.c
/openbmc/qemu/hw/arm/strongarm.c
/openbmc/qemu/hw/arm/versatilepb.c
/openbmc/qemu/hw/arm/virt-acpi-build.c
/openbmc/qemu/hw/arm/z2.c
/openbmc/qemu/hw/audio/ac97.c
/openbmc/qemu/hw/audio/cs4231.c
/openbmc/qemu/hw/audio/cs4231a.c
/openbmc/qemu/hw/audio/es1370.c
/openbmc/qemu/hw/audio/gus.c
/openbmc/qemu/hw/audio/hda-codec.c
/openbmc/qemu/hw/audio/intel-hda.c
/openbmc/qemu/hw/audio/lm4549.c
/openbmc/qemu/hw/audio/marvell_88w8618.c
/openbmc/qemu/hw/audio/milkymist-ac97.c
/openbmc/qemu/hw/audio/pcspk.c
/openbmc/qemu/hw/audio/pl041.c
/openbmc/qemu/hw/audio/sb16.c
/openbmc/qemu/hw/audio/wm8750.c
/openbmc/qemu/hw/block/ecc.c
/openbmc/qemu/hw/block/fdc.c
/openbmc/qemu/hw/block/m25p80.c
/openbmc/qemu/hw/block/nand.c
/openbmc/qemu/hw/block/nvme.c
/openbmc/qemu/hw/block/onenand.c
/openbmc/qemu/hw/block/pflash_cfi01.c
/openbmc/qemu/hw/block/pflash_cfi02.c
/openbmc/qemu/hw/char/bcm2835_aux.c
/openbmc/qemu/hw/char/cadence_uart.c
/openbmc/qemu/hw/char/cmsdk-apb-uart.c
/openbmc/qemu/hw/char/digic-uart.c
/openbmc/qemu/hw/char/escc.c
/openbmc/qemu/hw/char/exynos4210_uart.c
/openbmc/qemu/hw/char/imx_serial.c
/openbmc/qemu/hw/char/ipoctal232.c
/openbmc/qemu/hw/char/lm32_juart.c
/openbmc/qemu/hw/char/lm32_uart.c
/openbmc/qemu/hw/char/milkymist-uart.c
/openbmc/qemu/hw/char/nrf51_uart.c
/openbmc/qemu/hw/char/parallel.c
/openbmc/qemu/hw/char/pl011.c
/openbmc/qemu/hw/char/sclpconsole-lm.c
/openbmc/qemu/hw/char/sclpconsole.c
/openbmc/qemu/hw/char/serial-isa.c
/openbmc/qemu/hw/char/serial-pci-multi.c
/openbmc/qemu/hw/char/serial-pci.c
/openbmc/qemu/hw/char/serial.c
/openbmc/qemu/hw/char/spapr_vty.c
loader.c
numa.c
or-irq.c
ptimer.c
qdev.c
/openbmc/qemu/hw/display/ads7846.c
/openbmc/qemu/hw/display/bcm2835_fb.c
/openbmc/qemu/hw/display/bochs-display.c
/openbmc/qemu/hw/display/cg3.c
/openbmc/qemu/hw/display/cirrus_vga.c
/openbmc/qemu/hw/display/dpcd.c
/openbmc/qemu/hw/display/exynos4210_fimd.c
/openbmc/qemu/hw/display/g364fb.c
/openbmc/qemu/hw/display/i2c-ddc.c
/openbmc/qemu/hw/display/jazz_led.c
/openbmc/qemu/hw/display/milkymist-tmu2.c
/openbmc/qemu/hw/display/milkymist-vgafb.c
/openbmc/qemu/hw/display/pl110.c
/openbmc/qemu/hw/display/pxa2xx_lcd.c
/openbmc/qemu/hw/display/qxl.c
/openbmc/qemu/hw/display/sii9022.c
/openbmc/qemu/hw/display/sm501.c
/openbmc/qemu/hw/display/ssd0303.c
/openbmc/qemu/hw/display/ssd0323.c
/openbmc/qemu/hw/display/tcx.c
/openbmc/qemu/hw/display/vga-isa-mm.c
/openbmc/qemu/hw/display/vga-pci.c
/openbmc/qemu/hw/display/vga.c
/openbmc/qemu/hw/display/vmware_vga.c
/openbmc/qemu/hw/display/xlnx_dp.c
/openbmc/qemu/hw/dma/bcm2835_dma.c
/openbmc/qemu/hw/dma/i82374.c
/openbmc/qemu/hw/dma/i8257.c
/openbmc/qemu/hw/dma/pl080.c
/openbmc/qemu/hw/dma/pl330.c
/openbmc/qemu/hw/dma/pxa2xx_dma.c
/openbmc/qemu/hw/dma/rc4030.c
/openbmc/qemu/hw/dma/sparc32_dma.c
/openbmc/qemu/hw/dma/xlnx-zdma.c
/openbmc/qemu/hw/dma/xlnx-zynq-devcfg.c
/openbmc/qemu/hw/dma/xlnx_dpdma.c
/openbmc/qemu/hw/gpio/bcm2835_gpio.c
/openbmc/qemu/hw/gpio/gpio_key.c
/openbmc/qemu/hw/gpio/imx_gpio.c
/openbmc/qemu/hw/gpio/max7310.c
/openbmc/qemu/hw/gpio/mpc8xxx.c
/openbmc/qemu/hw/gpio/nrf51_gpio.c
/openbmc/qemu/hw/gpio/pl061.c
/openbmc/qemu/hw/gpio/zaurus.c
/openbmc/qemu/hw/hppa/dino.c
/openbmc/qemu/hw/i2c/aspeed_i2c.c
/openbmc/qemu/hw/i2c/core.c
/openbmc/qemu/hw/i2c/exynos4210_i2c.c
/openbmc/qemu/hw/i2c/imx_i2c.c
/openbmc/qemu/hw/i2c/microbit_i2c.c
/openbmc/qemu/hw/i2c/mpc_i2c.c
/openbmc/qemu/hw/i2c/pm_smbus.c
/openbmc/qemu/hw/i2c/smbus_eeprom.c
/openbmc/qemu/hw/i2c/smbus_ich9.c
/openbmc/qemu/hw/i2c/smbus_slave.c
/openbmc/qemu/hw/i386/acpi-build.c
/openbmc/qemu/hw/i386/amd_iommu.c
/openbmc/qemu/hw/i386/intel_iommu.c
/openbmc/qemu/hw/i386/kvm/clock.c
/openbmc/qemu/hw/i386/kvmvapic.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/i386/vmmouse.c
/openbmc/qemu/hw/i386/xen/xen_platform.c
/openbmc/qemu/hw/i386/xen/xen_pvdevice.c
/openbmc/qemu/hw/ide/ahci-allwinner.c
/openbmc/qemu/hw/ide/ahci.c
/openbmc/qemu/hw/ide/cmd646.c
/openbmc/qemu/hw/ide/core.c
/openbmc/qemu/hw/ide/ich.c
/openbmc/qemu/hw/ide/isa.c
/openbmc/qemu/hw/ide/macio.c
/openbmc/qemu/hw/ide/microdrive.c
/openbmc/qemu/hw/ide/mmio.c
/openbmc/qemu/hw/ide/pci.c
/openbmc/qemu/hw/ide/piix.c
/openbmc/qemu/hw/ide/via.c
/openbmc/qemu/hw/input/adb-kbd.c
/openbmc/qemu/hw/input/adb-mouse.c
/openbmc/qemu/hw/input/adb.c
/openbmc/qemu/hw/input/hid.c
/openbmc/qemu/hw/input/lm832x.c
/openbmc/qemu/hw/input/milkymist-softusb.c
/openbmc/qemu/hw/input/pckbd.c
/openbmc/qemu/hw/input/pl050.c
/openbmc/qemu/hw/input/ps2.c
/openbmc/qemu/hw/input/pxa2xx_keypad.c
/openbmc/qemu/hw/input/stellaris_input.c
/openbmc/qemu/hw/input/tsc2005.c
/openbmc/qemu/hw/input/tsc210x.c
/openbmc/qemu/hw/intc/allwinner-a10-pic.c
/openbmc/qemu/hw/intc/apic_common.c
/openbmc/qemu/hw/intc/arm_gic_common.c
/openbmc/qemu/hw/intc/arm_gicv3_common.c
/openbmc/qemu/hw/intc/arm_gicv3_its_common.c
/openbmc/qemu/hw/intc/armv7m_nvic.c
/openbmc/qemu/hw/intc/aspeed_vic.c
/openbmc/qemu/hw/intc/bcm2835_ic.c
/openbmc/qemu/hw/intc/bcm2836_control.c
/openbmc/qemu/hw/intc/exynos4210_combiner.c
/openbmc/qemu/hw/intc/exynos4210_gic.c
/openbmc/qemu/hw/intc/heathrow_pic.c
/openbmc/qemu/hw/intc/i8259_common.c
/openbmc/qemu/hw/intc/imx_avic.c
/openbmc/qemu/hw/intc/imx_gpcv2.c
/openbmc/qemu/hw/intc/ioapic_common.c
/openbmc/qemu/hw/intc/lm32_pic.c
/openbmc/qemu/hw/intc/ompic.c
/openbmc/qemu/hw/intc/openpic.c
/openbmc/qemu/hw/intc/pl190.c
/openbmc/qemu/hw/intc/slavio_intctl.c
/openbmc/qemu/hw/intc/spapr_xive.c
/openbmc/qemu/hw/intc/xics.c
/openbmc/qemu/hw/intc/xive.c
/openbmc/qemu/hw/intc/xlnx-pmu-iomod-intc.c
/openbmc/qemu/hw/intc/xlnx-zynqmp-ipi.c
/openbmc/qemu/hw/ipack/ipack.c
/openbmc/qemu/hw/ipack/tpci200.c
/openbmc/qemu/hw/ipmi/ipmi_bmc_extern.c
/openbmc/qemu/hw/ipmi/ipmi_bmc_sim.c
/openbmc/qemu/hw/ipmi/isa_ipmi_bt.c
/openbmc/qemu/hw/ipmi/isa_ipmi_kcs.c
/openbmc/qemu/hw/isa/apm.c
/openbmc/qemu/hw/isa/i82378.c
/openbmc/qemu/hw/isa/lpc_ich9.c
/openbmc/qemu/hw/isa/pc87312.c
/openbmc/qemu/hw/isa/piix4.c
/openbmc/qemu/hw/isa/vt82c686.c
/openbmc/qemu/hw/mem/pc-dimm.c
/openbmc/qemu/hw/mips/gt64xxx_pci.c
/openbmc/qemu/hw/misc/a9scu.c
/openbmc/qemu/hw/misc/arm_l2x0.c
/openbmc/qemu/hw/misc/arm_sysctl.c
/openbmc/qemu/hw/misc/armsse-mhu.c
/openbmc/qemu/hw/misc/aspeed_scu.c
/openbmc/qemu/hw/misc/aspeed_sdmc.c
/openbmc/qemu/hw/misc/aspeed_xdma.c
/openbmc/qemu/hw/misc/bcm2835_mbox.c
/openbmc/qemu/hw/misc/bcm2835_property.c
/openbmc/qemu/hw/misc/bcm2835_rng.c
/openbmc/qemu/hw/misc/eccmemctl.c
/openbmc/qemu/hw/misc/exynos4210_clk.c
/openbmc/qemu/hw/misc/exynos4210_pmu.c
/openbmc/qemu/hw/misc/exynos4210_rng.c
/openbmc/qemu/hw/misc/imx25_ccm.c
/openbmc/qemu/hw/misc/imx31_ccm.c
/openbmc/qemu/hw/misc/imx6_ccm.c
/openbmc/qemu/hw/misc/imx6_src.c
/openbmc/qemu/hw/misc/imx6ul_ccm.c
/openbmc/qemu/hw/misc/imx7_ccm.c
/openbmc/qemu/hw/misc/iotkit-secctl.c
/openbmc/qemu/hw/misc/iotkit-sysctl.c
/openbmc/qemu/hw/misc/ivshmem.c
/openbmc/qemu/hw/misc/macio/cuda.c
/openbmc/qemu/hw/misc/macio/gpio.c
/openbmc/qemu/hw/misc/macio/mac_dbdma.c
/openbmc/qemu/hw/misc/macio/macio.c
/openbmc/qemu/hw/misc/macio/pmu.c
/openbmc/qemu/hw/misc/max111x.c
/openbmc/qemu/hw/misc/milkymist-hpdmc.c
/openbmc/qemu/hw/misc/milkymist-pfpu.c
/openbmc/qemu/hw/misc/mips_cmgcr.c
/openbmc/qemu/hw/misc/mips_cpc.c
/openbmc/qemu/hw/misc/mos6522.c
/openbmc/qemu/hw/misc/mps2-fpgaio.c
/openbmc/qemu/hw/misc/mps2-scc.c
/openbmc/qemu/hw/misc/msf2-sysreg.c
/openbmc/qemu/hw/misc/mst_fpga.c
/openbmc/qemu/hw/misc/nrf51_rng.c
/openbmc/qemu/hw/misc/pca9552.c
/openbmc/qemu/hw/misc/slavio_misc.c
/openbmc/qemu/hw/misc/tmp105.c
/openbmc/qemu/hw/misc/tmp421.c
/openbmc/qemu/hw/misc/tz-mpc.c
/openbmc/qemu/hw/misc/tz-msc.c
/openbmc/qemu/hw/misc/tz-ppc.c
/openbmc/qemu/hw/misc/vmcoreinfo.c
/openbmc/qemu/hw/misc/zynq-xadc.c
/openbmc/qemu/hw/misc/zynq_slcr.c
/openbmc/qemu/hw/net/allwinner_emac.c
/openbmc/qemu/hw/net/cadence_gem.c
/openbmc/qemu/hw/net/can/can_kvaser_pci.c
/openbmc/qemu/hw/net/can/can_mioe3680_pci.c
/openbmc/qemu/hw/net/can/can_pcm3680_pci.c
/openbmc/qemu/hw/net/can/can_sja1000.c
/openbmc/qemu/hw/net/dp8393x.c
/openbmc/qemu/hw/net/e1000.c
/openbmc/qemu/hw/net/e1000e.c
/openbmc/qemu/hw/net/eepro100.c
/openbmc/qemu/hw/net/ftgmac100.c
/openbmc/qemu/hw/net/imx_fec.c
/openbmc/qemu/hw/net/lan9118.c
/openbmc/qemu/hw/net/lance.c
/openbmc/qemu/hw/net/milkymist-minimac2.c
/openbmc/qemu/hw/net/mipsnet.c
/openbmc/qemu/hw/net/ne2000-isa.c
/openbmc/qemu/hw/net/ne2000-pci.c
/openbmc/qemu/hw/net/ne2000.c
/openbmc/qemu/hw/net/pcnet-pci.c
/openbmc/qemu/hw/net/pcnet.c
/openbmc/qemu/hw/net/rocker/rocker.c
/openbmc/qemu/hw/net/rtl8139.c
/openbmc/qemu/hw/net/smc91c111.c
/openbmc/qemu/hw/net/spapr_llan.c
/openbmc/qemu/hw/net/stellaris_enet.c
/openbmc/qemu/hw/net/sungem.c
/openbmc/qemu/hw/net/sunhme.c
/openbmc/qemu/hw/net/vmxnet3.c
/openbmc/qemu/hw/net/xgmac.c
/openbmc/qemu/hw/nvram/ds1225y.c
/openbmc/qemu/hw/nvram/eeprom93xx.c
/openbmc/qemu/hw/nvram/fw_cfg.c
/openbmc/qemu/hw/nvram/mac_nvram.c
/openbmc/qemu/hw/nvram/nrf51_nvm.c
/openbmc/qemu/hw/nvram/spapr_nvram.c
/openbmc/qemu/hw/openrisc/cputimer.c
/openbmc/qemu/hw/pci-bridge/gen_pcie_root_port.c
/openbmc/qemu/hw/pci-bridge/i82801b11.c
/openbmc/qemu/hw/pci-bridge/ioh3420.c
/openbmc/qemu/hw/pci-bridge/xio3130_downstream.c
/openbmc/qemu/hw/pci-bridge/xio3130_upstream.c
/openbmc/qemu/hw/pci-host/bonito.c
/openbmc/qemu/hw/pci-host/designware.c
/openbmc/qemu/hw/pci-host/gpex.c
/openbmc/qemu/hw/pci-host/piix.c
/openbmc/qemu/hw/pci-host/ppce500.c
/openbmc/qemu/hw/pci-host/prep.c
/openbmc/qemu/hw/pci-host/q35.c
/openbmc/qemu/hw/pci-host/versatile.c
/openbmc/qemu/hw/pci/msix.c
/openbmc/qemu/hw/pci/pci.c
/openbmc/qemu/hw/pci/pcie_aer.c
/openbmc/qemu/hw/ppc/ppc.c
/openbmc/qemu/hw/ppc/ppc4xx_pci.c
/openbmc/qemu/hw/ppc/prep_systemio.c
/openbmc/qemu/hw/ppc/rs6000_mc.c
/openbmc/qemu/hw/ppc/spapr_caps.c
/openbmc/qemu/hw/ppc/spapr_cpu_core.c
/openbmc/qemu/hw/ppc/spapr_drc.c
/openbmc/qemu/hw/ppc/spapr_iommu.c
/openbmc/qemu/hw/ppc/spapr_ovec.c
/openbmc/qemu/hw/ppc/spapr_pci.c
/openbmc/qemu/hw/ppc/spapr_rtc.c
/openbmc/qemu/hw/ppc/spapr_vio.c
/openbmc/qemu/hw/riscv/sifive_gpio.c
/openbmc/qemu/hw/s390x/event-facility.c
/openbmc/qemu/hw/s390x/sclpquiesce.c
/openbmc/qemu/hw/scsi/esp-pci.c
/openbmc/qemu/hw/scsi/esp.c
/openbmc/qemu/hw/scsi/lsi53c895a.c
/openbmc/qemu/hw/scsi/megasas.c
/openbmc/qemu/hw/scsi/mptsas.c
/openbmc/qemu/hw/scsi/scsi-bus.c
/openbmc/qemu/hw/scsi/scsi-disk.c
/openbmc/qemu/hw/scsi/spapr_vscsi.c
/openbmc/qemu/hw/scsi/vmw_pvscsi.c
/openbmc/qemu/hw/sd/bcm2835_sdhost.c
/openbmc/qemu/hw/sd/milkymist-memcard.c
/openbmc/qemu/hw/sd/pl181.c
/openbmc/qemu/hw/sd/pxa2xx_mmci.c
/openbmc/qemu/hw/sd/sd.c
/openbmc/qemu/hw/sd/sdhci.c
/openbmc/qemu/hw/sd/ssi-sd.c
/openbmc/qemu/hw/smbios/smbios.c
/openbmc/qemu/hw/sparc/sun4m.c
/openbmc/qemu/hw/sparc/sun4m_iommu.c
/openbmc/qemu/hw/sparc64/sun4u.c
/openbmc/qemu/hw/ssi/aspeed_smc.c
/openbmc/qemu/hw/ssi/imx_spi.c
/openbmc/qemu/hw/ssi/mss-spi.c
/openbmc/qemu/hw/ssi/pl022.c
/openbmc/qemu/hw/ssi/ssi.c
/openbmc/qemu/hw/ssi/stm32f2xx_spi.c
/openbmc/qemu/hw/ssi/xilinx_spi.c
/openbmc/qemu/hw/ssi/xilinx_spips.c
/openbmc/qemu/hw/timer/a9gtimer.c
/openbmc/qemu/hw/timer/allwinner-a10-pit.c
/openbmc/qemu/hw/timer/arm_mptimer.c
/openbmc/qemu/hw/timer/arm_timer.c
/openbmc/qemu/hw/timer/armv7m_systick.c
/openbmc/qemu/hw/timer/aspeed_rtc.c
/openbmc/qemu/hw/timer/aspeed_timer.c
/openbmc/qemu/hw/timer/cadence_ttc.c
/openbmc/qemu/hw/timer/cmsdk-apb-dualtimer.c
/openbmc/qemu/hw/timer/cmsdk-apb-timer.c
/openbmc/qemu/hw/timer/digic-timer.c
/openbmc/qemu/hw/timer/ds1338.c
/openbmc/qemu/hw/timer/exynos4210_mct.c
/openbmc/qemu/hw/timer/exynos4210_pwm.c
/openbmc/qemu/hw/timer/exynos4210_rtc.c
/openbmc/qemu/hw/timer/hpet.c
/openbmc/qemu/hw/timer/i8254_common.c
/openbmc/qemu/hw/timer/imx_epit.c
/openbmc/qemu/hw/timer/imx_gpt.c
/openbmc/qemu/hw/timer/lm32_timer.c
/openbmc/qemu/hw/timer/m48t59.c
/openbmc/qemu/hw/timer/mc146818rtc.c
/openbmc/qemu/hw/timer/milkymist-sysctl.c
/openbmc/qemu/hw/timer/mss-timer.c
/openbmc/qemu/hw/timer/nrf51_timer.c
/openbmc/qemu/hw/timer/pl031.c
/openbmc/qemu/hw/timer/pxa2xx_timer.c
/openbmc/qemu/hw/timer/slavio_timer.c
/openbmc/qemu/hw/timer/stm32f2xx_timer.c
/openbmc/qemu/hw/timer/twl92230.c
/openbmc/qemu/hw/timer/xlnx-zynqmp-rtc.c
/openbmc/qemu/hw/tpm/tpm_emulator.c
/openbmc/qemu/hw/tpm/tpm_tis.c
/openbmc/qemu/hw/usb/bus.c
/openbmc/qemu/hw/usb/ccid-card-passthru.c
/openbmc/qemu/hw/usb/dev-audio.c
/openbmc/qemu/hw/usb/dev-bluetooth.c
/openbmc/qemu/hw/usb/dev-hid.c
/openbmc/qemu/hw/usb/dev-hub.c
/openbmc/qemu/hw/usb/dev-mtp.c
/openbmc/qemu/hw/usb/dev-network.c
/openbmc/qemu/hw/usb/dev-serial.c
/openbmc/qemu/hw/usb/dev-smartcard-reader.c
/openbmc/qemu/hw/usb/dev-storage.c
/openbmc/qemu/hw/usb/dev-uas.c
/openbmc/qemu/hw/usb/dev-wacom.c
/openbmc/qemu/hw/usb/hcd-ehci-pci.c
/openbmc/qemu/hw/usb/hcd-ehci-sysbus.c
/openbmc/qemu/hw/usb/hcd-ehci.c
/openbmc/qemu/hw/usb/hcd-ohci-pci.c
/openbmc/qemu/hw/usb/hcd-ohci.c
/openbmc/qemu/hw/usb/hcd-uhci.c
/openbmc/qemu/hw/usb/hcd-xhci.c
/openbmc/qemu/hw/usb/host-libusb.c
/openbmc/qemu/hw/usb/redirect.c
/openbmc/qemu/hw/vfio/amd-xgbe.c
/openbmc/qemu/hw/vfio/ap.c
/openbmc/qemu/hw/vfio/calxeda-xgmac.c
/openbmc/qemu/hw/vfio/pci.c
/openbmc/qemu/hw/vfio/platform.c
/openbmc/qemu/hw/watchdog/cmsdk-apb-watchdog.c
/openbmc/qemu/hw/watchdog/wdt_aspeed.c
/openbmc/qemu/hw/watchdog/wdt_diag288.c
/openbmc/qemu/hw/watchdog/wdt_i6300esb.c
/openbmc/qemu/hw/watchdog/wdt_ib700.c
/openbmc/qemu/hw/xtensa/xtfpga.c
/openbmc/qemu/include/hw/acpi/tco.h
/openbmc/qemu/include/hw/block/flash.h
/openbmc/qemu/include/hw/hw.h
/openbmc/qemu/include/hw/input/hid.h
/openbmc/qemu/include/hw/pci/shpc.h
/openbmc/qemu/include/hw/ppc/ppc4xx.h
/openbmc/qemu/include/hw/ppc/spapr_ovec.h
/openbmc/qemu/include/hw/ptimer.h
/openbmc/qemu/include/hw/qdev-core.h
/openbmc/qemu/include/hw/virtio/virtio.h
/openbmc/qemu/include/migration/cpu.h
/openbmc/qemu/include/migration/misc.h
/openbmc/qemu/include/migration/vmstate.h
/openbmc/qemu/include/net/net.h
/openbmc/qemu/include/qemu/fifo8.h
/openbmc/qemu/include/qemu/typedefs.h
/openbmc/qemu/include/qom/cpu.h
/openbmc/qemu/include/sysemu/kvm_int.h
/openbmc/qemu/include/sysemu/memory_mapping.h
/openbmc/qemu/migration/migration.h
/openbmc/qemu/migration/qemu-file-channel.c
/openbmc/qemu/migration/qemu-file.h
/openbmc/qemu/migration/savevm.c
/openbmc/qemu/migration/vmstate-types.c
/openbmc/qemu/qom/cpu.c
/openbmc/qemu/target/alpha/cpu.h
/openbmc/qemu/target/arm/cpu.h
/openbmc/qemu/target/cris/cpu.h
/openbmc/qemu/target/hppa/cpu.h
/openbmc/qemu/target/i386/cpu.h
/openbmc/qemu/target/lm32/cpu.h
/openbmc/qemu/target/mips/internal.h
/openbmc/qemu/target/openrisc/cpu.h
/openbmc/qemu/target/ppc/cpu-qom.h
/openbmc/qemu/target/ppc/cpu.h
/openbmc/qemu/target/s390x/cpu.h
/openbmc/qemu/target/s390x/machine.c
/openbmc/qemu/target/sparc/cpu.h
/openbmc/qemu/tcg/optimize.c
/openbmc/qemu/tcg/tcg-common.c
/openbmc/qemu/tcg/tcg.c
/openbmc/qemu/util/fifo8.c
64552b6b12-Aug-2019 Markus Armbruster <armbru@redhat.com>

Include hw/irq.h a lot less

In my "build everything" tree, changing hw/irq.h triggers a recompile
of some 5400 out of 6600 objects (not counting tests and objects that
don't depend on qemu/osdep.h).

Include hw/irq.h a lot less

In my "build everything" tree, changing hw/irq.h triggers a recompile
of some 5400 out of 6600 objects (not counting tests and objects that
don't depend on qemu/osdep.h).

hw/hw.h supposedly includes it for convenience. Several other headers
include it just to get qemu_irq and.or qemu_irq_handler.

Move the qemu_irq and qemu_irq_handler typedefs from hw/irq.h to
qemu/typedefs.h, and then include hw/irq.h only where it's still
needed. Touching it now recompiles only some 500 objects.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20190812052359.30071-13-armbru@redhat.com>

show more ...


/openbmc/qemu/hw/acpi/core.c
/openbmc/qemu/hw/acpi/piix4.c
/openbmc/qemu/hw/alpha/alpha_sys.h
/openbmc/qemu/hw/alpha/typhoon.c
/openbmc/qemu/hw/arm/allwinner-a10.c
/openbmc/qemu/hw/arm/armsse.c
/openbmc/qemu/hw/arm/cubieboard.c
/openbmc/qemu/hw/arm/exynos4210.c
/openbmc/qemu/hw/arm/exynos4_boards.c
/openbmc/qemu/hw/arm/integratorcp.c
/openbmc/qemu/hw/arm/msf2-soc.c
/openbmc/qemu/hw/arm/musicpal.c
/openbmc/qemu/hw/arm/omap1.c
/openbmc/qemu/hw/arm/omap2.c
/openbmc/qemu/hw/arm/palm.c
/openbmc/qemu/hw/arm/pxa2xx.c
/openbmc/qemu/hw/arm/pxa2xx_gpio.c
/openbmc/qemu/hw/arm/realview.c
/openbmc/qemu/hw/arm/smmuv3.c
/openbmc/qemu/hw/arm/spitz.c
/openbmc/qemu/hw/arm/stellaris.c
/openbmc/qemu/hw/arm/strongarm.c
/openbmc/qemu/hw/arm/tosa.c
/openbmc/qemu/hw/arm/versatilepb.c
/openbmc/qemu/hw/arm/virt.c
/openbmc/qemu/hw/arm/xlnx-zynqmp.c
/openbmc/qemu/hw/arm/z2.c
/openbmc/qemu/hw/audio/cs4231a.c
/openbmc/qemu/hw/audio/gus.c
/openbmc/qemu/hw/audio/marvell_88w8618.c
/openbmc/qemu/hw/audio/milkymist-ac97.c
/openbmc/qemu/hw/audio/pl041.c
/openbmc/qemu/hw/audio/sb16.c
/openbmc/qemu/hw/block/fdc.c
/openbmc/qemu/hw/block/virtio-blk.c
/openbmc/qemu/hw/char/bcm2835_aux.c
/openbmc/qemu/hw/char/cadence_uart.c
/openbmc/qemu/hw/char/cmsdk-apb-uart.c
/openbmc/qemu/hw/char/escc.c
/openbmc/qemu/hw/char/etraxfs_ser.c
/openbmc/qemu/hw/char/exynos4210_uart.c
/openbmc/qemu/hw/char/grlib_apbuart.c
/openbmc/qemu/hw/char/imx_serial.c
/openbmc/qemu/hw/char/ipoctal232.c
/openbmc/qemu/hw/char/lm32_uart.c
/openbmc/qemu/hw/char/mcf_uart.c
/openbmc/qemu/hw/char/milkymist-uart.c
/openbmc/qemu/hw/char/nrf51_uart.c
/openbmc/qemu/hw/char/parallel.c
/openbmc/qemu/hw/char/pl011.c
/openbmc/qemu/hw/char/serial-pci-multi.c
/openbmc/qemu/hw/char/serial-pci.c
/openbmc/qemu/hw/char/serial.c
/openbmc/qemu/hw/char/sh_serial.c
/openbmc/qemu/hw/char/spapr_vty.c
/openbmc/qemu/hw/char/stm32f2xx_usart.c
/openbmc/qemu/hw/char/virtio-serial-bus.c
/openbmc/qemu/hw/char/xilinx_uartlite.c
or-irq.c
qdev.c
split-irq.c
/openbmc/qemu/hw/cpu/a15mpcore.c
/openbmc/qemu/hw/cpu/a9mpcore.c
/openbmc/qemu/hw/cpu/arm11mpcore.c
/openbmc/qemu/hw/cpu/realview_mpcore.c
/openbmc/qemu/hw/display/ads7846.c
/openbmc/qemu/hw/display/bcm2835_fb.c
/openbmc/qemu/hw/display/cg3.c
/openbmc/qemu/hw/display/exynos4210_fimd.c
/openbmc/qemu/hw/display/g364fb.c
/openbmc/qemu/hw/display/milkymist-tmu2.c
/openbmc/qemu/hw/display/omap_dss.c
/openbmc/qemu/hw/display/omap_lcdc.c
/openbmc/qemu/hw/display/pl110.c
/openbmc/qemu/hw/display/pxa2xx_lcd.c
/openbmc/qemu/hw/display/tc6393xb.c
/openbmc/qemu/hw/display/virtio-gpu.c
/openbmc/qemu/hw/display/xlnx_dp.c
/openbmc/qemu/hw/dma/bcm2835_dma.c
/openbmc/qemu/hw/dma/etraxfs_dma.c
/openbmc/qemu/hw/dma/pl080.c
/openbmc/qemu/hw/dma/pl330.c
/openbmc/qemu/hw/dma/pxa2xx_dma.c
/openbmc/qemu/hw/dma/rc4030.c
/openbmc/qemu/hw/dma/sparc32_dma.c
/openbmc/qemu/hw/dma/xilinx_axidma.c
/openbmc/qemu/hw/dma/xlnx-zdma.c
/openbmc/qemu/hw/dma/xlnx-zynq-devcfg.c
/openbmc/qemu/hw/dma/xlnx_dpdma.c
/openbmc/qemu/hw/gpio/bcm2835_gpio.c
/openbmc/qemu/hw/gpio/gpio_key.c
/openbmc/qemu/hw/gpio/imx_gpio.c
/openbmc/qemu/hw/gpio/max7310.c
/openbmc/qemu/hw/gpio/mpc8xxx.c
/openbmc/qemu/hw/gpio/nrf51_gpio.c
/openbmc/qemu/hw/gpio/omap_gpio.c
/openbmc/qemu/hw/gpio/pl061.c
/openbmc/qemu/hw/gpio/zaurus.c
/openbmc/qemu/hw/hppa/dino.c
/openbmc/qemu/hw/hppa/hppa_sys.h
/openbmc/qemu/hw/i2c/aspeed_i2c.c
/openbmc/qemu/hw/i2c/bitbang_i2c.c
/openbmc/qemu/hw/i2c/exynos4210_i2c.c
/openbmc/qemu/hw/i2c/imx_i2c.c
/openbmc/qemu/hw/i2c/mpc_i2c.c
/openbmc/qemu/hw/i2c/omap_i2c.c
/openbmc/qemu/hw/i2c/ppc4xx_i2c.c
/openbmc/qemu/hw/i386/kvm/i8259.c
/openbmc/qemu/hw/i386/kvm/ioapic.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/i386/pc_piix.c
/openbmc/qemu/hw/i386/xen/xen-hvm.c
/openbmc/qemu/hw/ide/ahci_internal.h
/openbmc/qemu/hw/input/lm832x.c
/openbmc/qemu/hw/input/milkymist-softusb.c
/openbmc/qemu/hw/input/pckbd.c
/openbmc/qemu/hw/input/pl050.c
/openbmc/qemu/hw/input/pxa2xx_keypad.c
/openbmc/qemu/hw/input/stellaris_input.c
/openbmc/qemu/hw/input/tsc2005.c
/openbmc/qemu/hw/input/tsc210x.c
/openbmc/qemu/hw/intc/allwinner-a10-pic.c
/openbmc/qemu/hw/intc/apic_common.c
/openbmc/qemu/hw/intc/arm_gic.c
/openbmc/qemu/hw/intc/arm_gicv2m.c
/openbmc/qemu/hw/intc/arm_gicv3_cpuif.c
/openbmc/qemu/hw/intc/armv7m_nvic.c
/openbmc/qemu/hw/intc/aspeed_vic.c
/openbmc/qemu/hw/intc/bcm2835_ic.c
/openbmc/qemu/hw/intc/bcm2836_control.c
/openbmc/qemu/hw/intc/etraxfs_pic.c
/openbmc/qemu/hw/intc/exynos4210_combiner.c
/openbmc/qemu/hw/intc/heathrow_pic.c
/openbmc/qemu/hw/intc/i8259.c
/openbmc/qemu/hw/intc/imx_avic.c
/openbmc/qemu/hw/intc/lm32_pic.c
/openbmc/qemu/hw/intc/mips_gic.c
/openbmc/qemu/hw/intc/nios2_iic.c
/openbmc/qemu/hw/intc/omap_intc.c
/openbmc/qemu/hw/intc/ompic.c
/openbmc/qemu/hw/intc/openpic.c
/openbmc/qemu/hw/intc/pl190.c
/openbmc/qemu/hw/intc/puv3_intc.c
/openbmc/qemu/hw/intc/realview_gic.c
/openbmc/qemu/hw/intc/s390_flic_kvm.c
/openbmc/qemu/hw/intc/sh_intc.c
/openbmc/qemu/hw/intc/slavio_intctl.c
/openbmc/qemu/hw/intc/xics.c
/openbmc/qemu/hw/intc/xilinx_intc.c
/openbmc/qemu/hw/intc/xive.c
/openbmc/qemu/hw/intc/xlnx-pmu-iomod-intc.c
/openbmc/qemu/hw/intc/xlnx-zynqmp-ipi.c
/openbmc/qemu/hw/ipack/ipack.c
/openbmc/qemu/hw/ipack/tpci200.c
/openbmc/qemu/hw/ipmi/isa_ipmi_bt.c
/openbmc/qemu/hw/ipmi/isa_ipmi_kcs.c
/openbmc/qemu/hw/isa/i82378.c
/openbmc/qemu/hw/isa/lpc_ich9.c
/openbmc/qemu/hw/lm32/lm32_boards.c
/openbmc/qemu/hw/lm32/milkymist.c
/openbmc/qemu/hw/m68k/mcf5206.c
/openbmc/qemu/hw/m68k/mcf5208.c
/openbmc/qemu/hw/m68k/mcf_intc.c
/openbmc/qemu/hw/mips/gt64xxx_pci.c
/openbmc/qemu/hw/mips/mips_int.c
/openbmc/qemu/hw/mips/mips_malta.c
/openbmc/qemu/hw/misc/arm_sysctl.c
/openbmc/qemu/hw/misc/armsse-mhu.c
/openbmc/qemu/hw/misc/aspeed_xdma.c
/openbmc/qemu/hw/misc/bcm2835_mbox.c
/openbmc/qemu/hw/misc/bcm2835_property.c
/openbmc/qemu/hw/misc/eccmemctl.c
/openbmc/qemu/hw/misc/iotkit-secctl.c
/openbmc/qemu/hw/misc/macio/mac_dbdma.c
/openbmc/qemu/hw/misc/macio/pmu.c
/openbmc/qemu/hw/misc/max111x.c
/openbmc/qemu/hw/misc/milkymist-pfpu.c
/openbmc/qemu/hw/misc/mos6522.c
/openbmc/qemu/hw/misc/mst_fpga.c
/openbmc/qemu/hw/misc/nrf51_rng.c
/openbmc/qemu/hw/misc/omap_clk.c
/openbmc/qemu/hw/misc/omap_gpmc.c
/openbmc/qemu/hw/misc/pc-testdev.c
/openbmc/qemu/hw/misc/slavio_misc.c
/openbmc/qemu/hw/misc/tmp105.c
/openbmc/qemu/hw/misc/tz-mpc.c
/openbmc/qemu/hw/misc/tz-msc.c
/openbmc/qemu/hw/misc/tz-ppc.c
/openbmc/qemu/hw/misc/zynq-xadc.c
/openbmc/qemu/hw/net/allwinner_emac.c
/openbmc/qemu/hw/net/cadence_gem.c
/openbmc/qemu/hw/net/can/can_kvaser_pci.c
/openbmc/qemu/hw/net/can/can_mioe3680_pci.c
/openbmc/qemu/hw/net/can/can_pcm3680_pci.c
/openbmc/qemu/hw/net/can/can_sja1000.c
/openbmc/qemu/hw/net/dp8393x.c
/openbmc/qemu/hw/net/fsl_etsec/etsec.c
/openbmc/qemu/hw/net/ftgmac100.c
/openbmc/qemu/hw/net/imx_fec.c
/openbmc/qemu/hw/net/lan9118.c
/openbmc/qemu/hw/net/mcf_fec.c
/openbmc/qemu/hw/net/milkymist-minimac2.c
/openbmc/qemu/hw/net/mipsnet.c
/openbmc/qemu/hw/net/ne2000-pci.c
/openbmc/qemu/hw/net/ne2000.c
/openbmc/qemu/hw/net/opencores_eth.c
/openbmc/qemu/hw/net/pcnet-pci.c
/openbmc/qemu/hw/net/pcnet.c
/openbmc/qemu/hw/net/smc91c111.c
/openbmc/qemu/hw/net/spapr_llan.c
/openbmc/qemu/hw/net/stellaris_enet.c
/openbmc/qemu/hw/net/xgmac.c
/openbmc/qemu/hw/net/xilinx_axienet.c
/openbmc/qemu/hw/net/xilinx_ethlite.c
/openbmc/qemu/hw/nios2/cpu_pic.c
/openbmc/qemu/hw/nvram/eeprom93xx.c
/openbmc/qemu/hw/nvram/fw_cfg.c
/openbmc/qemu/hw/openrisc/openrisc_sim.c
/openbmc/qemu/hw/openrisc/pic_cpu.c
/openbmc/qemu/hw/pci-host/bonito.c
/openbmc/qemu/hw/pci-host/designware.c
/openbmc/qemu/hw/pci-host/gpex.c
/openbmc/qemu/hw/pci-host/grackle.c
/openbmc/qemu/hw/pci-host/piix.c
/openbmc/qemu/hw/pci-host/ppce500.c
/openbmc/qemu/hw/pci-host/prep.c
/openbmc/qemu/hw/pci-host/sabre.c
/openbmc/qemu/hw/pci-host/uninorth.c
/openbmc/qemu/hw/pci-host/versatile.c
/openbmc/qemu/hw/pci-host/xilinx-pcie.c
/openbmc/qemu/hw/pci/msix.c
/openbmc/qemu/hw/pci/pci.c
/openbmc/qemu/hw/pci/shpc.c
/openbmc/qemu/hw/pcmcia/pxa2xx.c
/openbmc/qemu/hw/ppc/e500.c
/openbmc/qemu/hw/ppc/mac.h
/openbmc/qemu/hw/ppc/pnv_lpc.c
/openbmc/qemu/hw/ppc/pnv_psi.c
/openbmc/qemu/hw/ppc/ppc.c
/openbmc/qemu/hw/ppc/ppc405_uc.c
/openbmc/qemu/hw/ppc/ppc440_pcix.c
/openbmc/qemu/hw/ppc/ppc440_uc.c
/openbmc/qemu/hw/ppc/ppc4xx_devs.c
/openbmc/qemu/hw/ppc/ppc4xx_pci.c
/openbmc/qemu/hw/ppc/prep.c
/openbmc/qemu/hw/ppc/prep_systemio.c
/openbmc/qemu/hw/ppc/spapr.c
/openbmc/qemu/hw/ppc/spapr_events.c
/openbmc/qemu/hw/ppc/spapr_irq.c
/openbmc/qemu/hw/ppc/spapr_pci.c
/openbmc/qemu/hw/ppc/spapr_vio.c
/openbmc/qemu/hw/riscv/sifive_gpio.c
/openbmc/qemu/hw/riscv/sifive_uart.c
/openbmc/qemu/hw/s390x/s390-skeys.c
/openbmc/qemu/hw/s390x/tod.c
/openbmc/qemu/hw/s390x/virtio-ccw.c
/openbmc/qemu/hw/scsi/esp-pci.c
/openbmc/qemu/hw/scsi/esp.c
/openbmc/qemu/hw/scsi/lsi53c895a.c
/openbmc/qemu/hw/scsi/mptsas.c
/openbmc/qemu/hw/scsi/scsi-bus.c
/openbmc/qemu/hw/scsi/scsi-disk.c
/openbmc/qemu/hw/scsi/scsi-generic.c
/openbmc/qemu/hw/scsi/virtio-scsi.c
/openbmc/qemu/hw/sd/bcm2835_sdhost.c
/openbmc/qemu/hw/sd/omap_mmc.c
/openbmc/qemu/hw/sd/pl181.c
/openbmc/qemu/hw/sd/pxa2xx_mmci.c
/openbmc/qemu/hw/sd/sd.c
/openbmc/qemu/hw/sd/sdhci.c
/openbmc/qemu/hw/sh4/r2d.c
/openbmc/qemu/hw/sh4/sh7750.c
/openbmc/qemu/hw/sh4/sh_pci.c
/openbmc/qemu/hw/sparc/leon3.c
/openbmc/qemu/hw/sparc/sun4m.c
/openbmc/qemu/hw/sparc/sun4m_iommu.c
/openbmc/qemu/hw/ssi/aspeed_smc.c
/openbmc/qemu/hw/ssi/imx_spi.c
/openbmc/qemu/hw/ssi/mss-spi.c
/openbmc/qemu/hw/ssi/omap_spi.c
/openbmc/qemu/hw/ssi/pl022.c
/openbmc/qemu/hw/ssi/xilinx_spi.c
/openbmc/qemu/hw/ssi/xilinx_spips.c
/openbmc/qemu/hw/timer/a9gtimer.c
/openbmc/qemu/hw/timer/allwinner-a10-pit.c
/openbmc/qemu/hw/timer/altera_timer.c
/openbmc/qemu/hw/timer/arm_mptimer.c
/openbmc/qemu/hw/timer/arm_timer.c
/openbmc/qemu/hw/timer/armv7m_systick.c
/openbmc/qemu/hw/timer/aspeed_timer.c
/openbmc/qemu/hw/timer/cadence_ttc.c
/openbmc/qemu/hw/timer/cmsdk-apb-dualtimer.c
/openbmc/qemu/hw/timer/cmsdk-apb-timer.c
/openbmc/qemu/hw/timer/etraxfs_timer.c
/openbmc/qemu/hw/timer/exynos4210_mct.c
/openbmc/qemu/hw/timer/exynos4210_pwm.c
/openbmc/qemu/hw/timer/exynos4210_rtc.c
/openbmc/qemu/hw/timer/grlib_gptimer.c
/openbmc/qemu/hw/timer/hpet.c
/openbmc/qemu/hw/timer/i8254.c
/openbmc/qemu/hw/timer/i8254_common.c
/openbmc/qemu/hw/timer/imx_epit.c
/openbmc/qemu/hw/timer/imx_gpt.c
/openbmc/qemu/hw/timer/lm32_timer.c
/openbmc/qemu/hw/timer/m48t59.c
/openbmc/qemu/hw/timer/mc146818rtc.c
/openbmc/qemu/hw/timer/milkymist-sysctl.c
/openbmc/qemu/hw/timer/mss-timer.c
/openbmc/qemu/hw/timer/nrf51_timer.c
/openbmc/qemu/hw/timer/omap_gptimer.c
/openbmc/qemu/hw/timer/pl031.c
/openbmc/qemu/hw/timer/puv3_ost.c
/openbmc/qemu/hw/timer/pxa2xx_timer.c
/openbmc/qemu/hw/timer/sh_timer.c
/openbmc/qemu/hw/timer/slavio_timer.c
/openbmc/qemu/hw/timer/stm32f2xx_timer.c
/openbmc/qemu/hw/timer/twl92230.c
/openbmc/qemu/hw/timer/xilinx_timer.c
/openbmc/qemu/hw/timer/xlnx-zynqmp-rtc.c
/openbmc/qemu/hw/tpm/tpm_tis.c
/openbmc/qemu/hw/unicore32/puv3.c
/openbmc/qemu/hw/usb/hcd-ehci.c
/openbmc/qemu/hw/usb/hcd-ohci.c
/openbmc/qemu/hw/usb/redirect.c
/openbmc/qemu/hw/vfio/platform.c
/openbmc/qemu/hw/virtio/vhost.c
/openbmc/qemu/hw/virtio/virtio-mmio.c
/openbmc/qemu/hw/virtio/virtio-pci.c
/openbmc/qemu/hw/virtio/virtio.c
/openbmc/qemu/hw/watchdog/cmsdk-apb-watchdog.c
/openbmc/qemu/hw/xtensa/mx_pic.c
/openbmc/qemu/hw/xtensa/pic_cpu.c
/openbmc/qemu/include/hw/acpi/acpi.h
/openbmc/qemu/include/hw/arm/allwinner-a10.h
/openbmc/qemu/include/hw/arm/boot.h
/openbmc/qemu/include/hw/arm/omap.h
/openbmc/qemu/include/hw/arm/soc_dma.h
/openbmc/qemu/include/hw/arm/xlnx-zynqmp.h
/openbmc/qemu/include/hw/block/fdc.h
/openbmc/qemu/include/hw/bt.h
/openbmc/qemu/include/hw/core/split-irq.h
/openbmc/qemu/include/hw/cris/etraxfs_dma.h
/openbmc/qemu/include/hw/display/blizzard.h
/openbmc/qemu/include/hw/display/tc6393xb.h
/openbmc/qemu/include/hw/hw.h
/openbmc/qemu/include/hw/ide/internal.h
/openbmc/qemu/include/hw/input/gamepad.h
/openbmc/qemu/include/hw/input/tsc2xxx.h
/openbmc/qemu/include/hw/irq.h
/openbmc/qemu/include/hw/isa/vt82c686.h
/openbmc/qemu/include/hw/mips/mips.h
/openbmc/qemu/include/hw/misc/cbus.h
/openbmc/qemu/include/hw/misc/mos6522.h
/openbmc/qemu/include/hw/net/lan9118.h
/openbmc/qemu/include/hw/net/smc91c111.h
/openbmc/qemu/include/hw/or-irq.h
/openbmc/qemu/include/hw/ppc/spapr_irq.h
/openbmc/qemu/include/hw/qdev-core.h
/openbmc/qemu/include/hw/sh4/sh_intc.h
/openbmc/qemu/include/hw/timer/m48t59.h
/openbmc/qemu/include/hw/tricore/tricore.h
/openbmc/qemu/include/hw/vfio/vfio-platform.h
/openbmc/qemu/include/hw/xen/xen.h
/openbmc/qemu/include/hw/xtensa/mx_pic.h
/openbmc/qemu/include/migration/cpu.h
/openbmc/qemu/include/qemu/typedefs.h
/openbmc/qemu/include/sysemu/kvm.h
/openbmc/qemu/target/arm/helper.c
/openbmc/qemu/target/arm/kvm.c
/openbmc/qemu/target/mips/cp0_timer.c
/openbmc/qemu/target/ppc/kvm.c
71e8a91512-Aug-2019 Markus Armbruster <armbru@redhat.com>

Include sysemu/reset.h a lot less

In my "build everything" tree, changing sysemu/reset.h triggers a
recompile of some 2600 out of 6600 objects (not counting tests and
objects that don't depend on qe

Include sysemu/reset.h a lot less

In my "build everything" tree, changing sysemu/reset.h triggers a
recompile of some 2600 out of 6600 objects (not counting tests and
objects that don't depend on qemu/osdep.h).

The main culprit is hw/hw.h, which supposedly includes it for
convenience.

Include sysemu/reset.h only where it's needed. Touching it now
recompiles less than 200 objects.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20190812052359.30071-9-armbru@redhat.com>

show more ...


/openbmc/qemu/MAINTAINERS
/openbmc/qemu/block/block-backend.c
/openbmc/qemu/hw/acpi/ich9.c
/openbmc/qemu/hw/acpi/piix4.c
/openbmc/qemu/hw/acpi/vmgenid.c
/openbmc/qemu/hw/arm/armv7m.c
/openbmc/qemu/hw/arm/boot.c
/openbmc/qemu/hw/arm/nseries.c
/openbmc/qemu/hw/arm/omap1.c
/openbmc/qemu/hw/arm/omap2.c
/openbmc/qemu/hw/arm/virt-acpi-build.c
/openbmc/qemu/hw/char/parallel.c
/openbmc/qemu/hw/char/serial.c
generic-loader.c
loader.c
/openbmc/qemu/hw/cris/boot.c
/openbmc/qemu/hw/display/cirrus_vga.c
/openbmc/qemu/hw/display/ramfb.c
/openbmc/qemu/hw/display/vga-isa-mm.c
/openbmc/qemu/hw/display/vga.c
/openbmc/qemu/hw/hppa/machine.c
/openbmc/qemu/hw/i386/acpi-build.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/ide/cmd646.c
/openbmc/qemu/hw/ide/piix.c
/openbmc/qemu/hw/ide/sii3112.c
/openbmc/qemu/hw/ide/via.c
/openbmc/qemu/hw/input/lm832x.c
/openbmc/qemu/hw/input/pckbd.c
/openbmc/qemu/hw/input/ps2.c
/openbmc/qemu/hw/input/tsc2005.c
/openbmc/qemu/hw/input/tsc210x.c
/openbmc/qemu/hw/intc/mips_gic.c
/openbmc/qemu/hw/intc/pnv_xive.c
/openbmc/qemu/hw/intc/spapr_xive.c
/openbmc/qemu/hw/intc/xics.c
/openbmc/qemu/hw/intc/xive.c
/openbmc/qemu/hw/isa/piix4.c
/openbmc/qemu/hw/isa/vt82c686.c
/openbmc/qemu/hw/lm32/lm32_boards.c
/openbmc/qemu/hw/lm32/milkymist.c
/openbmc/qemu/hw/microblaze/boot.c
/openbmc/qemu/hw/mips/cps.c
/openbmc/qemu/hw/mips/mips_fulong2e.c
/openbmc/qemu/hw/mips/mips_jazz.c
/openbmc/qemu/hw/mips/mips_malta.c
/openbmc/qemu/hw/mips/mips_mipssim.c
/openbmc/qemu/hw/mips/mips_r4k.c
/openbmc/qemu/hw/misc/vmcoreinfo.c
/openbmc/qemu/hw/moxie/moxiesim.c
/openbmc/qemu/hw/net/eepro100.c
/openbmc/qemu/hw/net/pcnet.h
/openbmc/qemu/hw/nios2/boot.c
/openbmc/qemu/hw/nvram/fw_cfg.c
/openbmc/qemu/hw/openrisc/openrisc_sim.c
/openbmc/qemu/hw/pci-host/bonito.c
/openbmc/qemu/hw/pci-host/piix.c
/openbmc/qemu/hw/ppc/e500.c
/openbmc/qemu/hw/ppc/mac_newworld.c
/openbmc/qemu/hw/ppc/mac_oldworld.c
/openbmc/qemu/hw/ppc/pnv.c
/openbmc/qemu/hw/ppc/pnv_core.c
/openbmc/qemu/hw/ppc/pnv_psi.c
/openbmc/qemu/hw/ppc/ppc405_boards.c
/openbmc/qemu/hw/ppc/ppc405_uc.c
/openbmc/qemu/hw/ppc/ppc440_bamboo.c
/openbmc/qemu/hw/ppc/ppc440_uc.c
/openbmc/qemu/hw/ppc/ppc4xx_devs.c
/openbmc/qemu/hw/ppc/ppc4xx_pci.c
/openbmc/qemu/hw/ppc/ppc_booke.c
/openbmc/qemu/hw/ppc/prep.c
/openbmc/qemu/hw/ppc/sam460ex.c
/openbmc/qemu/hw/ppc/spapr.c
/openbmc/qemu/hw/ppc/spapr_cpu_core.c
/openbmc/qemu/hw/ppc/spapr_drc.c
/openbmc/qemu/hw/ppc/virtex_ml507.c
/openbmc/qemu/hw/riscv/riscv_hart.c
/openbmc/qemu/hw/s390x/ipl.c
/openbmc/qemu/hw/s390x/s390-virtio-ccw.c
/openbmc/qemu/hw/sh4/r2d.c
/openbmc/qemu/hw/sparc/leon3.c
/openbmc/qemu/hw/sparc/sun4m.c
/openbmc/qemu/hw/sparc64/sparc64.c
/openbmc/qemu/hw/timer/etraxfs_timer.c
/openbmc/qemu/hw/timer/mc146818rtc.c
/openbmc/qemu/hw/tpm/tpm_ppi.c
/openbmc/qemu/hw/tpm/trace-events
/openbmc/qemu/hw/vfio/common.c
/openbmc/qemu/hw/watchdog/wdt_diag288.c
/openbmc/qemu/hw/xtensa/sim.c
/openbmc/qemu/hw/xtensa/xtfpga.c
/openbmc/qemu/include/exec/memory.h
/openbmc/qemu/include/hw/hw.h
/openbmc/qemu/include/qapi/error.h
/openbmc/qemu/include/qemu/queue.h
/openbmc/qemu/memory.c
/openbmc/qemu/qapi/Makefile.objs
/openbmc/qemu/qapi/common.json
/openbmc/qemu/qapi/error.json
/openbmc/qemu/qapi/qapi-schema.json
/openbmc/qemu/qom/object.c
/openbmc/qemu/scripts/tracetool/format/c.py
/openbmc/qemu/scripts/tracetool/format/h.py
/openbmc/qemu/scripts/tracetool/format/log_stap.py
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/i386/hax-all.c
/openbmc/qemu/target/i386/kvm.c
/openbmc/qemu/target/s390x/cpu.c
/openbmc/qemu/trace/control-internal.h
/openbmc/qemu/trace/control-vcpu.h
/openbmc/qemu/trace/control.h
/openbmc/qemu/trace/qmp.c
/openbmc/qemu/ui/vnc.c
/openbmc/qemu/vl.c
2ae16a6a12-Aug-2019 Markus Armbruster <armbru@redhat.com>

Include generated QAPI headers less

Some of the generated qapi-types-MODULE.h are included all over the
place. Changing a QAPI type can trigger massive recompiling. Top
scorers recompile more than

Include generated QAPI headers less

Some of the generated qapi-types-MODULE.h are included all over the
place. Changing a QAPI type can trigger massive recompiling. Top
scorers recompile more than 1000 out of some 6600 objects (not
counting tests and objects that don't depend on qemu/osdep.h):

6300 qapi/qapi-builtin-types.h
5700 qapi/qapi-types-run-state.h
3900 qapi/qapi-types-common.h
3300 qapi/qapi-types-sockets.h
3000 qapi/qapi-types-misc.h
3000 qapi/qapi-types-crypto.h
3000 qapi/qapi-types-job.h
3000 qapi/qapi-types-block-core.h
2800 qapi/qapi-types-block.h
1300 qapi/qapi-types-net.h

Clean up headers to include generated QAPI headers only where needed.
Impact is negligible except for hw/qdev-properties.h.

This header includes qapi/qapi-types-block.h and
qapi/qapi-types-misc.h. They are used only in expansions of property
definition macros such as DEFINE_PROP_BLOCKDEV_ON_ERROR() and
DEFINE_PROP_OFF_AUTO(). Moving their inclusion from
hw/qdev-properties.h to the users of these macros avoids pointless
recompiles. This is how other property definition macros, such as
DEFINE_PROP_NETDEV(), already work.

Improves things for some of the top scorers:

3600 qapi/qapi-types-common.h
2800 qapi/qapi-types-sockets.h
900 qapi/qapi-types-misc.h
2200 qapi/qapi-types-crypto.h
2100 qapi/qapi-types-job.h
2100 qapi/qapi-types-block-core.h
270 qapi/qapi-types-block.h

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20190812052359.30071-3-armbru@redhat.com>

show more ...


/openbmc/qemu/VERSION
qdev-properties.c
/openbmc/qemu/hw/display/bochs-display.c
/openbmc/qemu/hw/i386/kvm/i8254.c
/openbmc/qemu/hw/ide/qdev.c
/openbmc/qemu/hw/intc/spapr_xive_kvm.c
/openbmc/qemu/hw/intc/xive.c
/openbmc/qemu/hw/ppc/spapr.c
/openbmc/qemu/include/authz/listfile.h
/openbmc/qemu/include/block/block.h
/openbmc/qemu/include/block/raw-aio.h
/openbmc/qemu/include/block/write-threshold.h
/openbmc/qemu/include/disas/disas.h
/openbmc/qemu/include/exec/cputlb.h
/openbmc/qemu/include/exec/exec-all.h
/openbmc/qemu/include/exec/ioport.h
/openbmc/qemu/include/exec/memory-internal.h
/openbmc/qemu/include/exec/ram_addr.h
/openbmc/qemu/include/exec/softmmu-semi.h
/openbmc/qemu/include/exec/tb-hash.h
/openbmc/qemu/include/exec/user/thunk.h
/openbmc/qemu/include/fpu/softfloat-macros.h
/openbmc/qemu/include/hw/acpi/acpi_dev_interface.h
/openbmc/qemu/include/hw/acpi/pci.h
/openbmc/qemu/include/hw/acpi/tco.h
/openbmc/qemu/include/hw/adc/stm32f2xx_adc.h
/openbmc/qemu/include/hw/arm/allwinner-a10.h
/openbmc/qemu/include/hw/arm/aspeed_soc.h
/openbmc/qemu/include/hw/arm/bcm2836.h
/openbmc/qemu/include/hw/arm/exynos4210.h
/openbmc/qemu/include/hw/arm/fsl-imx25.h
/openbmc/qemu/include/hw/arm/fsl-imx31.h
/openbmc/qemu/include/hw/arm/sharpsl.h
/openbmc/qemu/include/hw/arm/xlnx-zynqmp.h
/openbmc/qemu/include/hw/block/fdc.h
/openbmc/qemu/include/hw/block/flash.h
/openbmc/qemu/include/hw/char/escc.h
/openbmc/qemu/include/hw/char/xilinx_uartlite.h
/openbmc/qemu/include/hw/core/generic-loader.h
/openbmc/qemu/include/hw/cris/etraxfs.h
/openbmc/qemu/include/hw/cris/etraxfs_dma.h
/openbmc/qemu/include/hw/display/i2c-ddc.h
/openbmc/qemu/include/hw/empty_slot.h
/openbmc/qemu/include/hw/gpio/bcm2835_gpio.h
/openbmc/qemu/include/hw/i2c/aspeed_i2c.h
/openbmc/qemu/include/hw/i386/apic_internal.h
/openbmc/qemu/include/hw/i386/ioapic_internal.h
/openbmc/qemu/include/hw/intc/allwinner-a10-pic.h
/openbmc/qemu/include/hw/intc/heathrow_pic.h
/openbmc/qemu/include/hw/intc/mips_gic.h
/openbmc/qemu/include/hw/isa/vt82c686.h
/openbmc/qemu/include/hw/mem/memory-device.h
/openbmc/qemu/include/hw/mips/cps.h
/openbmc/qemu/include/hw/misc/macio/cuda.h
/openbmc/qemu/include/hw/misc/macio/gpio.h
/openbmc/qemu/include/hw/misc/macio/macio.h
/openbmc/qemu/include/hw/misc/macio/pmu.h
/openbmc/qemu/include/hw/misc/mips_cmgcr.h
/openbmc/qemu/include/hw/misc/mips_cpc.h
/openbmc/qemu/include/hw/misc/pvpanic.h
/openbmc/qemu/include/hw/net/allwinner_emac.h
/openbmc/qemu/include/hw/net/lance.h
/openbmc/qemu/include/hw/nvram/chrp_nvram.h
/openbmc/qemu/include/hw/pci-host/sabre.h
/openbmc/qemu/include/hw/pci-host/uninorth.h
/openbmc/qemu/include/hw/pci/pcie_aer.h
/openbmc/qemu/include/hw/ppc/pnv_core.h
/openbmc/qemu/include/hw/ppc/ppc4xx.h
/openbmc/qemu/include/hw/ppc/spapr_drc.h
/openbmc/qemu/include/hw/ppc/spapr_irq.h
/openbmc/qemu/include/hw/ppc/spapr_vio.h
/openbmc/qemu/include/hw/ppc/spapr_xive.h
/openbmc/qemu/include/hw/ppc/xive.h
/openbmc/qemu/include/hw/ppc/xive_regs.h
/openbmc/qemu/include/hw/qdev-properties.h
/openbmc/qemu/include/hw/riscv/boot.h
/openbmc/qemu/include/hw/riscv/riscv_hart.h
/openbmc/qemu/include/hw/riscv/sifive_clint.h
/openbmc/qemu/include/hw/riscv/sifive_e.h
/openbmc/qemu/include/hw/riscv/sifive_plic.h
/openbmc/qemu/include/hw/riscv/sifive_prci.h
/openbmc/qemu/include/hw/riscv/sifive_test.h
/openbmc/qemu/include/hw/riscv/sifive_u.h
/openbmc/qemu/include/hw/riscv/sifive_uart.h
/openbmc/qemu/include/hw/riscv/spike.h
/openbmc/qemu/include/hw/riscv/virt.h
/openbmc/qemu/include/hw/s390x/ap-device.h
/openbmc/qemu/include/hw/s390x/css-bridge.h
/openbmc/qemu/include/hw/s390x/css.h
/openbmc/qemu/include/hw/s390x/tod.h
/openbmc/qemu/include/hw/semihosting/console.h
/openbmc/qemu/include/hw/sh4/sh_intc.h
/openbmc/qemu/include/hw/sparc/sparc64.h
/openbmc/qemu/include/hw/ssi/aspeed_smc.h
/openbmc/qemu/include/hw/ssi/xilinx_spips.h
/openbmc/qemu/include/hw/timer/allwinner-a10-pit.h
/openbmc/qemu/include/hw/timer/i8254_internal.h
/openbmc/qemu/include/hw/timer/m48t59.h
/openbmc/qemu/include/hw/timer/mc146818rtc_regs.h
/openbmc/qemu/include/hw/timer/xlnx-zynqmp-rtc.h
/openbmc/qemu/include/hw/virtio/virtio-access.h
/openbmc/qemu/include/hw/virtio/virtio-gpu-bswap.h
/openbmc/qemu/include/hw/virtio/virtio-pmem.h
/openbmc/qemu/include/hw/virtio/virtio-rng.h
/openbmc/qemu/include/hw/watchdog/wdt_aspeed.h
/openbmc/qemu/include/libdecnumber/decNumberLocal.h
/openbmc/qemu/include/migration/cpu.h
/openbmc/qemu/include/migration/global_state.h
/openbmc/qemu/include/monitor/hmp-target.h
/openbmc/qemu/include/qemu/atomic128.h
/openbmc/qemu/include/qemu/job.h
/openbmc/qemu/include/qemu/ratelimit.h
/openbmc/qemu/include/qemu/thread-win32.h
/openbmc/qemu/include/sysemu/arch_init.h
/openbmc/qemu/include/sysemu/balloon.h
/openbmc/qemu/include/sysemu/cryptodev-vhost-user.h
/openbmc/qemu/include/sysemu/hvf.h
/openbmc/qemu/include/sysemu/iothread.h
/openbmc/qemu/include/sysemu/kvm_int.h
/openbmc/qemu/include/sysemu/memory_mapping.h
/openbmc/qemu/include/sysemu/xen-mapcache.h
/openbmc/qemu/include/ui/egl-helpers.h
/openbmc/qemu/include/ui/input.h
/openbmc/qemu/include/ui/spice-display.h
/openbmc/qemu/monitor/monitor-internal.h
/openbmc/qemu/roms/Makefile
/openbmc/qemu/target/hppa/cpu.h
/openbmc/qemu/target/i386/monitor.c
/openbmc/qemu/target/i386/sev_i386.h
/openbmc/qemu/ui/vnc.h
bb15791106-Aug-2019 Cornelia Huck <cohuck@redhat.com>

compat: disable edid on virtio-gpu base device

'edid' is a property of the virtio-gpu base device, so turning
it off on virtio-gpu-pci is not enough (it misses -ccw). Turn
it off on the base device

compat: disable edid on virtio-gpu base device

'edid' is a property of the virtio-gpu base device, so turning
it off on virtio-gpu-pci is not enough (it misses -ccw). Turn
it off on the base device instead.

Fixes: 0a71966253c8 ("edid: flip the default to enabled")
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com>
Message-id: 20190806115819.16026-1-cohuck@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>

show more ...

c8557f1b30-Jul-2019 Dr. David Alan Gilbert <dgilbert@redhat.com>

pcie_root_port: Disable ACS on older machines

ACS got added in 4.0 unconditionally, that broke older<->4.0 migration
where there was a PCIe root port.
Fix this by turning it off for 3.1 and older m

pcie_root_port: Disable ACS on older machines

ACS got added in 4.0 unconditionally, that broke older<->4.0 migration
where there was a PCIe root port.
Fix this by turning it off for 3.1 and older machines; note this
fixes compatibility for older QEMUs but breaks compatibility with 4.0
for older machine types.

machine type source qemu dest qemu
3.1 3.1 4.0 broken
3.1 3.1 4.1rc2 broken
3.1 3.1 4.1+this OK ++
3.1 4.0 4.1rc2 OK
3.1 4.0 4.1+this broken --
4.0 4.0 4.1rc2 OK
4.0 4.0 4.1+this OK

So we gain and lose; the consensus seems to be treat this as a
fix for older machine types.

Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Message-Id: <20190730093719.12958-3-dgilbert@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>

show more ...

dd56040d29-Jul-2019 Dr. David Alan Gilbert <dgilbert@redhat.com>

Revert "hw: report invalid disable-legacy|modern usage for virtio-1-only devs"

This reverts commit f2784eed306449c3d04a71a05ed6463b8289aedf
since that accidentally removes the PCIe capabilities from

Revert "hw: report invalid disable-legacy|modern usage for virtio-1-only devs"

This reverts commit f2784eed306449c3d04a71a05ed6463b8289aedf
since that accidentally removes the PCIe capabilities from virtio
devices because virtio_pci_dc_realize is called before the new 'mode'
flag is set.

Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Message-Id: <20190729162903.4489-3-dgilbert@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>

show more ...


/openbmc/qemu/.gitmodules
/openbmc/qemu/.shippable.yml
/openbmc/qemu/.travis.yml
/openbmc/qemu/LICENSE
/openbmc/qemu/MAINTAINERS
/openbmc/qemu/Makefile
/openbmc/qemu/Makefile.target
/openbmc/qemu/VERSION
/openbmc/qemu/accel/kvm/kvm-all.c
/openbmc/qemu/accel/kvm/trace-events
/openbmc/qemu/block.c
/openbmc/qemu/block/block-backend.c
/openbmc/qemu/block/commit.c
/openbmc/qemu/block/gluster.c
/openbmc/qemu/block/io.c
/openbmc/qemu/block/iscsi.c
/openbmc/qemu/block/mirror.c
/openbmc/qemu/block/nbd.c
/openbmc/qemu/block/nvme.c
/openbmc/qemu/block/stream.c
/openbmc/qemu/blockjob.c
/openbmc/qemu/configure
/openbmc/qemu/contrib/elf2dmp/Makefile.objs
/openbmc/qemu/contrib/rdmacm-mux/main.c
/openbmc/qemu/crypto/block-luks.c
/openbmc/qemu/crypto/block-luks.h
/openbmc/qemu/crypto/block-qcow.c
/openbmc/qemu/crypto/block-qcow.h
/openbmc/qemu/crypto/block.c
/openbmc/qemu/crypto/blockpriv.h
/openbmc/qemu/crypto/cipher-builtin.c
/openbmc/qemu/crypto/cipher-gcrypt.c
/openbmc/qemu/crypto/cipher-nettle.c
/openbmc/qemu/crypto/cipher.c
/openbmc/qemu/crypto/hash-gcrypt.c
/openbmc/qemu/crypto/hash-glib.c
/openbmc/qemu/crypto/hash-nettle.c
/openbmc/qemu/crypto/hash.c
/openbmc/qemu/crypto/hmac-nettle.c
/openbmc/qemu/crypto/init.c
/openbmc/qemu/crypto/ivgen-essiv.c
/openbmc/qemu/crypto/ivgen-essiv.h
/openbmc/qemu/crypto/ivgen-plain.c
/openbmc/qemu/crypto/ivgen-plain.h
/openbmc/qemu/crypto/ivgen-plain64.c
/openbmc/qemu/crypto/ivgen-plain64.h
/openbmc/qemu/crypto/ivgen.c
/openbmc/qemu/crypto/ivgenpriv.h
/openbmc/qemu/crypto/pbkdf-gcrypt.c
/openbmc/qemu/crypto/pbkdf-nettle.c
/openbmc/qemu/crypto/pbkdf-stub.c
/openbmc/qemu/crypto/pbkdf.c
/openbmc/qemu/crypto/random-gcrypt.c
/openbmc/qemu/crypto/random-gnutls.c
/openbmc/qemu/crypto/random-platform.c
/openbmc/qemu/crypto/secret.c
/openbmc/qemu/crypto/tlscreds.c
/openbmc/qemu/crypto/tlscredsanon.c
/openbmc/qemu/crypto/tlscredspriv.h
/openbmc/qemu/crypto/tlscredspsk.c
/openbmc/qemu/crypto/tlscredsx509.c
/openbmc/qemu/crypto/tlssession.c
/openbmc/qemu/crypto/xts.c
/openbmc/qemu/docs/devel/kconfig.rst
/openbmc/qemu/docs/interop/vhost-user.rst
/openbmc/qemu/docs/security.texi
/openbmc/qemu/exec.c
/openbmc/qemu/hw/Makefile.objs
/openbmc/qemu/hw/arm/boot.c
/openbmc/qemu/hw/arm/fsl-imx6ul.c
/openbmc/qemu/hw/arm/mcimx6ul-evk.c
/openbmc/qemu/hw/block/pflash_cfi01.c
/openbmc/qemu/hw/block/pflash_cfi02.c
machine.c
/openbmc/qemu/hw/display/virtio-gpu-pci.c
/openbmc/qemu/hw/display/virtio-vga.c
/openbmc/qemu/hw/dma/pl330.c
/openbmc/qemu/hw/i386/Kconfig
/openbmc/qemu/hw/i386/acpi-build.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/input/stellaris_input.c
/openbmc/qemu/hw/intc/ioapic.c
/openbmc/qemu/hw/lm32/Kconfig
/openbmc/qemu/hw/riscv/boot.c
/openbmc/qemu/hw/riscv/sifive_u.c
/openbmc/qemu/hw/riscv/virt.c
/openbmc/qemu/hw/s390x/s390-pci-inst.c
/openbmc/qemu/hw/scsi/scsi-disk.c
/openbmc/qemu/hw/scsi/scsi-generic.c
/openbmc/qemu/hw/scsi/vhost-scsi.c
/openbmc/qemu/hw/scsi/vhost-user-scsi.c
/openbmc/qemu/hw/scsi/virtio-scsi.c
/openbmc/qemu/hw/tpm/tpm_crb.c
/openbmc/qemu/hw/tpm/tpm_emulator.c
/openbmc/qemu/hw/tpm/tpm_int.h
/openbmc/qemu/hw/tpm/tpm_tis.c
/openbmc/qemu/hw/usb/Kconfig
/openbmc/qemu/hw/usb/Makefile.objs
/openbmc/qemu/hw/virtio/virtio-balloon.c
/openbmc/qemu/hw/virtio/virtio-crypto-pci.c
/openbmc/qemu/hw/virtio/virtio-input-pci.c
/openbmc/qemu/hw/virtio/virtio-pci.c
/openbmc/qemu/hw/virtio/virtio-pci.h
/openbmc/qemu/include/block/block.h
/openbmc/qemu/include/block/block_int.h
/openbmc/qemu/include/crypto/block.h
/openbmc/qemu/include/crypto/cipher.h
/openbmc/qemu/include/crypto/hash.h
/openbmc/qemu/include/crypto/init.h
/openbmc/qemu/include/crypto/ivgen.h
/openbmc/qemu/include/crypto/pbkdf.h
/openbmc/qemu/include/crypto/random.h
/openbmc/qemu/include/crypto/secret.h
/openbmc/qemu/include/crypto/tlscreds.h
/openbmc/qemu/include/crypto/tlscredsanon.h
/openbmc/qemu/include/crypto/tlscredspsk.h
/openbmc/qemu/include/crypto/tlscredsx509.h
/openbmc/qemu/include/crypto/tlssession.h
/openbmc/qemu/include/crypto/xts.h
/openbmc/qemu/include/exec/cpu_ldst.h
/openbmc/qemu/include/exec/memory.h
/openbmc/qemu/include/exec/ram_addr.h
/openbmc/qemu/include/hw/arm/fsl-imx6ul.h
/openbmc/qemu/include/hw/qdev-core.h
/openbmc/qemu/include/hw/riscv/boot.h
/openbmc/qemu/include/hw/virtio/virtio-balloon.h
/openbmc/qemu/include/hw/virtio/virtio-scsi.h
/openbmc/qemu/include/migration/vmstate.h
/openbmc/qemu/include/qemu/bitmap.h
/openbmc/qemu/include/scsi/utils.h
/openbmc/qemu/include/sysemu/accel.h
/openbmc/qemu/include/sysemu/kvm_int.h
/openbmc/qemu/linux-user/ioctls.h
/openbmc/qemu/linux-user/mips/signal.c
/openbmc/qemu/linux-user/qemu.h
/openbmc/qemu/linux-user/syscall.c
/openbmc/qemu/linux-user/syscall_defs.h
/openbmc/qemu/linux-user/syscall_types.h
/openbmc/qemu/memory.c
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/migration.h
/openbmc/qemu/migration/ram.c
/openbmc/qemu/migration/savevm.c
/openbmc/qemu/migration/trace-events
/openbmc/qemu/pc-bios/README
/openbmc/qemu/pc-bios/opensbi-riscv32-virt-fw_jump.bin
/openbmc/qemu/pc-bios/opensbi-riscv64-sifive_u-fw_jump.bin
/openbmc/qemu/pc-bios/opensbi-riscv64-virt-fw_jump.bin
/openbmc/qemu/python/qemu/machine.py
/openbmc/qemu/qemu-deprecated.texi
/openbmc/qemu/qemu-tech.texi
/openbmc/qemu/qemu.nsi
/openbmc/qemu/qom/object.c
/openbmc/qemu/roms/Makefile
/openbmc/qemu/roms/opensbi
/openbmc/qemu/scripts/archive-source.sh
/openbmc/qemu/scripts/checkpatch.pl
/openbmc/qemu/scripts/create_config
/openbmc/qemu/scsi/utils.c
/openbmc/qemu/target/arm/cpu.c
/openbmc/qemu/target/arm/helper.c
/openbmc/qemu/target/arm/m_helper.c
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/i386/cpu.h
/openbmc/qemu/target/i386/kvm.c
/openbmc/qemu/target/i386/kvm_i386.h
/openbmc/qemu/target/i386/machine.c
/openbmc/qemu/target/i386/sev.c
/openbmc/qemu/target/i386/whpx-all.c
/openbmc/qemu/target/mips/msa_helper.c
/openbmc/qemu/target/mips/translate.c
/openbmc/qemu/target/s390x/cpu_features_def.inc.h
/openbmc/qemu/target/s390x/gen-features.c
/openbmc/qemu/tests/Makefile.include
/openbmc/qemu/tests/docker/Makefile.include
/openbmc/qemu/tests/docker/dockerfiles/debian-alpha-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-amd64.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-arm64-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-armel-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-armhf-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-buster-arm64-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-hppa-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-m68k-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-mips-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-mips64-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-mips64el-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-mipsel-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-ports.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-powerpc-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-ppc64-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-ppc64el-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-riscv64-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-s390x-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-sh4-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-sid.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-sparc64-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-win32-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-win64-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-xtensa-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian10.docker
/openbmc/qemu/tests/docker/dockerfiles/debian8.docker
/openbmc/qemu/tests/docker/dockerfiles/debian9-mxe.docker
/openbmc/qemu/tests/docker/dockerfiles/debian9.docker
/openbmc/qemu/tests/docker/dockerfiles/fedora.docker
/openbmc/qemu/tests/docker/dockerfiles/ubuntu.docker
/openbmc/qemu/tests/docker/dockerfiles/ubuntu1804.docker
/openbmc/qemu/tests/docker/run
/openbmc/qemu/tests/docker/test-mingw
/openbmc/qemu/tests/docker/test-misc
/openbmc/qemu/tests/migration-test.c
/openbmc/qemu/tests/qemu-iotests/007
/openbmc/qemu/tests/qemu-iotests/011
/openbmc/qemu/tests/qemu-iotests/030
/openbmc/qemu/tests/qemu-iotests/030.out
/openbmc/qemu/tests/qemu-iotests/032
/openbmc/qemu/tests/qemu-iotests/035
/openbmc/qemu/tests/qemu-iotests/037
/openbmc/qemu/tests/qemu-iotests/040
/openbmc/qemu/tests/qemu-iotests/040.out
/openbmc/qemu/tests/qemu-iotests/046
/openbmc/qemu/tests/qemu-iotests/051
/openbmc/qemu/tests/qemu-iotests/051.pc.out
/openbmc/qemu/tests/qemu-iotests/093
/openbmc/qemu/tests/qemu-iotests/136
/openbmc/qemu/tests/qemu-iotests/186
/openbmc/qemu/tests/qemu-iotests/186.out
/openbmc/qemu/tests/qemu-iotests/218
/openbmc/qemu/tests/qemu-iotests/218.out
/openbmc/qemu/tests/qemu-iotests/227
/openbmc/qemu/tests/qemu-iotests/227.out
/openbmc/qemu/tests/qemu-iotests/238
/openbmc/qemu/tests/qemu-iotests/240
/openbmc/qemu/tests/qemu-iotests/255
/openbmc/qemu/tests/qemu-iotests/check
/openbmc/qemu/tests/qemu-iotests/common.pattern
/openbmc/qemu/tests/qemu-iotests/group
/openbmc/qemu/tests/qemu-iotests/iotests.py
/openbmc/qemu/tests/test-bdrv-drain.c
/openbmc/qemu/tests/test-bitmap.c
/openbmc/qemu/tests/test-block-iothread.c
/openbmc/qemu/util/Makefile.objs
/openbmc/qemu/util/bitmap.c
/openbmc/qemu/util/cutils.c
/openbmc/qemu/util/main-loop.c
/openbmc/qemu/vl.c
032cfe6a15-Jul-2019 Peter Maydell <peter.maydell@linaro.org>

pl031: Correctly migrate state when using -rtc clock=host

The PL031 RTC tracks the difference between the guest RTC
and the host RTC using a tick_offset field. For migration,
however, we currently a

pl031: Correctly migrate state when using -rtc clock=host

The PL031 RTC tracks the difference between the guest RTC
and the host RTC using a tick_offset field. For migration,
however, we currently always migrate the offset between
the guest and the vm_clock, even if the RTC clock is not
the same as the vm_clock; this was an attempt to retain
migration backwards compatibility.

Unfortunately this results in the RTC behaving oddly across
a VM state save and restore -- since the VM clock stands still
across save-then-restore, regardless of how much real world
time has elapsed, the guest RTC ends up out of sync with the
host RTC in the restored VM.

Fix this by migrating the raw tick_offset. To retain migration
compatibility as far as possible, we have a new property
migrate-tick-offset; by default this is 'true' and we will
migrate the true tick offset in a new subsection; if the
incoming data has no subsection we fall back to the old
vm_clock-based offset information, so old->new migration
compatibility is preserved. For complete new->old migration
compatibility, the property is set to 'false' for 4.0 and
earlier machine types (this will only affect 'virt-4.0'
and below, as none of the other pl031-using machines are
versioned).

Reported-by: Russell King <rmk@armlinux.org.uk>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Message-id: 20190709143912.28905-1-peter.maydell@linaro.org

show more ...

2bbadb0810-Jul-2019 Stefan Hajnoczi <stefanha@redhat.com>

virtio-balloon: fix QEMU 4.0 config size migration incompatibility

The virtio-balloon config size changed in QEMU 4.0 even for existing
machine types. Migration from QEMU 3.1 to 4.0 can fail in som

virtio-balloon: fix QEMU 4.0 config size migration incompatibility

The virtio-balloon config size changed in QEMU 4.0 even for existing
machine types. Migration from QEMU 3.1 to 4.0 can fail in some
circumstances with the following error:

qemu-system-x86_64: get_pci_config_device: Bad config data: i=0x10 read: a1 device: 1 cmask: ff wmask: c0 w1cmask:0

This happens because the virtio-balloon config size affects the VIRTIO
Legacy I/O Memory PCI BAR size.

Introduce a qdev property called "qemu-4-0-config-size" and enable it
only for the QEMU 4.0 machine types. This way <4.0 machine types use
the old size, 4.0 uses the larger size, and >4.0 machine types use the
appropriate size depending on enabled virtio-balloon features.

Live migration to and from old QEMUs to QEMU 4.1 works again as long as
a versioned machine type is specified (do not use just "pc"!).

Originally-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-Id: <20190710141440.27635-1-stefanha@redhat.com>
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Tested-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Tested-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>

show more ...

e965ffa720-Jun-2019 Stefan Hajnoczi <stefanha@redhat.com>

qdev: add qdev_add_vm_change_state_handler()

Children sometimes depend on their parent's vm change state handler
having completed. Add a vm change state handler API for devices that
guarantees tree

qdev: add qdev_add_vm_change_state_handler()

Children sometimes depend on their parent's vm change state handler
having completed. Add a vm change state handler API for devices that
guarantees tree depth ordering.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

b69239e002-Jul-2019 Igor Mammedov <imammedo@redhat.com>

numa: allow memory-less nodes when using memdev as backend

QEMU fails to start if memory-less node is present when memdev
is used
qemu-system-x86_64 -object memory-backend-ram,id=ram0,size=128M \

numa: allow memory-less nodes when using memdev as backend

QEMU fails to start if memory-less node is present when memdev
is used
qemu-system-x86_64 -object memory-backend-ram,id=ram0,size=128M \
-numa node -numa node,memdev=ram0
with error:
"memdev option must be specified for either all or no nodes"

which works as expected if legacy 'mem' is used.

Fix check to make memory-less nodes valid when memdev option is used
but still disallow mix of mem and memdev options.

Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Message-Id: <20190702140745.27767-2-imammedo@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>

show more ...

f8123f2202-Jul-2019 Eduardo Habkost <ehabkost@redhat.com>

numa: Make deprecation warnings conditional on !qtest_enabled()

This will help us avoid spurious warnings during "make check".

Note that this will silence the warnings generated by
tests/numa-test,

numa: Make deprecation warnings conditional on !qtest_enabled()

This will help us avoid spurious warnings during "make check".

Note that this will silence the warnings generated by
tests/numa-test, but not the ones generated by
tests/bios-tables-test. We still need to change
tests/bios-tables-test to use "-numa ...,memdev=" to silence
these warnings.

Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Message-Id: <20190702215726.23661-1-ehabkost@redhat.com>

show more ...

7997402708-Jun-2019 Eduardo Habkost <ehabkost@redhat.com>

qmp: Add deprecation information to query-machines

Export machine type deprecation status through the query-machines
QMP command. With this, libvirt and management software will be
able to show thi

qmp: Add deprecation information to query-machines

Export machine type deprecation status through the query-machines
QMP command. With this, libvirt and management software will be
able to show this information to users and/or suggest changes to
VM configuration to avoid deprecated machines.

Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Message-Id: <20190608233447.27970-2-ehabkost@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>

show more ...

6f47956620-Jun-2019 Like Xu <like.xu@linux.intel.com>

machine: Refactor smp_parse() in vl.c as MachineClass::smp_parse()

To make smp_parse() more flexible and expansive, a smp_parse function
pointer is added to MachineClass that machine types could ove

machine: Refactor smp_parse() in vl.c as MachineClass::smp_parse()

To make smp_parse() more flexible and expansive, a smp_parse function
pointer is added to MachineClass that machine types could override.

The generic smp_parse() code in vl.c is moved to hw/core/machine.c, and
become the default implementation of MachineClass::smp_parse. A PC-specific
function called pc_smp_parse() has been added to hw/i386/pc.c, which in
this patch changes nothing against the default one .

Suggested-by: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Like Xu <like.xu@linux.intel.com>
Reviewed-by: Eduardo Habkost <ehabkost@redhat.com>
Message-Id: <20190620054525.37188-3-like.xu@linux.intel.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>

show more ...

cb79224b26-Jun-2019 Igor Mammedov <imammedo@redhat.com>

deprecate -mem-path fallback to anonymous RAM

Fallback might affect guest or worse whole host performance
or functionality if backing file were used to share guest RAM
with another process.

Patch d

deprecate -mem-path fallback to anonymous RAM

Fallback might affect guest or worse whole host performance
or functionality if backing file were used to share guest RAM
with another process.

Patch deprecates fallback so that we could remove it in future
and ensure that QEMU will provide expected behavior and fail if
it can't use user provided backing file.

Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20190626074228.11558-1-imammedo@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>

show more ...

4bb4a27330-May-2019 Igor Mammedov <imammedo@redhat.com>

numa: deprecate implict memory distribution between nodes

Implicit RAM distribution between nodes has exactly the same issues as:
"numa: deprecate 'mem' parameter of '-numa node' option"
only with

numa: deprecate implict memory distribution between nodes

Implicit RAM distribution between nodes has exactly the same issues as:
"numa: deprecate 'mem' parameter of '-numa node' option"
only with QEMU being the user that's 'adding' 'mem' parameter.

Deprecate it, to get it out of the way so that we could consolidate
guest RAM allocation using memory backends making it consistent and
possibly later on transition to using memory devices instead of
adhoc memory mapping for the initial RAM.

Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Message-Id: <1559205199-233510-4-git-send-email-imammedo@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>

show more ...

cdf8036530-May-2019 Igor Mammedov <imammedo@redhat.com>

numa: deprecate 'mem' parameter of '-numa node' option

The parameter allows to configure fake NUMA topology where guest
VM simulates NUMA topology but not actually getting performance
benefits from

numa: deprecate 'mem' parameter of '-numa node' option

The parameter allows to configure fake NUMA topology where guest
VM simulates NUMA topology but not actually getting performance
benefits from it. The same or better results could be achieved
using 'memdev' parameter.
Beside of unpredictable performance, '-numa node.mem' option has
other issues when it's used with combination of -mem-path +
+ -mem-prealloc + memdev backends (pc-dimm), breaking binding of
memdev backends since mem-path/mem-prealloc are global and affect
the most of RAM allocations.

It's possible to make memdevs and global -mem-path/mem-prealloc
to play nicely together but that will just complicate already
complicated code and add unobious ways it could break on 2
different memmory allocation pathes and their combinations.

Instead of it, consolidate all guest RAM allocation over memdev
which still allows to create fake NUMA configurations if desired
and leaves one simplifyed code path to consider when it comes
to guest RAM allocation.

To achieve desired simplification deprecate 'mem' parameter as its
ad-hoc partitioning of initial RAM MemoryRegion can't be translated
to memdev based backend transparently to users and in compatible
manner (migration wise).

Later down the road that will allow to consolidate means of how
guest RAM is allocated and would permit us to clean up quite
a bit memory allocations and numa code, leaving only 'memdev'
implementation in place.

Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Message-Id: <1559205199-233510-3-git-send-email-imammedo@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>

show more ...

cd5ff83310-Jun-2019 Igor Mammedov <imammedo@redhat.com>

machine: show if CLI option '-numa node,mem' is supported in QAPI schema

Legacy '-numa node,mem' option has a number of issues and mgmt often
defaults to it. Unfortunately it's no possible to replac

machine: show if CLI option '-numa node,mem' is supported in QAPI schema

Legacy '-numa node,mem' option has a number of issues and mgmt often
defaults to it. Unfortunately it's no possible to replace it with
an alternative '-numa memdev' without breaking migration compatibility.
What's possible though is to deprecate it, keeping option working with
old machine types only.

In order to help users to find out if being deprecated CLI option
'-numa node,mem' is still supported by particular machine type, add new
"numa-mem-supported" property to output of query-machines.

"numa-mem-supported" is set to 'true' for machines that currently support
NUMA, but it will be flipped to 'false' later on, once deprecation period
expires and kept 'true' only for old machine types that used to support
the legacy option so it won't break existing configuration that are using
it.

Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Message-Id: <1560172207-378962-1-git-send-email-imammedo@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>

show more ...

176d2cda12-Jun-2019 Like Xu <like.xu@linux.intel.com>

i386/cpu: Consolidate die-id validity in smp context

The field die_id (default as 0) and has_die_id are introduced to X86CPU.
Following the legacy smp check rules, the die_id validity is added to
th

i386/cpu: Consolidate die-id validity in smp context

The field die_id (default as 0) and has_die_id are introduced to X86CPU.
Following the legacy smp check rules, the die_id validity is added to
the same contexts as leagcy smp variables such as hmp_hotpluggable_cpus(),
machine_set_cpu_numa_node(), cpu_slot_to_string() and pc_cpu_pre_plug().

Acked-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Like Xu <like.xu@linux.intel.com>
Message-Id: <20190612084104.34984-4-like.xu@linux.intel.com>
Reviewed-by: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>

show more ...


/openbmc/qemu/hw/alpha/dp264.c
/openbmc/qemu/hw/arm/aspeed.c
/openbmc/qemu/hw/arm/fsl-imx6.c
/openbmc/qemu/hw/arm/fsl-imx6ul.c
/openbmc/qemu/hw/arm/fsl-imx7.c
/openbmc/qemu/hw/arm/highbank.c
/openbmc/qemu/hw/arm/mcimx6ul-evk.c
/openbmc/qemu/hw/arm/mcimx7d-sabre.c
/openbmc/qemu/hw/arm/raspi.c
/openbmc/qemu/hw/arm/realview.c
/openbmc/qemu/hw/arm/sabrelite.c
/openbmc/qemu/hw/arm/sbsa-ref.c
/openbmc/qemu/hw/arm/vexpress.c
/openbmc/qemu/hw/arm/virt.c
/openbmc/qemu/hw/arm/xlnx-zynqmp.c
machine-hmp-cmds.c
machine.c
/openbmc/qemu/hw/hppa/machine.c
/openbmc/qemu/hw/i386/acpi-build.c
/openbmc/qemu/hw/i386/kvmvapic.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/i386/xen/xen-hvm.c
/openbmc/qemu/hw/mips/boston.c
/openbmc/qemu/hw/mips/mips_malta.c
/openbmc/qemu/hw/openrisc/openrisc_sim.c
/openbmc/qemu/hw/ppc/e500.c
/openbmc/qemu/hw/ppc/mac_newworld.c
/openbmc/qemu/hw/ppc/mac_oldworld.c
/openbmc/qemu/hw/ppc/pnv.c
/openbmc/qemu/hw/ppc/prep.c
/openbmc/qemu/hw/ppc/spapr.c
/openbmc/qemu/hw/ppc/spapr_rtas.c
/openbmc/qemu/hw/riscv/sifive_e.c
/openbmc/qemu/hw/riscv/sifive_plic.c
/openbmc/qemu/hw/riscv/sifive_u.c
/openbmc/qemu/hw/riscv/spike.c
/openbmc/qemu/hw/riscv/virt.c
/openbmc/qemu/hw/s390x/s390-virtio-ccw.c
/openbmc/qemu/hw/s390x/sclp.c
/openbmc/qemu/hw/sparc/sun4m.c
/openbmc/qemu/hw/sparc64/sun4u.c
/openbmc/qemu/hw/xtensa/sim.c
/openbmc/qemu/hw/xtensa/xtfpga.c
/openbmc/qemu/include/hw/i386/pc.h
/openbmc/qemu/include/hw/i386/topology.h
/openbmc/qemu/qapi/machine.json
/openbmc/qemu/target/arm/cpu.c
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/i386/cpu.h
/openbmc/qemu/target/s390x/cpu.c
/openbmc/qemu/target/s390x/excp_helper.c
/openbmc/qemu/target/s390x/kvm.c
/openbmc/qemu/vl.c

1...<<31323334353637383940>>...61