From patchwork Fri Jan 14 16:23:16 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sean Morrissey X-Patchwork-Id: 105815 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 1F122A00C3; Fri, 14 Jan 2022 17:26:57 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id B1D764116D; Fri, 14 Jan 2022 17:26:56 +0100 (CET) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by mails.dpdk.org (Postfix) with ESMTP id E3E7441163 for ; Fri, 14 Jan 2022 17:26: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=1642177615; x=1673713615; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=S6M8E8RV57g0qY30xhZHh3RjF3zGmkRDzuFGIOssQ8E=; b=XpJzdcwE7W7Zz+TJR3fspBbAjlsRo1CEgCwiH1UTNQsApLwZPRthcAKB XNSO3IEU7RAqhfeg4K5DkBjoAthsmPEVdss01nDokVNoaq8Eh/Ouh0PGE Nm1j+36NyAsfroDa6yG6sjp66mJlDJr+KXDiUm602xS97wKuR5h7S5jHD LdsUQ6eiDWIT7IhZkw+UXw1DcjIpo85BGYRuCiYA1kxbAMkE1OqG09KFJ tA0GsRxmX9RmGuAH7K6dMh8677OcT3oWYfGxheEqTlmpxgutDubsr2xJb bBLBcpQOsW+pLXSuLlmC17V2D6/MI6PrsdQe67XMRR0CyK+QPXOg3Wlu8 g==; X-IronPort-AV: E=McAfee;i="6200,9189,10226"; a="268642510" X-IronPort-AV: E=Sophos;i="5.88,289,1635231600"; d="scan'208";a="268642510" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Jan 2022 08:26:52 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.88,289,1635231600"; d="scan'208";a="559523353" Received: from silpixa00401215.ir.intel.com ([10.55.128.96]) by orsmga001.jf.intel.com with ESMTP; 14 Jan 2022 08:26:50 -0800 From: Sean Morrissey To: Cc: dev@dpdk.org, Sean Morrissey Subject: [PATCH v4 00/53] introduce IWYU Date: Fri, 14 Jan 2022 16:23:16 +0000 Message-Id: <20220114162409.334437-1-sean.morrissey@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20211007102557.188739-1-sean.morrissey@intel.com> References: <20211007102557.188739-1-sean.morrissey@intel.com> MIME-Version: 1.0 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 Sean Morrissey (53): 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 ring: 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 kvargs: 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 eal: 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_cirbuf.c | 1 - lib/cmdline/cmdline_cirbuf.h | 1 - lib/cmdline/cmdline_parse.c | 3 - lib/cmdline/cmdline_parse_num.c | 4 - lib/cmdline/cmdline_parse_portlist.c | 3 - lib/cmdline/cmdline_parse_string.c | 4 - lib/cmdline/cmdline_rdline.c | 2 - lib/cmdline/cmdline_socket.c | 5 - lib/cmdline/cmdline_socket.h | 1 - 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 | 2 - lib/eal/common/eal_common_memalloc.c | 3 - lib/eal/common/eal_common_memory.c | 5 - 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 | 11 +- 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 | 2 - 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.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 | 2 - 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 | 7 -- 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 | 7 -- 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 | 6 -- lib/vhost/vhost_user.c | 2 - lib/vhost/vhost_user.h | 1 - 241 files changed, 113 insertions(+), 706 deletions(-) create mode 100755 devtools/process_iwyu.py