From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 29B94A00C5; Tue, 15 Feb 2022 13:31:56 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 1841E410F3; Tue, 15 Feb 2022 13:31:56 +0100 (CET) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by mails.dpdk.org (Postfix) with ESMTP id A138B40E78 for ; Tue, 15 Feb 2022 13:31:54 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1644928314; x=1676464314; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=vhW0YFQKJWA5FppCfVYKuAKPcfM4nKT/eVs2wYAd97s=; b=UnCvciYW2YVeqTmfBPyEDmSlnQ6k3s7kv/20qSvXcUeE9rsDE1m+d7eP R+aDI/t1uu/Gvk/nVLYn8wyrX4BWLMBV3Yux9U548GSTKQWt3RBznp47O l48u5mb4eD3deqtZy3BAcn7uUQDd7dlaKo6sRWUCeAgjgAtoRdoltdoux VFgmimnWYZSevfZtt5FQMm6NZWUxPu1JwEd9V2CaxiEQELx2AmJr2PPg0 V1Y+Vpli9YUmVUCP271xhBwqn65HobGomar0wnLbdGkz2dpRGc7AzXDpt Uj8bm/qwgp2R4VKVjkf4MkURMN8K2e+DqUox3E1Bhaj85P2/+ZnZDM0bR A==; X-IronPort-AV: E=McAfee;i="6200,9189,10258"; a="247936520" X-IronPort-AV: E=Sophos;i="5.88,370,1635231600"; d="scan'208";a="247936520" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Feb 2022 04:31:53 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.88,370,1635231600"; d="scan'208";a="544280243" Received: from silpixa00401215.ir.intel.com ([10.55.128.96]) by orsmga008.jf.intel.com with ESMTP; 15 Feb 2022 04:31:52 -0800 From: Sean Morrissey To: Cc: dev@dpdk.org, Sean Morrissey Subject: [PATCH v9 00/50] introduce IWYU Date: Tue, 15 Feb 2022 12:29:47 +0000 Message-Id: <20220215123037.608981-1-sean.morrissey@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220214144406.4192233-1-sean.morrissey@intel.com> References: <20220214144406.4192233-1-sean.morrissey@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org This patchset introduces the include-what-you-use script which removes unused header includes. IWYU GitHub: https://github.com/include-what-you-use/include-what-you-use Along with the script there are some patches which make a start on removing unneeded headers. V4: * Re-added removed headers that are now needed in order to fix build issues. * Removed other unused headers from other libraries V5: * Fix build issues for RHEL 7. * Squash commits for overlapping libraries. V6: * Fix some Windows build issues. * Fix some RHEL 8 build issues. V7: * Further RHEL 8 and FreeBSD build issues fixed. V8: * Fix apply issues. V9: * Reintroduce headers flagged by maintainers. Sean Morrissey (50): devtools: script to remove unused headers includes telemetry: remove unneeded header includes ring: remove unneeded header includes kvargs: remove unneeded header includes eal: remove unneeded header includes vhost: remove unneeded header includes timer: remove unneeded header includes table: remove unneeded header includes stack: remove unneeded header includes security: remove unneeded header includes sched: remove unneeded header includes rib: remove unneeded header includes reorder: remove unneeded header includes regexdev: remove unneeded header includes rcu: remove unneeded header includes rawdev: remove unneeded header includes power: remove unneeded header includes port: remove unneeded header includes pipeline: remove unneeded header includes pdump: remove unneeded header includes pci: remove unneeded header includes pcapng: remove unneeded header includes node: remove unneeded header includes net: remove unneeded header includes metrics: remove unneeded header includes mempool: remove unneeded header includes member: remove unneeded header includes mbuf: remove unneeded header includes lpm: remove unneeded header includes latencystats: remove unneeded header includes kni: remove unneeded header includes jobstats: remove unneeded header includes ipsec: remove unneeded header includes ip_frag: remove unneeded header includes hash: remove unneeded header includes gro: remove unneeded header includes graph: remove unneeded header includes gpudev: remove unneeded header includes flow_classify: remove unneeded header includes fib: remove unneeded header includes eventdev: remove unneeded header includes efd: remove unneeded header includes dmadev: remove unneeded header includes distributor: remove unneeded header includes compressdev: remove unneeded header includes cmdline: remove unneeded header includes bpf: remove unneeded header includes bbdev: remove unneeded header includes cryptodev: remove unneeded header includes acl: remove unneeded header includes devtools/process_iwyu.py | 109 ++++++++++++++++++++ examples/vm_power_manager/guest_cli/main.c | 1 + lib/acl/rte_acl.c | 1 - lib/bbdev/rte_bbdev.c | 4 - lib/bbdev/rte_bbdev.h | 4 - lib/bpf/bpf.c | 4 - lib/bpf/bpf_exec.c | 6 -- lib/bpf/bpf_jit_x86.c | 5 - lib/bpf/bpf_load.c | 8 -- lib/bpf/bpf_pkt.c | 12 --- lib/bpf/bpf_validate.c | 3 - lib/cmdline/cmdline.c | 2 - lib/cmdline/cmdline_parse.c | 3 - lib/cmdline/cmdline_parse_portlist.c | 3 - lib/cmdline/cmdline_parse_string.c | 4 - lib/cmdline/cmdline_rdline.c | 2 - lib/cmdline/cmdline_vt100.c | 3 - lib/compressdev/rte_comp.c | 1 - lib/compressdev/rte_comp.h | 1 - lib/compressdev/rte_compressdev.c | 1 - lib/compressdev/rte_compressdev.h | 1 - lib/compressdev/rte_compressdev_pmd.h | 2 - lib/cryptodev/cryptodev_pmd.h | 4 - lib/cryptodev/rte_cryptodev.c | 11 -- lib/cryptodev/rte_cryptodev.h | 2 - lib/distributor/rte_distributor.c | 2 - lib/distributor/rte_distributor_match_sse.c | 2 - lib/distributor/rte_distributor_single.c | 2 - lib/dmadev/rte_dmadev.h | 1 - lib/eal/common/eal_common_dev.c | 5 - lib/eal/common/eal_common_devargs.c | 1 - lib/eal/common/eal_common_errno.c | 4 - lib/eal/common/eal_common_fbarray.c | 3 - lib/eal/common/eal_common_hexdump.c | 3 - lib/eal/common/eal_common_launch.c | 6 -- lib/eal/common/eal_common_lcore.c | 7 +- lib/eal/common/eal_common_log.c | 1 - lib/eal/common/eal_common_memalloc.c | 3 - lib/eal/common/eal_common_memory.c | 4 - lib/eal/common/eal_common_memzone.c | 4 - lib/eal/common/eal_common_options.c | 2 - lib/eal/common/eal_common_proc.c | 2 - lib/eal/common/eal_common_string_fns.c | 2 - lib/eal/common/eal_common_tailqs.c | 11 -- lib/eal/common/eal_common_thread.c | 3 - lib/eal/common/eal_common_timer.c | 6 -- lib/eal/common/eal_common_trace.c | 1 - lib/eal/common/hotplug_mp.h | 1 - lib/eal/common/malloc_elem.c | 6 -- lib/eal/common/malloc_heap.c | 5 - lib/eal/common/malloc_mp.c | 1 - lib/eal/common/malloc_mp.h | 2 - lib/eal/common/rte_malloc.c | 5 - lib/eal/common/rte_random.c | 3 - lib/eal/common/rte_service.c | 6 -- lib/eal/include/rte_version.h | 2 - lib/eal/linux/eal.c | 10 -- lib/eal/linux/eal_alarm.c | 7 -- lib/eal/linux/eal_cpuflags.c | 2 - lib/eal/linux/eal_debug.c | 5 - lib/eal/linux/eal_dev.c | 4 - lib/eal/linux/eal_hugepage_info.c | 7 -- lib/eal/linux/eal_interrupts.c | 8 -- lib/eal/linux/eal_lcore.c | 7 -- lib/eal/linux/eal_log.c | 9 -- lib/eal/linux/eal_memalloc.c | 8 -- lib/eal/linux/eal_memory.c | 9 -- lib/eal/linux/eal_thread.c | 6 -- lib/eal/linux/eal_timer.c | 15 --- lib/eal/linux/eal_vfio_mp_sync.c | 1 - lib/eal/unix/eal_file.c | 1 - lib/eal/unix/rte_thread.c | 1 - lib/eal/x86/rte_cycles.c | 1 - lib/efd/rte_efd.c | 3 - lib/eventdev/rte_event_ring.c | 6 -- lib/eventdev/rte_event_ring.h | 2 - lib/eventdev/rte_event_timer_adapter.c | 5 - lib/eventdev/rte_event_timer_adapter.h | 2 - lib/eventdev/rte_eventdev.c | 11 -- lib/eventdev/rte_eventdev.h | 2 - lib/fib/dir24_8.c | 4 - lib/fib/rte_fib.c | 2 - lib/fib/rte_fib.h | 1 - lib/fib/rte_fib6.c | 2 - lib/fib/rte_fib6.h | 1 - lib/fib/trie.c | 5 - lib/fib/trie.h | 2 - lib/flow_classify/rte_flow_classify.c | 3 - lib/flow_classify/rte_flow_classify.h | 4 - lib/flow_classify/rte_flow_classify_parse.c | 1 - lib/flow_classify/rte_flow_classify_parse.h | 1 - lib/gpudev/gpudev.c | 1 - lib/graph/graph_debug.c | 2 - lib/graph/graph_ops.c | 1 - lib/graph/graph_populate.c | 2 - lib/graph/node.c | 1 - lib/gro/gro_tcp4.c | 1 - lib/gro/gro_tcp4.h | 2 - lib/gro/gro_udp4.c | 1 - lib/gro/gro_udp4.h | 2 - lib/gro/gro_vxlan_tcp4.c | 1 - lib/gro/gro_vxlan_udp4.c | 1 - lib/gro/rte_gro.c | 1 - lib/hash/rte_cuckoo_hash.c | 4 - lib/hash/rte_fbk_hash.c | 6 -- lib/hash/rte_fbk_hash.h | 1 - lib/hash/rte_thash.c | 1 - lib/hash/rte_thash.h | 1 - lib/ip_frag/rte_ip_frag_common.c | 1 - lib/ip_frag/rte_ipv4_fragmentation.c | 2 - lib/ipsec/esp_inb.c | 1 - lib/ipsec/esp_outb.c | 1 - lib/ipsec/ipsec_sad.c | 1 - lib/ipsec/sa.c | 3 - lib/ipsec/sa.h | 1 - lib/jobstats/rte_jobstats.c | 3 - lib/kni/rte_kni.c | 2 - lib/kni/rte_kni.h | 2 - lib/kvargs/rte_kvargs.c | 1 - lib/latencystats/rte_latencystats.c | 4 - lib/lpm/rte_lpm.c | 7 -- lib/lpm/rte_lpm.h | 4 - lib/lpm/rte_lpm6.c | 7 -- lib/lpm/rte_lpm6.h | 1 - lib/mbuf/rte_mbuf.c | 11 -- lib/mbuf/rte_mbuf.h | 2 - lib/mbuf/rte_mbuf_dyn.h | 2 - lib/mbuf/rte_mbuf_pool_ops.c | 1 - lib/mbuf/rte_mbuf_pool_ops.h | 1 - lib/member/rte_member.c | 2 - lib/member/rte_member.h | 1 - lib/member/rte_member_vbf.c | 1 - lib/mempool/rte_mempool.c | 7 -- lib/mempool/rte_mempool.h | 4 - lib/metrics/rte_metrics.c | 3 - lib/net/net_crc_avx512.c | 3 - lib/net/net_crc_sse.c | 1 - lib/net/rte_arp.c | 1 - lib/net/rte_ether.h | 1 - lib/net/rte_net_crc.c | 2 - lib/node/ethdev_ctrl.c | 2 - lib/node/ethdev_rx.c | 1 - lib/node/ethdev_tx.c | 1 - lib/node/ip4_lookup.c | 5 - lib/node/ip4_rewrite.c | 4 - lib/node/pkt_cls.c | 4 - lib/node/pkt_drop.c | 1 - lib/pcapng/rte_pcapng.c | 1 - lib/pcapng/rte_pcapng.h | 2 - lib/pci/rte_pci.c | 15 +-- lib/pci/rte_pci.h | 1 - lib/pdump/rte_pdump.c | 1 - lib/pdump/rte_pdump.h | 2 - lib/pipeline/rte_pipeline.c | 4 - lib/pipeline/rte_port_in_action.c | 2 - lib/pipeline/rte_swx_ctl.h | 2 - lib/pipeline/rte_swx_pipeline.c | 1 - lib/pipeline/rte_swx_pipeline.h | 1 - lib/pipeline/rte_swx_pipeline_spec.c | 1 - lib/pipeline/rte_table_action.c | 2 - lib/port/rte_port_fd.h | 1 - lib/port/rte_port_frag.c | 2 - lib/port/rte_port_frag.h | 1 - lib/port/rte_port_kni.c | 1 - lib/port/rte_port_kni.h | 1 - lib/port/rte_port_ras.c | 1 - lib/port/rte_port_ras.h | 1 - lib/port/rte_port_ring.h | 1 - lib/port/rte_port_sched.c | 1 - lib/port/rte_port_source_sink.c | 1 - lib/port/rte_swx_port_fd.c | 1 - lib/port/rte_swx_port_fd.h | 1 - lib/port/rte_swx_port_ring.h | 1 - lib/power/guest_channel.c | 2 - lib/power/power_acpi_cpufreq.c | 7 -- lib/power/power_acpi_cpufreq.h | 4 - lib/power/power_common.h | 1 - lib/power/power_cppc_cpufreq.c | 1 - lib/power/power_cppc_cpufreq.h | 4 - lib/power/power_kvm_vm.c | 1 - lib/power/power_kvm_vm.h | 4 - lib/power/power_pstate_cpufreq.c | 6 -- lib/power/power_pstate_cpufreq.h | 4 - lib/power/rte_power.c | 1 - lib/power/rte_power.h | 2 - lib/power/rte_power_empty_poll.c | 2 - lib/rawdev/rte_rawdev.c | 14 --- lib/rcu/rte_rcu_qsbr.c | 4 - lib/rcu/rte_rcu_qsbr.h | 4 - lib/regexdev/rte_regexdev.c | 2 - lib/regexdev/rte_regexdev.h | 3 - lib/reorder/rte_reorder.c | 1 - lib/rib/rte_rib.c | 2 - lib/rib/rte_rib.h | 1 - lib/rib/rte_rib6.c | 2 - lib/rib/rte_rib6.h | 1 - lib/ring/rte_ring.c | 9 -- lib/sched/rte_pie.c | 2 - lib/sched/rte_red.h | 1 - lib/sched/rte_sched.c | 1 - lib/sched/rte_sched.h | 1 - lib/security/rte_security.c | 2 - lib/security/rte_security.h | 3 - lib/stack/rte_stack.c | 2 - lib/stack/rte_stack.h | 1 - lib/table/rte_swx_table_em.c | 1 - lib/table/rte_swx_table_em.h | 1 - lib/table/rte_swx_table_learner.c | 1 - lib/table/rte_swx_table_learner.h | 1 - lib/table/rte_swx_table_selector.c | 1 - lib/table/rte_swx_table_wm.c | 2 - lib/table/rte_swx_table_wm.h | 1 - lib/table/rte_table_acl.c | 3 - lib/table/rte_table_array.c | 2 - lib/table/rte_table_hash_cuckoo.c | 2 - lib/table/rte_table_hash_ext.c | 2 - lib/table/rte_table_hash_key16.c | 2 - lib/table/rte_table_hash_key32.c | 2 - lib/table/rte_table_hash_key8.c | 2 - lib/table/rte_table_hash_lru.c | 2 - lib/table/rte_table_lpm.c | 2 - lib/table/rte_table_lpm_ipv6.c | 3 - lib/table/rte_table_stub.c | 1 - lib/table/rte_table_stub.h | 1 - lib/telemetry/telemetry.c | 1 - lib/telemetry/telemetry_data.h | 1 - lib/timer/rte_timer.c | 6 -- lib/vhost/fd_man.c | 6 -- lib/vhost/fd_man.h | 1 - lib/vhost/socket.c | 1 - lib/vhost/vdpa.c | 1 - lib/vhost/vhost.c | 4 - lib/vhost/vhost.h | 2 - lib/vhost/vhost_user.c | 2 - 234 files changed, 112 insertions(+), 681 deletions(-) create mode 100755 devtools/process_iwyu.py -- 2.25.1