Cover Detail
Show a cover letter.
GET /api/covers/107507/?format=api
http://patches.dpdk.org/api/covers/107507/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/cover/20220214144406.4192233-1-sean.morrissey@intel.com/", "project": { "id": 1, "url": "http://patches.dpdk.org/api/projects/1/?format=api", "name": "DPDK", "link_name": "dpdk", "list_id": "dev.dpdk.org", "list_email": "dev@dpdk.org", "web_url": "http://core.dpdk.org", "scm_url": "git://dpdk.org/dpdk", "webscm_url": "http://git.dpdk.org/dpdk", "list_archive_url": "https://inbox.dpdk.org/dev", "list_archive_url_format": "https://inbox.dpdk.org/dev/{}", "commit_url_format": "" }, "msgid": "<20220214144406.4192233-1-sean.morrissey@intel.com>", "list_archive_url": "https://inbox.dpdk.org/dev/20220214144406.4192233-1-sean.morrissey@intel.com", "date": "2022-02-14T14:43:16", "name": "[v8,00/50] introduce IWYU", "submitter": { "id": 1359, "url": "http://patches.dpdk.org/api/people/1359/?format=api", "name": "Sean Morrissey", "email": "sean.morrissey@intel.com" }, "mbox": "http://patches.dpdk.org/project/dpdk/cover/20220214144406.4192233-1-sean.morrissey@intel.com/mbox/", "series": [ { "id": 21662, "url": "http://patches.dpdk.org/api/series/21662/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=21662", "date": "2022-02-14T14:43:16", "name": "introduce IWYU", "version": 8, "mbox": "http://patches.dpdk.org/series/21662/mbox/" } ], "comments": "http://patches.dpdk.org/api/covers/107507/comments/", "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "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])\n\tby inbox.dpdk.org (Postfix) with ESMTP id B5489A034E;\n\tMon, 14 Feb 2022 15:45:19 +0100 (CET)", "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 3EC8040DDA;\n\tMon, 14 Feb 2022 15:45:19 +0100 (CET)", "from mga02.intel.com (mga02.intel.com [134.134.136.20])\n by mails.dpdk.org (Postfix) with ESMTP id 5F48D4067E\n for <dev@dpdk.org>; Mon, 14 Feb 2022 15:45:17 +0100 (CET)", "from orsmga003.jf.intel.com ([10.7.209.27])\n by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 14 Feb 2022 06:45:16 -0800", "from silpixa00401215.ir.intel.com ([10.55.128.96])\n by orsmga003.jf.intel.com with ESMTP; 14 Feb 2022 06:45:15 -0800" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple;\n d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n t=1644849917; x=1676385917;\n h=from:to:cc:subject:date:message-id:in-reply-to:\n references:mime-version:content-transfer-encoding;\n bh=N6+qhQNOeNWT6LnOKuUZiZ2vWUpEWYsrUJE70uRIqwU=;\n b=GqdMZnfdj10tAWh+u0NUqCLGFvxdGx+TV4WsdEYNB4najTWYO48PulI9\n oymh+agvzxXnCpS70PaU5Vp/0w4uhQnW1e9lBten0JaF4hK1uQ9BmpSxg\n h2ns6Zga6/+y/3pmDp24yETIyt6unrx8AFm0+8OedUoQ/jHIEyfeJnUBH\n qjfmo6N0JapoL0Iix9cxjZICThRh17pfRMDEbRttS8T1owh0ybC4fm/RX\n AwvvmCQCUO6FJiF+pDcnp0xrnN+sYanmFvviNhHcU7JwM8twh+xnjLx9k\n rjeP2jaPZ1/j25Fmp1349kWC5FGqVpaWowNBqa/ycKRZ4aYDvjgyD93Uk Q==;", "X-IronPort-AV": [ "E=McAfee;i=\"6200,9189,10257\"; a=\"237511639\"", "E=Sophos;i=\"5.88,368,1635231600\"; d=\"scan'208\";a=\"237511639\"", "E=Sophos;i=\"5.88,368,1635231600\"; d=\"scan'208\";a=\"485504917\"" ], "X-ExtLoop1": "1", "From": "Sean Morrissey <sean.morrissey@intel.com>", "To": "", "Cc": "dev@dpdk.org,\n\tSean Morrissey <sean.morrissey@intel.com>", "Subject": "[PATCH v8 00/50] introduce IWYU", "Date": "Mon, 14 Feb 2022 14:43:16 +0000", "Message-Id": "<20220214144406.4192233-1-sean.morrissey@intel.com>", "X-Mailer": "git-send-email 2.25.1", "In-Reply-To": "<20220214113632.3184921-1-sean.morrissey@intel.com>", "References": "<20220214113632.3184921-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 <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "content": "This patchset introduces the include-what-you-use script which removes\nunused header includes. IWYU GitHub:\n\nhttps://github.com/include-what-you-use/include-what-you-use\n\nAlong with the script there are some patches which make a start on\nremoving unneeded headers.\n\nV4:\n* Re-added removed headers that are now needed in order to fix build\n issues.\n* Removed other unused headers from other libraries\n\nV5:\n* Fix build issues for RHEL 7.\n* Squash commits for overlapping libraries.\n\nV6:\n* Fix some Windows build issues.\n* Fix some RHEL 8 build issues.\n\nV7:\n* Further RHEL 8 and FreeBSD build issues fixed.\n\nV8:\n* Fix apply issues.\n\nSean Morrissey (50):\n devtools: script to remove unused headers includes\n telemetry: remove unneeded header includes\n ring: remove unneeded header includes\n kvargs: remove unneeded header includes\n eal: remove unneeded header includes\n vhost: remove unneeded header includes\n timer: remove unneeded header includes\n table: remove unneeded header includes\n stack: remove unneeded header includes\n security: remove unneeded header includes\n sched: remove unneeded header includes\n rib: remove unneeded header includes\n reorder: remove unneeded header includes\n regexdev: remove unneeded header includes\n rcu: remove unneeded header includes\n rawdev: remove unneeded header includes\n power: remove unneeded header includes\n port: remove unneeded header includes\n pipeline: remove unneeded header includes\n pdump: remove unneeded header includes\n pci: remove unneeded header includes\n pcapng: remove unneeded header includes\n node: remove unneeded header includes\n net: remove unneeded header includes\n metrics: remove unneeded header includes\n mempool: remove unneeded header includes\n member: remove unneeded header includes\n mbuf: remove unneeded header includes\n lpm: remove unneeded header includes\n latencystats: remove unneeded header includes\n kni: remove unneeded header includes\n jobstats: remove unneeded header includes\n ipsec: remove unneeded header includes\n ip_frag: remove unneeded header includes\n hash: remove unneeded header includes\n gro: remove unneeded header includes\n graph: remove unneeded header includes\n gpudev: remove unneeded header includes\n flow_classify: remove unneeded header includes\n fib: remove unneeded header includes\n eventdev: remove unneeded header includes\n efd: remove unneeded header includes\n dmadev: remove unneeded header includes\n distributor: remove unneeded header includes\n compressdev: remove unneeded header includes\n cmdline: remove unneeded header includes\n bpf: remove unneeded header includes\n bbdev: remove unneeded header includes\n cryptodev: remove unneeded header includes\n acl: remove unneeded header includes\n\n devtools/process_iwyu.py | 109 ++++++++++++++++++++\n examples/vm_power_manager/guest_cli/main.c | 1 +\n lib/acl/rte_acl.c | 1 -\n lib/bbdev/rte_bbdev.c | 4 -\n lib/bbdev/rte_bbdev.h | 4 -\n lib/bpf/bpf.c | 4 -\n lib/bpf/bpf_exec.c | 6 --\n lib/bpf/bpf_jit_x86.c | 5 -\n lib/bpf/bpf_load.c | 8 --\n lib/bpf/bpf_pkt.c | 12 ---\n lib/bpf/bpf_validate.c | 3 -\n lib/cmdline/cmdline.c | 2 -\n lib/cmdline/cmdline_parse.c | 3 -\n lib/cmdline/cmdline_parse_portlist.c | 3 -\n lib/cmdline/cmdline_parse_string.c | 4 -\n lib/cmdline/cmdline_rdline.c | 2 -\n lib/cmdline/cmdline_vt100.c | 3 -\n lib/compressdev/rte_comp.c | 1 -\n lib/compressdev/rte_comp.h | 1 -\n lib/compressdev/rte_compressdev.c | 1 -\n lib/compressdev/rte_compressdev.h | 1 -\n lib/compressdev/rte_compressdev_pmd.h | 2 -\n lib/cryptodev/cryptodev_pmd.h | 4 -\n lib/cryptodev/rte_cryptodev.c | 11 --\n lib/cryptodev/rte_cryptodev.h | 2 -\n lib/distributor/rte_distributor.c | 2 -\n lib/distributor/rte_distributor_match_sse.c | 2 -\n lib/distributor/rte_distributor_single.c | 2 -\n lib/dmadev/rte_dmadev.h | 1 -\n lib/eal/common/eal_common_dev.c | 5 -\n lib/eal/common/eal_common_devargs.c | 1 -\n lib/eal/common/eal_common_errno.c | 4 -\n lib/eal/common/eal_common_fbarray.c | 3 -\n lib/eal/common/eal_common_hexdump.c | 3 -\n lib/eal/common/eal_common_launch.c | 6 --\n lib/eal/common/eal_common_lcore.c | 7 +-\n lib/eal/common/eal_common_log.c | 1 -\n lib/eal/common/eal_common_memalloc.c | 3 -\n lib/eal/common/eal_common_memory.c | 4 -\n lib/eal/common/eal_common_memzone.c | 4 -\n lib/eal/common/eal_common_options.c | 2 -\n lib/eal/common/eal_common_proc.c | 2 -\n lib/eal/common/eal_common_string_fns.c | 2 -\n lib/eal/common/eal_common_tailqs.c | 11 --\n lib/eal/common/eal_common_thread.c | 3 -\n lib/eal/common/eal_common_timer.c | 6 --\n lib/eal/common/eal_common_trace.c | 1 -\n lib/eal/common/hotplug_mp.h | 1 -\n lib/eal/common/malloc_elem.c | 6 --\n lib/eal/common/malloc_heap.c | 5 -\n lib/eal/common/malloc_mp.c | 1 -\n lib/eal/common/malloc_mp.h | 2 -\n lib/eal/common/rte_malloc.c | 5 -\n lib/eal/common/rte_random.c | 3 -\n lib/eal/common/rte_service.c | 6 --\n lib/eal/include/rte_version.h | 2 -\n lib/eal/linux/eal.c | 10 --\n lib/eal/linux/eal_alarm.c | 7 --\n lib/eal/linux/eal_cpuflags.c | 2 -\n lib/eal/linux/eal_debug.c | 5 -\n lib/eal/linux/eal_dev.c | 4 -\n lib/eal/linux/eal_hugepage_info.c | 7 --\n lib/eal/linux/eal_interrupts.c | 8 --\n lib/eal/linux/eal_lcore.c | 7 --\n lib/eal/linux/eal_log.c | 9 --\n lib/eal/linux/eal_memalloc.c | 8 --\n lib/eal/linux/eal_memory.c | 9 --\n lib/eal/linux/eal_thread.c | 6 --\n lib/eal/linux/eal_timer.c | 15 ---\n lib/eal/linux/eal_vfio_mp_sync.c | 1 -\n lib/eal/unix/eal_file.c | 1 -\n lib/eal/unix/rte_thread.c | 1 -\n lib/eal/x86/rte_cycles.c | 1 -\n lib/efd/rte_efd.c | 3 -\n lib/eventdev/rte_event_ring.c | 6 --\n lib/eventdev/rte_event_ring.h | 2 -\n lib/eventdev/rte_event_timer_adapter.c | 5 -\n lib/eventdev/rte_event_timer_adapter.h | 2 -\n lib/eventdev/rte_eventdev.c | 11 --\n lib/eventdev/rte_eventdev.h | 2 -\n lib/fib/dir24_8.c | 4 -\n lib/fib/rte_fib.c | 2 -\n lib/fib/rte_fib.h | 1 -\n lib/fib/rte_fib6.c | 2 -\n lib/fib/rte_fib6.h | 1 -\n lib/fib/trie.c | 5 -\n lib/fib/trie.h | 2 -\n lib/flow_classify/rte_flow_classify.c | 3 -\n lib/flow_classify/rte_flow_classify.h | 4 -\n lib/flow_classify/rte_flow_classify_parse.c | 1 -\n lib/flow_classify/rte_flow_classify_parse.h | 1 -\n lib/gpudev/gpudev.c | 1 -\n lib/graph/graph_debug.c | 2 -\n lib/graph/graph_ops.c | 1 -\n lib/graph/graph_populate.c | 2 -\n lib/graph/node.c | 1 -\n lib/gro/gro_tcp4.c | 1 -\n lib/gro/gro_tcp4.h | 2 -\n lib/gro/gro_udp4.c | 1 -\n lib/gro/gro_udp4.h | 2 -\n lib/gro/gro_vxlan_tcp4.c | 1 -\n lib/gro/gro_vxlan_udp4.c | 1 -\n lib/gro/rte_gro.c | 1 -\n lib/hash/rte_cuckoo_hash.c | 4 -\n lib/hash/rte_fbk_hash.c | 6 --\n lib/hash/rte_fbk_hash.h | 1 -\n lib/hash/rte_thash.c | 1 -\n lib/hash/rte_thash.h | 1 -\n lib/ip_frag/rte_ip_frag_common.c | 1 -\n lib/ip_frag/rte_ipv4_fragmentation.c | 2 -\n lib/ipsec/esp_inb.c | 1 -\n lib/ipsec/esp_outb.c | 1 -\n lib/ipsec/ipsec_sad.c | 1 -\n lib/ipsec/sa.c | 3 -\n lib/ipsec/sa.h | 1 -\n lib/jobstats/rte_jobstats.c | 3 -\n lib/kni/rte_kni.c | 2 -\n lib/kni/rte_kni.h | 2 -\n lib/kvargs/rte_kvargs.c | 1 -\n lib/latencystats/rte_latencystats.c | 4 -\n lib/lpm/rte_lpm.c | 7 --\n lib/lpm/rte_lpm.h | 4 -\n lib/lpm/rte_lpm6.c | 7 --\n lib/lpm/rte_lpm6.h | 1 -\n lib/mbuf/rte_mbuf.c | 11 --\n lib/mbuf/rte_mbuf.h | 2 -\n lib/mbuf/rte_mbuf_dyn.h | 2 -\n lib/mbuf/rte_mbuf_pool_ops.c | 1 -\n lib/mbuf/rte_mbuf_pool_ops.h | 1 -\n lib/member/rte_member.c | 2 -\n lib/member/rte_member.h | 1 -\n lib/member/rte_member_vbf.c | 1 -\n lib/mempool/rte_mempool.c | 7 --\n lib/mempool/rte_mempool.h | 4 -\n lib/metrics/rte_metrics.c | 3 -\n lib/net/net_crc_avx512.c | 3 -\n lib/net/net_crc_sse.c | 1 -\n lib/net/rte_arp.c | 1 -\n lib/net/rte_ether.h | 1 -\n lib/net/rte_net.h | 1 -\n lib/net/rte_net_crc.c | 2 -\n lib/node/ethdev_ctrl.c | 2 -\n lib/node/ethdev_rx.c | 1 -\n lib/node/ethdev_tx.c | 1 -\n lib/node/ip4_lookup.c | 5 -\n lib/node/ip4_rewrite.c | 4 -\n lib/node/pkt_cls.c | 4 -\n lib/node/pkt_drop.c | 1 -\n lib/pcapng/rte_pcapng.c | 1 -\n lib/pcapng/rte_pcapng.h | 2 -\n lib/pci/rte_pci.c | 15 +--\n lib/pci/rte_pci.h | 1 -\n lib/pdump/rte_pdump.c | 1 -\n lib/pdump/rte_pdump.h | 2 -\n lib/pipeline/rte_pipeline.c | 4 -\n lib/pipeline/rte_port_in_action.c | 2 -\n lib/pipeline/rte_swx_ctl.h | 2 -\n lib/pipeline/rte_swx_pipeline.c | 1 -\n lib/pipeline/rte_swx_pipeline.h | 1 -\n lib/pipeline/rte_swx_pipeline_spec.c | 1 -\n lib/pipeline/rte_table_action.c | 2 -\n lib/port/rte_port_fd.h | 1 -\n lib/port/rte_port_frag.c | 2 -\n lib/port/rte_port_frag.h | 1 -\n lib/port/rte_port_kni.c | 1 -\n lib/port/rte_port_kni.h | 1 -\n lib/port/rte_port_ras.c | 1 -\n lib/port/rte_port_ras.h | 1 -\n lib/port/rte_port_ring.h | 1 -\n lib/port/rte_port_sched.c | 1 -\n lib/port/rte_port_source_sink.c | 1 -\n lib/port/rte_swx_port_fd.c | 1 -\n lib/port/rte_swx_port_fd.h | 1 -\n lib/port/rte_swx_port_ring.h | 1 -\n lib/power/guest_channel.c | 2 -\n lib/power/power_acpi_cpufreq.c | 7 --\n lib/power/power_acpi_cpufreq.h | 4 -\n lib/power/power_common.h | 1 -\n lib/power/power_cppc_cpufreq.c | 1 -\n lib/power/power_cppc_cpufreq.h | 4 -\n lib/power/power_kvm_vm.c | 1 -\n lib/power/power_kvm_vm.h | 4 -\n lib/power/power_pstate_cpufreq.c | 6 --\n lib/power/power_pstate_cpufreq.h | 4 -\n lib/power/rte_power.c | 1 -\n lib/power/rte_power.h | 2 -\n lib/power/rte_power_empty_poll.c | 2 -\n lib/rawdev/rte_rawdev.c | 14 ---\n lib/rcu/rte_rcu_qsbr.c | 4 -\n lib/rcu/rte_rcu_qsbr.h | 4 -\n lib/regexdev/rte_regexdev.c | 2 -\n lib/regexdev/rte_regexdev.h | 3 -\n lib/reorder/rte_reorder.c | 1 -\n lib/rib/rte_rib.c | 2 -\n lib/rib/rte_rib.h | 1 -\n lib/rib/rte_rib6.c | 2 -\n lib/rib/rte_rib6.h | 1 -\n lib/ring/rte_ring.c | 9 --\n lib/sched/rte_pie.c | 2 -\n lib/sched/rte_red.h | 1 -\n lib/sched/rte_sched.c | 1 -\n lib/sched/rte_sched.h | 1 -\n lib/security/rte_security.c | 2 -\n lib/security/rte_security.h | 3 -\n lib/stack/rte_stack.c | 2 -\n lib/stack/rte_stack.h | 1 -\n lib/table/rte_swx_table_em.c | 1 -\n lib/table/rte_swx_table_em.h | 1 -\n lib/table/rte_swx_table_learner.c | 1 -\n lib/table/rte_swx_table_learner.h | 1 -\n lib/table/rte_swx_table_selector.c | 1 -\n lib/table/rte_swx_table_wm.c | 2 -\n lib/table/rte_swx_table_wm.h | 1 -\n lib/table/rte_table_acl.c | 3 -\n lib/table/rte_table_array.c | 2 -\n lib/table/rte_table_hash_cuckoo.c | 2 -\n lib/table/rte_table_hash_ext.c | 2 -\n lib/table/rte_table_hash_key16.c | 2 -\n lib/table/rte_table_hash_key32.c | 2 -\n lib/table/rte_table_hash_key8.c | 2 -\n lib/table/rte_table_hash_lru.c | 2 -\n lib/table/rte_table_lpm.c | 2 -\n lib/table/rte_table_lpm_ipv6.c | 3 -\n lib/table/rte_table_stub.c | 1 -\n lib/table/rte_table_stub.h | 1 -\n lib/telemetry/telemetry.c | 1 -\n lib/telemetry/telemetry_data.h | 1 -\n lib/timer/rte_timer.c | 6 --\n lib/vhost/fd_man.c | 6 --\n lib/vhost/fd_man.h | 1 -\n lib/vhost/socket.c | 1 -\n lib/vhost/vdpa.c | 1 -\n lib/vhost/vhost.c | 4 -\n lib/vhost/vhost.h | 2 -\n lib/vhost/vhost_user.c | 2 -\n 235 files changed, 112 insertions(+), 682 deletions(-)\n create mode 100755 devtools/process_iwyu.py" }{ "id": 107507, "url": "