Back in 2016, we discussed[1] 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. This series fixes violations of rule 2. I may have split patches too aggressively. Let me know if you want some squashed together. v4: * PATCH 01-03: New * PATCH 04-15: Previous version redone with scripts/clean-includes, result split up for review * PATCH 16-19: New v3: * Rebased, old PATCH 1+2+4 are in master as commit 881e019770..f07ceffdf5 * PATCH 1: Fix bsd-user v2: * Rebased * PATCH 3: v1 posted separately * PATCH 4: New [1] Message-ID: <87h9g8j57d....@blackfin.pond.sub.org> https://lists.nongnu.org/archive/html/qemu-devel/2016-03/msg03345.html Markus Armbruster (19): scripts/clean-includes: Fully skip / ignore files scripts/clean-includes: Don't claim duplicate headers found when not scripts/clean-includes: Skip symbolic links bsd-user: Clean up includes crypto: Clean up includes hw/cxl: Clean up includes hw/input: Clean up includes hw/tricore: Clean up includes qga: Clean up includes migration: Clean up includes net: Clean up includes target/hexagon: Clean up includes riscv: Clean up includes block: Clean up includes accel: Clean up includes Fix non-first inclusions of qemu/osdep.h Don't include headers already included by qemu/osdep.h 9p: Drop superfluous include of linux/limits.h Drop duplicate #include backends/tpm/tpm_ioctl.h | 2 -- bsd-user/bsd-proc.h | 4 ---- bsd-user/qemu.h | 1 - crypto/block-luks-priv.h | 1 - fsdev/p9array.h | 2 -- include/block/graph-lock.h | 1 - include/block/write-threshold.h | 2 -- include/hw/arm/fsl-imx6ul.h | 1 - include/hw/arm/fsl-imx7.h | 1 - include/hw/cxl/cxl_component.h | 2 -- include/hw/cxl/cxl_host.h | 1 - include/hw/cxl/cxl_pci.h | 1 - include/hw/input/pl050.h | 1 - include/hw/misc/aspeed_lpc.h | 2 -- include/hw/pci/pcie_doe.h | 1 - include/hw/tricore/triboard.h | 1 - include/qemu/async-teardown.h | 2 -- include/qemu/dbus.h | 1 - include/qemu/host-utils.h | 1 - include/qemu/userfaultfd.h | 1 - include/sysemu/accel-blocker.h | 1 - include/sysemu/event-loop-base.h | 1 - net/vmnet_int.h | 1 - qga/cutils.h | 2 -- target/hexagon/hex_arch_types.h | 1 - target/hexagon/mmvec/macros.h | 1 - target/riscv/pmu.h | 1 - accel/tcg/cpu-exec.c | 1 - audio/sndioaudio.c | 2 +- backends/hostmem-epc.c | 2 +- backends/tpm/tpm_emulator.c | 1 - block/export/vduse-blk.c | 2 +- block/qapi.c | 1 - bsd-user/arm/signal.c | 1 + bsd-user/arm/target_arch_cpu.c | 2 ++ bsd-user/freebsd/os-sys.c | 1 + bsd-user/i386/signal.c | 1 + bsd-user/i386/target_arch_cpu.c | 3 +-- bsd-user/main.c | 4 +--- bsd-user/strace.c | 1 - bsd-user/x86_64/signal.c | 1 + bsd-user/x86_64/target_arch_cpu.c | 3 +-- hw/9pfs/9p.c | 5 ----- hw/acpi/piix4.c | 1 - hw/alpha/dp264.c | 1 - hw/arm/virt.c | 1 - hw/arm/xlnx-versal.c | 1 - hw/block/pflash_cfi01.c | 1 - hw/core/machine.c | 1 - hw/display/virtio-gpu-udmabuf.c | 1 - hw/hppa/machine.c | 1 - hw/hyperv/syndbg.c | 2 +- hw/i2c/pmbus_device.c | 1 - hw/i386/acpi-build.c | 1 - hw/input/tsc210x.c | 1 - hw/loongarch/acpi-build.c | 1 - hw/misc/macio/cuda.c | 1 - hw/misc/macio/pmu.c | 1 - hw/net/xilinx_axienet.c | 1 - hw/ppc/ppc405_uc.c | 2 -- hw/ppc/ppc440_bamboo.c | 1 - hw/ppc/spapr_drc.c | 1 - hw/rdma/vmw/pvrdma_dev_ring.c | 1 - hw/remote/machine.c | 1 - hw/remote/proxy-memory-listener.c | 1 - hw/remote/remote-obj.c | 1 - hw/rtc/mc146818rtc.c | 1 - hw/s390x/virtio-ccw-serial.c | 1 - hw/sensor/adm1272.c | 1 - hw/usb/dev-storage-bot.c | 1 - hw/usb/dev-storage-classic.c | 1 - migration/postcopy-ram.c | 2 -- qga/commands-posix.c | 1 - qga/cutils.c | 3 ++- softmmu/dirtylimit.c | 1 - softmmu/runstate.c | 1 - softmmu/vl.c | 3 --- target/loongarch/translate.c | 1 - target/mips/tcg/translate.c | 1 - target/nios2/translate.c | 2 -- tcg/tci.c | 1 - tests/unit/test-cutils.c | 1 - tests/unit/test-seccomp.c | 1 - ui/gtk.c | 1 - ui/udmabuf.c | 1 - util/async-teardown.c | 12 ++++-------- util/main-loop.c | 1 - util/oslib-posix.c | 6 ------ scripts/clean-includes | 15 ++++++++++----- 89 files changed, 29 insertions(+), 123 deletions(-) -- 2.39.0