From: Markus Armbruster <armbru@redhat.com>
To: qemu-devel@nongnu.org
Cc: peter.maydell@linaro.org, pbonzini@redhat.com
Subject: [Qemu-devel] [RFC v4 0/7] Baby steps towards saner headers
Date: Thu, 23 May 2019 10:15:31 +0200 [thread overview]
Message-ID: <20190523081538.2291-1-armbru@redhat.com> (raw)
Back in 2016, we discussed rules for headers, and these were
generally liked:
1. Have a carefully curated header that's included everywhere first. We
got that already thanks to Peter: osdep.h.
2. Headers should normally include everything they need beyond osdep.h.
If exceptions are needed for some reason, they must be documented in
the header. If all that's needed from a header is typedefs, put
those into qemu/typedefs.h instead of including the header.
3. Cyclic inclusion is forbidden.
Message-ID: <87h9g8j57d.fsf@blackfin.pond.sub.org>
http://lists.nongnu.org/archive/html/qemu-devel/2016-03/msg03345.html
Trouble is we're not exactly close to obeying 2. This series
demonstrates a possible path towards obeying it: enforce it in "make
check", except for known-bad headers. We can then whittle down
known-bad headers step by step in future patches.
PATCH 1-4 are preparatory build system improvements. I think they are
useful by themselves. If reviewers agree, I can extract them into
their own non-RFC series.
PATCH 5 adds the tests, but only for include/. 764 headers, 179
known-bad. We may decide to clean up include/ some before we apply
PATCH 6+7.
PATCH 6 extends them to all headers, except for generated ones. Adds
797 headers, 409 known-bad.
PATCH 7 extends them to generated headers. Adds 177 headers, 3
known-bad.
Known issues:
(1) More testing needed.
(2) PATCH 7 has a FIXME on computation of generated target-dependent
headers.
(3) Some "known-bad" headers aren't actually bad, but intended for
special configurations only. The test should be taught how to
test these correctly.
We obviously want (1) before we merge the test.
I think we can and should address (3) when we whittle down known-bad
headers in future patches.
I think leaving PATCH 6-7 for later would make sense. No need to
crack (2) right now then.
Please have a look and tell me what you think.
v4:
* PATCH 1-4: New.
* PATCH 5:
- Implement testing of target-dependent headers
- Replace crude "expected to fail with WIN32" by a set of "expected
to fail without FOO".
* Old PATCH 3-5: Dropped. These were examples for whittling down
known-bad headers.
v3:
* Old PATH 1 moved to another series
* PATCH 1:
- Skip the test unless $(SRC_PATH)/.git exists
- Exclude third-party headers [Peter]
- Exclude Coccinelle header
- Fix egrep vs. fgrep typos
- Mark and exclude headers that die due to poison.h, because testing
them isn't implemented, yet
- tests/header-test-template.c not omitted (d'oh)
* PATCH 3: Replaced
* PATCH 5: New
v2:
* PATCH 2:
- Use fixed-format FIXME comments in headers instead of a blacklist
in the makefile [Paolo]
- Make target check-source [Peter]
- Special-case CONFIG_WIN32
* PATCH 3:
- replaced by an unrelated one that makes actual sense (I hope)
Markus Armbruster (7):
Makefile: Remove code to smooth transition to config.status
Makefile: Drop bogus cleaning of $(ALL_SUBDIRS)/qemu-options.def
Makefile: Rename targets for make recursion
Makefile: Reuse all's recursion machinery for clean and install
tests: New make target check-source
tests: Don't limit check-headers to include/
tests: Make check-source cover generated headers
Makefile | 75 +++++++++++-----------
Makefile.target | 19 ++++++
accel/tcg/atomic_template.h | 3 +
accel/tcg/tcg-runtime.h | 3 +
accel/tcg/translate-all.h | 4 ++
audio/audio_int.h | 2 +
audio/audio_template.h | 2 +
audio/audio_win_int.h | 2 +
audio/dsound_template.h | 3 +
audio/mixeng_template.h | 2 +
audio/rate_template.h | 2 +
block/crypto.h | 2 +
block/qcow2.h | 2 +
block/vhdx.h | 2 +
bsd-user/i386/target_signal.h | 3 +
bsd-user/i386/target_syscall.h | 2 +
bsd-user/qemu.h | 4 ++
bsd-user/sparc/target_signal.h | 3 +
bsd-user/sparc/target_syscall.h | 2 +
bsd-user/sparc64/target_signal.h | 3 +
bsd-user/sparc64/target_syscall.h | 2 +
bsd-user/syscall_defs.h | 2 +
bsd-user/x86_64/target_signal.h | 3 +
bsd-user/x86_64/target_syscall.h | 2 +
configure | 6 +-
contrib/ivshmem-client/ivshmem-client.h | 2 +
contrib/ivshmem-server/ivshmem-server.h | 2 +
contrib/libvhost-user/libvhost-user-glib.h | 2 +
contrib/libvhost-user/libvhost-user.h | 2 +
contrib/rdmacm-mux/rdmacm-mux.h | 2 +
crypto/afalgpriv.h | 2 +
crypto/cipherpriv.h | 2 +
crypto/hashpriv.h | 2 +
crypto/hmacpriv.h | 2 +
disas/nanomips.h | 2 +
fpu/softfloat-specialize.h | 3 +
fsdev/file-op-9p.h | 2 +
fsdev/qemu-fsdev.h | 3 +
hw/9pfs/9p-local.h | 2 +
hw/9pfs/9p-proxy.h | 2 +
hw/9pfs/9p-synth.h | 2 +
hw/9pfs/9p-util.h | 2 +
hw/9pfs/9p-xattr.h | 2 +
hw/9pfs/9p.h | 2 +
hw/9pfs/coth.h | 2 +
hw/9pfs/virtio-9p.h | 2 +
hw/9pfs/xen-9pfs.h | 3 +-
hw/arm/smmu-internal.h | 2 +
hw/arm/smmuv3-internal.h | 2 +
hw/audio/hda-codec-common.h | 3 +-
hw/audio/lm4549.h | 2 +
hw/block/dataplane/xen-block.h | 2 +
hw/block/nvme.h | 2 +
hw/block/xen_blkif.h | 2 +
hw/cris/boot.h | 2 +
hw/display/ati_int.h | 2 +
hw/display/cirrus_vga_internal.h | 2 +
hw/display/cirrus_vga_rop.h | 2 +
hw/display/cirrus_vga_rop2.h | 2 +
hw/display/framebuffer.h | 2 +
hw/display/milkymist-vgafb_template.h | 3 +-
hw/display/omap_lcd_template.h | 3 +
hw/display/pl110_template.h | 2 +
hw/display/pxa2xx_template.h | 2 +
hw/display/qxl.h | 4 ++
hw/display/sm501_template.h | 2 +
hw/display/tc6393xb_template.h | 2 +
hw/display/vga-helpers.h | 2 +
hw/display/vga_int.h | 2 +
hw/ide/ahci_internal.h | 2 +
hw/input/adb-internal.h | 2 +
hw/lm32/lm32.h | 2 +
hw/lm32/lm32_hwsetup.h | 3 +
hw/lm32/milkymist-hw.h | 2 +
hw/microblaze/boot.h | 2 +
hw/net/can/can_sja1000.h | 3 +
hw/net/e1000e_core.h | 2 +
hw/net/e1000x_common.h | 2 +
hw/net/pcnet.h | 2 +
hw/net/rocker/rocker_desc.h | 2 +
hw/net/rocker/rocker_fp.h | 2 +
hw/net/rocker/rocker_of_dpa.h | 2 +
hw/net/rocker/rocker_tlv.h | 2 +
hw/net/rocker/rocker_world.h | 2 +
hw/net/vmware_utils.h | 2 +
hw/net/vmxnet3_defs.h | 3 +-
hw/nios2/boot.h | 3 +
hw/ppc/ppc405.h | 2 +
hw/ppc/ppc440.h | 2 +
hw/rdma/rdma_backend.h | 2 +
hw/rdma/rdma_backend_defs.h | 2 +
hw/rdma/rdma_rm.h | 2 +
hw/rdma/rdma_rm_defs.h | 2 +
hw/rdma/vmw/pvrdma.h | 2 +
hw/rdma/vmw/pvrdma_dev_ring.h | 2 +
hw/rdma/vmw/pvrdma_qp_ops.h | 2 +
hw/s390x/ccw-device.h | 3 +
hw/s390x/ipl.h | 3 +
hw/s390x/s390-pci-bus.h | 3 +
hw/s390x/s390-pci-inst.h | 3 +
hw/s390x/s390-virtio-hcall.h | 2 +
hw/s390x/virtio-ccw.h | 3 +
hw/scsi/mptsas.h | 2 +
hw/scsi/viosrp.h | 3 +
hw/sd/sdhci-internal.h | 3 +
hw/timer/m48t59-internal.h | 2 +
hw/tpm/tpm_ioctl.h | 2 +
hw/usb/desc.h | 2 +
hw/usb/hcd-ohci.h | 2 +
hw/usb/hcd-xhci.h | 2 +
hw/usb/quirks.h | 2 +
hw/vfio/pci.h | 3 +
hw/xen/xen_pt.h | 2 +
hw/xtensa/bootparam.h | 2 +
hw/xtensa/xtensa_memory.h | 3 +
include/block/raw-aio.h | 3 +
include/block/write-threshold.h | 3 +
include/chardev/char-win.h | 3 +
include/chardev/spice.h | 2 +
include/disas/disas.h | 2 +
include/exec/cpu-all.h | 4 ++
include/exec/cpu-defs.h | 4 ++
include/exec/cpu_ldst.h | 4 ++
include/exec/cpu_ldst_template.h | 3 +
include/exec/cpu_ldst_useronly_template.h | 3 +
include/exec/cputlb.h | 3 +
include/exec/exec-all.h | 3 +
include/exec/gen-icount.h | 2 +
include/exec/helper-gen.h | 2 +
include/exec/helper-proto.h | 2 +
include/exec/helper-tcg.h | 2 +
include/exec/ioport.h | 2 +
include/exec/memory-internal.h | 2 +
include/exec/memory_ldst.inc.h | 2 +
include/exec/memory_ldst_cached.inc.h | 2 +
include/exec/memory_ldst_phys.inc.h | 2 +
include/exec/ram_addr.h | 3 +
include/exec/softmmu-semi.h | 3 +
include/exec/tb-hash.h | 3 +
include/exec/tb-lookup.h | 3 +
include/exec/translator.h | 3 +
include/exec/user/abitypes.h | 2 +
include/exec/user/thunk.h | 4 ++
include/fpu/softfloat-macros.h | 2 +
include/fpu/softfloat.h | 2 +
include/hw/acpi/piix4.h | 2 +
include/hw/acpi/tco.h | 3 +
include/hw/adc/stm32f2xx_adc.h | 2 +
include/hw/arm/allwinner-a10.h | 2 +
include/hw/arm/armsse.h | 3 +
include/hw/arm/armv7m.h | 3 +
include/hw/arm/aspeed_soc.h | 2 +
include/hw/arm/bcm2835_peripherals.h | 2 +
include/hw/arm/bcm2836.h | 2 +
include/hw/arm/digic.h | 3 +
include/hw/arm/fsl-imx25.h | 2 +
include/hw/arm/fsl-imx31.h | 2 +
include/hw/arm/fsl-imx6.h | 3 +
include/hw/arm/fsl-imx6ul.h | 3 +
include/hw/arm/fsl-imx7.h | 3 +
include/hw/arm/msf2-soc.h | 3 +
include/hw/arm/nrf51_soc.h | 3 +
include/hw/arm/omap.h | 3 +
include/hw/arm/sharpsl.h | 3 +
include/hw/arm/stm32f205_soc.h | 3 +
include/hw/arm/xlnx-zynqmp.h | 2 +
include/hw/block/fdc.h | 2 +
include/hw/block/flash.h | 2 +
include/hw/char/escc.h | 2 +
include/hw/char/xilinx_uartlite.h | 2 +
include/hw/core/generic-loader.h | 2 +
include/hw/cris/etraxfs.h | 2 +
include/hw/cris/etraxfs_dma.h | 2 +
include/hw/display/bcm2835_fb.h | 2 +
include/hw/display/i2c-ddc.h | 2 +
include/hw/display/xlnx_dp.h | 2 +
include/hw/dma/xlnx_dpdma.h | 2 +
include/hw/elf_ops.h | 2 +
include/hw/empty_slot.h | 2 +
include/hw/gpio/bcm2835_gpio.h | 2 +
include/hw/hyperv/hyperv.h | 2 +
include/hw/i2c/aspeed_i2c.h | 3 +
include/hw/i386/apic_internal.h | 3 +
include/hw/i386/ioapic_internal.h | 2 +
include/hw/input/hid.h | 2 +
include/hw/input/tsc2xxx.h | 2 +
include/hw/intc/allwinner-a10-pic.h | 2 +
include/hw/intc/armv7m_nvic.h | 3 +
include/hw/intc/heathrow_pic.h | 2 +
include/hw/intc/mips_gic.h | 3 +
include/hw/isa/vt82c686.h | 2 +
include/hw/kvm/clock.h | 4 +-
include/hw/mips/bios.h | 2 +
include/hw/mips/cps.h | 3 +
include/hw/mips/cpudevs.h | 2 +
include/hw/misc/bcm2835_property.h | 2 +
include/hw/misc/macio/cuda.h | 2 +
include/hw/misc/macio/gpio.h | 2 +
include/hw/misc/macio/macio.h | 2 +
include/hw/misc/macio/pmu.h | 2 +
include/hw/misc/mips_cmgcr.h | 2 +
include/hw/misc/mips_cpc.h | 2 +
include/hw/misc/pvpanic.h | 3 +
include/hw/net/allwinner_emac.h | 2 +
include/hw/net/lance.h | 2 +
include/hw/nvram/chrp_nvram.h | 2 +
include/hw/pci-bridge/simba.h | 2 +
include/hw/pci-host/sabre.h | 2 +
include/hw/pci-host/spapr.h | 3 +
include/hw/pci-host/uninorth.h | 2 +
include/hw/pci/pcie_aer.h | 2 +
include/hw/ppc/fdt.h | 2 +
include/hw/ppc/pnv.h | 2 +
include/hw/ppc/pnv_core.h | 2 +
include/hw/ppc/pnv_xscom.h | 2 +
include/hw/ppc/ppc.h | 2 +
include/hw/ppc/ppc4xx.h | 2 +
include/hw/ppc/spapr.h | 3 +
include/hw/ppc/spapr_cpu_core.h | 4 ++
include/hw/ppc/spapr_irq.h | 2 +
include/hw/ppc/spapr_ovec.h | 2 +
include/hw/ppc/spapr_vio.h | 2 +
include/hw/ppc/spapr_xive.h | 2 +
include/hw/ppc/xics_spapr.h | 3 +
include/hw/ppc/xive_regs.h | 2 +
include/hw/riscv/riscv_hart.h | 2 +
include/hw/riscv/riscv_htif.h | 3 +
include/hw/riscv/sifive_clint.h | 2 +
include/hw/riscv/sifive_e.h | 2 +
include/hw/riscv/sifive_plic.h | 2 +
include/hw/riscv/sifive_prci.h | 2 +
include/hw/riscv/sifive_test.h | 2 +
include/hw/riscv/sifive_u.h | 2 +
include/hw/riscv/sifive_uart.h | 2 +
include/hw/riscv/spike.h | 2 +
include/hw/riscv/virt.h | 2 +
include/hw/s390x/3270-ccw.h | 3 +
include/hw/s390x/ap-device.h | 3 +
include/hw/s390x/css-bridge.h | 2 +
include/hw/s390x/css.h | 3 +
include/hw/s390x/s390-ccw.h | 3 +
include/hw/s390x/storage-attributes.h | 3 +
include/hw/s390x/tod.h | 2 +
include/hw/s390x/vfio-ccw.h | 3 +
include/hw/sh4/sh.h | 2 +
include/hw/sh4/sh_intc.h | 2 +
include/hw/sparc/grlib.h | 2 +
include/hw/sparc/sparc64.h | 1 +
include/hw/ssi/aspeed_smc.h | 2 +
include/hw/ssi/xilinx_spips.h | 2 +
include/hw/timer/allwinner-a10-pit.h | 2 +
include/hw/timer/i8254_internal.h | 2 +
include/hw/timer/m48t59.h | 2 +
include/hw/timer/mc146818rtc.h | 2 +
include/hw/timer/mc146818rtc_regs.h | 2 +
include/hw/timer/sun4v-rtc.h | 2 +
include/hw/timer/xlnx-zynqmp-rtc.h | 2 +
include/hw/vfio/vfio-amd-xgbe.h | 2 +
include/hw/vfio/vfio-calxeda-xgmac.h | 2 +
include/hw/vfio/vfio-common.h | 2 +
include/hw/vfio/vfio-platform.h | 2 +
include/hw/virtio/virtio-access.h | 3 +
include/hw/virtio/virtio-gpu.h | 2 +
include/hw/virtio/virtio-input.h | 2 +
include/hw/virtio/virtio-rng.h | 2 +
include/hw/xen/io/ring.h | 2 +
include/hw/xen/xen-backend.h | 2 +
include/hw/xen/xen-block.h | 2 +
include/hw/xen/xen-bus-helper.h | 2 +
include/hw/xen/xen-bus.h | 2 +
include/hw/xen/xen-legacy-backend.h | 2 +
include/hw/xen/xen_common.h | 2 +
include/hw/xen/xen_pvdev.h | 2 +
include/libdecnumber/decNumberLocal.h | 2 +
include/migration/cpu.h | 4 ++
include/monitor/hmp-target.h | 3 +
include/qemu/atomic128.h | 2 +
include/qemu/futex.h | 2 +
include/qemu/ratelimit.h | 2 +
include/qemu/thread-win32.h | 2 +
include/qemu/xattr.h | 3 +
include/sysemu/balloon.h | 2 +
include/sysemu/cryptodev-vhost-user.h | 3 +
include/sysemu/dump.h | 2 +
include/sysemu/hvf.h | 3 +
include/sysemu/iothread.h | 2 +
include/sysemu/kvm_int.h | 2 +
include/sysemu/memory_mapping.h | 2 +
include/sysemu/os-posix.h | 2 +
include/sysemu/os-win32.h | 2 +
include/sysemu/xen-mapcache.h | 2 +
include/trace-tcg.h | 2 +
include/ui/console.h | 2 +
include/ui/egl-context.h | 3 +
include/ui/egl-helpers.h | 2 +
include/ui/gtk.h | 2 +
include/ui/input.h | 2 +
include/ui/pixel_ops.h | 2 +
include/ui/qemu-pixman.h | 2 +
include/ui/sdl2.h | 2 +
include/ui/shader.h | 2 +
include/ui/spice-display.h | 2 +
linux-user/aarch64/target_cpu.h | 3 +
linux-user/aarch64/target_fcntl.h | 3 +
linux-user/aarch64/target_signal.h | 2 +
linux-user/aarch64/target_structs.h | 3 +
linux-user/aarch64/target_syscall.h | 3 +
linux-user/aarch64/termbits.h | 2 +
linux-user/alpha/target_cpu.h | 3 +
linux-user/alpha/target_fcntl.h | 3 +
linux-user/alpha/target_signal.h | 2 +
linux-user/alpha/target_structs.h | 3 +
linux-user/alpha/target_syscall.h | 2 +
linux-user/alpha/termbits.h | 2 +
linux-user/arm/nwfpe/fpa11.h | 3 +
linux-user/arm/nwfpe/fpopcode.h | 2 +
linux-user/arm/target_cpu.h | 3 +
linux-user/arm/target_fcntl.h | 3 +
linux-user/arm/target_signal.h | 2 +
linux-user/arm/target_structs.h | 3 +
linux-user/arm/target_syscall.h | 3 +
linux-user/arm/termbits.h | 2 +
linux-user/cpu_loop-common.h | 3 +
linux-user/cris/target_cpu.h | 3 +
linux-user/cris/target_fcntl.h | 3 +
linux-user/cris/target_signal.h | 2 +
linux-user/cris/target_structs.h | 3 +
linux-user/cris/termbits.h | 2 +
linux-user/fd-trans.h | 2 +
linux-user/flat.h | 2 +
linux-user/generic/fcntl.h | 3 +
linux-user/host/aarch64/hostdep.h | 2 +
linux-user/host/arm/hostdep.h | 2 +
linux-user/host/i386/hostdep.h | 2 +
linux-user/host/ppc64/hostdep.h | 2 +
linux-user/host/riscv64/hostdep.h | 2 +
linux-user/host/s390x/hostdep.h | 2 +
linux-user/host/x86_64/hostdep.h | 2 +
linux-user/hppa/target_cpu.h | 3 +
linux-user/hppa/target_fcntl.h | 3 +
linux-user/hppa/target_signal.h | 2 +
linux-user/hppa/target_structs.h | 3 +
linux-user/hppa/target_syscall.h | 2 +
linux-user/hppa/termbits.h | 2 +
linux-user/i386/target_cpu.h | 3 +
linux-user/i386/target_fcntl.h | 3 +
linux-user/i386/target_signal.h | 2 +
linux-user/i386/target_structs.h | 3 +
linux-user/i386/target_syscall.h | 2 +
linux-user/i386/termbits.h | 2 +
linux-user/ioctls.h | 2 +
linux-user/linux_loop.h | 2 +
linux-user/m68k/target_cpu.h | 2 +
linux-user/m68k/target_elf.h | 2 +
linux-user/m68k/target_fcntl.h | 3 +
linux-user/m68k/target_signal.h | 2 +
linux-user/m68k/target_structs.h | 3 +
linux-user/m68k/target_syscall.h | 2 +
linux-user/m68k/termbits.h | 2 +
linux-user/microblaze/target_cpu.h | 3 +
linux-user/microblaze/target_fcntl.h | 3 +
linux-user/microblaze/target_signal.h | 2 +
linux-user/microblaze/target_structs.h | 3 +
linux-user/microblaze/termbits.h | 2 +
linux-user/mips/target_cpu.h | 3 +
linux-user/mips/target_elf.h | 2 +
linux-user/mips/target_fcntl.h | 3 +
linux-user/mips/target_signal.h | 3 +
linux-user/mips/target_structs.h | 3 +
linux-user/mips/target_syscall.h | 2 +
linux-user/mips/termbits.h | 2 +
linux-user/mips64/syscall_nr.h | 2 +
linux-user/mips64/target_cpu.h | 3 +
linux-user/mips64/target_elf.h | 2 +
linux-user/mips64/target_fcntl.h | 3 +
linux-user/mips64/target_signal.h | 2 +
linux-user/mips64/target_structs.h | 2 +
linux-user/mips64/target_syscall.h | 2 +
linux-user/mips64/termbits.h | 2 +
linux-user/nios2/target_cpu.h | 2 +
linux-user/nios2/target_fcntl.h | 3 +
linux-user/nios2/target_signal.h | 2 +
linux-user/nios2/target_structs.h | 3 +
linux-user/nios2/termbits.h | 2 +
linux-user/openrisc/target_cpu.h | 2 +
linux-user/openrisc/target_fcntl.h | 3 +
linux-user/openrisc/target_signal.h | 2 +
linux-user/openrisc/target_structs.h | 3 +
linux-user/openrisc/target_syscall.h | 3 +
linux-user/openrisc/termbits.h | 2 +
linux-user/ppc/syscall_nr.h | 3 +
linux-user/ppc/target_cpu.h | 4 ++
linux-user/ppc/target_elf.h | 2 +
linux-user/ppc/target_fcntl.h | 3 +
linux-user/ppc/target_signal.h | 3 +
linux-user/ppc/target_structs.h | 3 +
linux-user/ppc/target_syscall.h | 3 +
linux-user/ppc/termbits.h | 2 +
linux-user/qemu.h | 2 +
linux-user/riscv/target_cpu.h | 2 +
linux-user/riscv/target_fcntl.h | 3 +
linux-user/riscv/target_signal.h | 2 +
linux-user/riscv/target_structs.h | 3 +
linux-user/riscv/target_syscall.h | 2 +
linux-user/riscv/termbits.h | 2 +
linux-user/s390x/syscall_nr.h | 2 +
linux-user/s390x/target_cpu.h | 3 +
linux-user/s390x/target_fcntl.h | 3 +
linux-user/s390x/target_signal.h | 2 +
linux-user/s390x/target_structs.h | 3 +
linux-user/s390x/target_syscall.h | 2 +
linux-user/s390x/termbits.h | 2 +
linux-user/sh4/target_cpu.h | 3 +
linux-user/sh4/target_fcntl.h | 3 +
linux-user/sh4/target_signal.h | 2 +
linux-user/sh4/target_structs.h | 3 +
linux-user/sh4/target_syscall.h | 2 +
linux-user/sh4/termbits.h | 2 +
linux-user/signal-common.h | 3 +
linux-user/socket.h | 2 +
linux-user/sparc/target_cpu.h | 4 ++
linux-user/sparc/target_elf.h | 2 +
linux-user/sparc/target_fcntl.h | 3 +
linux-user/sparc/target_signal.h | 2 +
linux-user/sparc/target_structs.h | 3 +
linux-user/sparc/target_syscall.h | 2 +
linux-user/sparc/termbits.h | 2 +
linux-user/sparc64/target_cpu.h | 3 +
linux-user/sparc64/target_fcntl.h | 3 +
linux-user/sparc64/target_signal.h | 2 +
linux-user/sparc64/target_structs.h | 3 +
linux-user/sparc64/target_syscall.h | 3 +
linux-user/sparc64/termbits.h | 2 +
linux-user/syscall_defs.h | 2 +
linux-user/syscall_types.h | 2 +
linux-user/tilegx/target_cpu.h | 3 +
linux-user/tilegx/target_fcntl.h | 3 +
linux-user/tilegx/target_signal.h | 2 +
linux-user/tilegx/target_structs.h | 3 +
linux-user/tilegx/target_syscall.h | 2 +
linux-user/uname.h | 2 +
linux-user/x86_64/target_cpu.h | 3 +
linux-user/x86_64/target_fcntl.h | 3 +
linux-user/x86_64/target_signal.h | 2 +
linux-user/x86_64/target_structs.h | 3 +
linux-user/x86_64/target_syscall.h | 2 +
linux-user/x86_64/termbits.h | 2 +
linux-user/xtensa/target_cpu.h | 3 +
linux-user/xtensa/target_elf.h | 2 +
linux-user/xtensa/target_fcntl.h | 3 +
linux-user/xtensa/target_signal.h | 2 +
linux-user/xtensa/target_structs.h | 3 +
linux-user/xtensa/target_syscall.h | 2 +
linux-user/xtensa/termbits.h | 2 +
migration/postcopy-ram.h | 3 +
migration/qemu-file.h | 2 +
net/colo-compare.h | 2 +
qemu-options-wrapper.h | 1 +
qga/guest-agent-core.h | 3 +
qga/service-win32.h | 2 +
qga/vss-win32.h | 2 +
qga/vss-win32/install.h | 2 +
qga/vss-win32/requester.h | 2 +
qga/vss-win32/vss-common.h | 2 +
replay/replay-internal.h | 2 +
replication.h | 2 +
target/alpha/cpu.h | 3 +
target/alpha/helper.h | 2 +
target/arm/arm-powerctl.h | 3 +
target/arm/arm_ldst.h | 3 +
target/arm/cpu.h | 3 +
target/arm/helper-a64.h | 3 +
target/arm/helper-sve.h | 2 +
target/arm/helper.h | 3 +
target/arm/internals.h | 2 +
target/arm/kvm-consts.h | 4 ++
target/arm/kvm_arm.h | 3 +
target/arm/op_addsub.h | 2 +
target/arm/translate-a64.h | 2 +
target/arm/translate.h | 3 +
target/cris/cpu.h | 3 +
target/cris/helper.h | 2 +
target/cris/mmu.h | 2 +
target/hppa/cpu.h | 3 +
target/hppa/helper.h | 2 +
target/i386/cc_helper_template.h | 2 +
target/i386/cpu-qom.h | 3 +
target/i386/cpu.h | 3 +
target/i386/hax-i386.h | 3 +
target/i386/hax-posix.h | 2 +
target/i386/hax-windows.h | 2 +
target/i386/helper.h | 3 +
target/i386/hvf/hvf-i386.h | 3 +
target/i386/hvf/vmcs.h | 2 +
target/i386/hvf/vmx.h | 2 +
target/i386/hvf/x86.h | 2 +
target/i386/hvf/x86_decode.h | 3 +
target/i386/hvf/x86_descr.h | 2 +
target/i386/hvf/x86_emu.h | 3 +
target/i386/hvf/x86_flags.h | 3 +
target/i386/hvf/x86_mmu.h | 2 +
target/i386/hvf/x86_task.h | 2 +
target/i386/hvf/x86hvf.h | 4 ++
target/i386/hyperv.h | 3 +
target/i386/kvm_i386.h | 3 +
target/i386/ops_sse.h | 3 +
target/i386/ops_sse_header.h | 4 ++
target/i386/sev_i386.h | 3 +
target/i386/shift_helper_template.h | 2 +
target/i386/whp-dispatch.h | 2 +
target/lm32/cpu.h | 3 +
target/lm32/helper.h | 2 +
target/m68k/cpu.h | 3 +
target/m68k/helper.h | 3 +
target/m68k/softfloat.h | 2 +
target/m68k/softfloat_fpsp_tables.h | 2 +
target/microblaze/cpu.h | 3 +
target/microblaze/helper.h | 2 +
target/microblaze/mmu.h | 2 +
target/mips/cpu-qom.h | 3 +
target/mips/cpu.h | 3 +
target/mips/helper.h | 3 +
target/mips/internal.h | 3 +
target/mips/kvm_mips.h | 2 +
target/mips/mips-defs.h | 2 +
target/moxie/cpu.h | 3 +
target/moxie/helper.h | 2 +
target/moxie/machine.h | 2 +
target/moxie/mmu.h | 2 +
target/nios2/cpu.h | 3 +
target/nios2/helper.h | 2 +
target/nios2/mmu.h | 2 +
target/openrisc/cpu.h | 3 +
target/openrisc/exception.h | 3 +
target/openrisc/helper.h | 2 +
target/ppc/cpu-models.h | 3 +
target/ppc/cpu-qom.h | 3 +
target/ppc/cpu.h | 3 +
target/ppc/helper.h | 3 +
target/ppc/helper_regs.h | 3 +
target/ppc/internal.h | 3 +
target/ppc/kvm_ppc.h | 3 +
target/ppc/mmu-book3s-v3.h | 3 +
target/ppc/mmu-hash32.h | 2 +
target/ppc/mmu-hash64.h | 3 +
target/ppc/mmu-radix64.h | 3 +
target/riscv/cpu.h | 3 +
target/riscv/helper.h | 2 +
target/riscv/instmap.h | 2 +
target/riscv/pmp.h | 2 +
target/s390x/cpu.h | 2 +
target/s390x/cpu_features.h | 2 +
target/s390x/cpu_models.h | 2 +
target/s390x/helper.h | 2 +
target/s390x/internal.h | 2 +
target/s390x/tcg_s390x.h | 2 +
target/sh4/cpu.h | 3 +
target/sh4/helper.h | 2 +
target/sparc/cpu-qom.h | 3 +
target/sparc/cpu.h | 3 +
target/sparc/helper.h | 3 +
target/tilegx/cpu.h | 3 +
target/tilegx/helper.h | 2 +
target/tricore/cpu.h | 3 +
target/tricore/helper.h | 2 +
target/tricore/tricore-defs.h | 2 +
target/tricore/tricore-opcodes.h | 2 +
target/unicore32/cpu.h | 3 +
target/unicore32/helper.h | 2 +
target/xtensa/cpu.h | 3 +
target/xtensa/helper.h | 2 +
target/xtensa/overlay_tool.h | 3 +
target/xtensa/xtensa-isa-internal.h | 2 +
tcg/aarch64/tcg-target.h | 2 +
tcg/aarch64/tcg-target.opc.h | 3 +
tcg/arm/tcg-target.h | 2 +
tcg/i386/tcg-target.h | 3 +
tcg/i386/tcg-target.opc.h | 2 +
tcg/mips/tcg-target.h | 2 +
tcg/ppc/tcg-target.h | 2 +
tcg/riscv/tcg-target.h | 3 +
tcg/s390/tcg-target.h | 3 +
tcg/tcg-gvec-desc.h | 2 +
tcg/tcg-op-gvec.h | 2 +
tcg/tcg-op.h | 2 +
tcg/tcg-opc.h | 4 ++
tcg/tcg.h | 2 +
tcg/tci/tcg-target.h | 2 +
tests/Makefile.include | 35 +++++++++-
tests/check-headers.mak | 54 ++++++++++++++++
tests/crypto-tls-x509-helpers.h | 2 +
tests/fp/platform.h | 3 +
tests/header-test-template.c | 16 +++++
tests/libqos/virtio-9p.h | 2 +
tests/libqos/virtio-balloon.h | 2 +
tests/libqos/virtio-blk.h | 2 +
tests/libqos/virtio-net.h | 2 +
tests/libqos/virtio-rng.h | 2 +
tests/libqos/virtio-scsi.h | 2 +
tests/libqos/virtio-serial.h | 2 +
tests/migration/Makefile | 2 +
tests/migration/aarch64/a-b-kernel.h | 3 +
tests/migration/i386/a-b-bootblock.h | 3 +
tests/migration/s390x/a-b-bios.h | 2 +
tests/ptimer-test.h | 2 +
tests/socket-helpers.h | 3 +-
tests/tpm-emu.h | 2 +
tests/tpm-tests.h | 2 +
tests/tpm-util.h | 2 +
trace/control-internal.h | 2 +
trace/mem-internal.h | 2 +
trace/mem.h | 2 +
ui/curses_keys.h | 2 +
ui/vgafont.h | 2 +
ui/vnc-auth-sasl.h | 2 +
ui/vnc-auth-vencrypt.h | 2 +
ui/vnc-enc-hextile-template.h | 2 +
ui/vnc-jobs.h | 2 +
ui/vnc-ws.h | 2 +
ui/vnc.h | 2 +
ui/vnc_keysym.h | 1 +
ui/x_keymap.h | 2 +
util/qemu-thread-common.h | 2 +
win_dump.h | 2 +
624 files changed, 1623 insertions(+), 51 deletions(-)
create mode 100644 tests/check-headers.mak
create mode 100644 tests/header-test-template.c
--
2.17.2
next reply other threads:[~2019-05-23 8:33 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-23 8:15 Markus Armbruster [this message]
2019-05-23 8:15 ` [Qemu-devel] [RFC v4 1/7] Makefile: Remove code to smooth transition to config.status Markus Armbruster
2019-05-23 13:54 ` Richard Henderson
2019-05-24 5:15 ` Philippe Mathieu-Daudé
2019-05-24 11:50 ` Markus Armbruster
2019-05-23 8:15 ` [Qemu-devel] [RFC v4 2/7] Makefile: Drop bogus cleaning of $(ALL_SUBDIRS)/qemu-options.def Markus Armbruster
2019-05-23 13:56 ` Richard Henderson
2019-05-24 5:17 ` Philippe Mathieu-Daudé
2019-05-23 8:15 ` [Qemu-devel] [RFC v4 3/7] Makefile: Rename targets for make recursion Markus Armbruster
2019-05-23 14:10 ` Richard Henderson
2019-05-24 5:28 ` Philippe Mathieu-Daudé
2019-05-24 12:34 ` Markus Armbruster
2019-05-23 8:15 ` [Qemu-devel] [RFC v4 4/7] Makefile: Reuse all's recursion machinery for clean and install Markus Armbruster
2019-05-23 14:14 ` Richard Henderson
2019-05-23 8:15 ` [Qemu-devel] [RFC v4 5/7] tests: New make target check-source Markus Armbruster
2019-05-23 16:51 ` Paolo Bonzini
2019-05-23 19:57 ` Markus Armbruster
2019-05-24 16:25 ` Paolo Bonzini
2019-05-27 5:10 ` Markus Armbruster
2019-05-27 9:58 ` Paolo Bonzini
2019-05-24 5:49 ` Philippe Mathieu-Daudé
2019-05-24 12:36 ` Markus Armbruster
2019-05-23 8:15 ` [Qemu-devel] [RFC v4 6/7] tests: Don't limit check-headers to include/ Markus Armbruster
2019-05-24 7:24 ` Thomas Huth
2019-05-24 7:32 ` Philippe Mathieu-Daudé
2019-05-24 11:52 ` Markus Armbruster
2019-05-24 9:11 ` Peter Maydell
2019-05-24 12:25 ` Markus Armbruster
2019-05-24 12:29 ` Peter Maydell
2019-05-23 8:15 ` [Qemu-devel] [RFC v4 7/7] tests: Make check-source cover generated headers Markus Armbruster
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190523081538.2291-1-armbru@redhat.com \
--to=armbru@redhat.com \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.