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 BB30EA0501 for ; Tue, 26 Apr 2022 15:58:57 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 59EA440E78; Tue, 26 Apr 2022 15:58:57 +0200 (CEST) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mails.dpdk.org (Postfix) with ESMTP id 4787A40C35 for ; Tue, 26 Apr 2022 15:58:55 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1650981534; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uRJo1RZWvJIjGwotcX01ETgyKkvC1O4RvH12fajx0PE=; b=JoXm99vxyHdqB2JPNDUM2Zw6mFHg84CKHImNtBuRq+Mo35i1lHNxdcrmz2QD6atBodEOMl TRfeXhrkT49SxCNKIQQRmB0a0ydPGRekJ3HALoHDigKxQk+Q6Q77Weh4tULnlyOOx8gId9 /E3Z/m2KBnXanQie8V6E4qKO7Ya0hFg= Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-553-0pAvMCk2NSigWyqAtnO-2w-1; Tue, 26 Apr 2022 09:58:53 -0400 X-MC-Unique: 0pAvMCk2NSigWyqAtnO-2w-1 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.rdu2.redhat.com [10.11.54.7]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id A7D0418E52C5 for ; Tue, 26 Apr 2022 13:58:52 +0000 (UTC) Received: from rh.Home (unknown [10.39.194.242]) by smtp.corp.redhat.com (Postfix) with ESMTP id 54A5814682C6 for ; Tue, 26 Apr 2022 13:58:51 +0000 (UTC) From: Kevin Traynor To: announce@dpdk.org Subject: DPDK 21.11.1 released Date: Tue, 26 Apr 2022 14:58:50 +0100 Message-Id: <20220426135850.680568-1-ktraynor@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.85 on 10.11.54.7 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=ktraynor@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: announce@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK announcements List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: announce-bounces@dpdk.org Hi all, Here is a new stable release: https://fast.dpdk.org/rel/dpdk-21.11.1.tar.xz The git tree is at: https://dpdk.org/browse/dpdk-stable/?h=21.11 This is the first stable release of 21.11 LTS and contains ~400 fixes. See the release notes for details: http://doc.dpdk.org/guides-21.11/rel_notes/release_21_11.html#fixes Thanks to the authors who helped with backports and to the following who helped with validation: Nvidia, Intel, Canonical and Red Hat. Kevin --- MAINTAINERS | 2 + VERSION | 2 +- app/dumpcap/main.c | 9 +- app/pdump/main.c | 16 +- app/proc-info/main.c | 6 +- app/test-acl/main.c | 6 +- app/test-compress-perf/comp_perf_test_cyclecount.c | 9 +- app/test-compress-perf/comp_perf_test_throughput.c | 2 +- app/test-compress-perf/comp_perf_test_verify.c | 2 +- app/test-compress-perf/main.c | 5 +- app/test-crypto-perf/cperf_test_pmd_cyclecount.c | 2 +- app/test-eventdev/evt_options.c | 2 +- app/test-eventdev/test_order_common.c | 2 +- app/test-fib/main.c | 12 +- app/test-flow-perf/config.h | 2 +- app/test-flow-perf/main.c | 2 +- app/test-pmd/cmd_flex_item.c | 3 +- app/test-pmd/cmdline.c | 18 +- app/test-pmd/cmdline_flow.c | 13 +- app/test-pmd/cmdline_tm.c | 4 +- app/test-pmd/config.c | 22 +- app/test-pmd/csumonly.c | 24 +- app/test-pmd/parameters.c | 2 +- app/test-pmd/testpmd.c | 28 +- app/test-pmd/testpmd.h | 1 + app/test-pmd/txonly.c | 24 +- app/test-regex/main.c | 38 +- app/test/meson.build | 2 +- app/test/test_barrier.c | 2 +- app/test/test_bpf.c | 10 +- app/test/test_compressdev.c | 2 +- app/test/test_cryptodev.c | 13 +- app/test/test_cryptodev_asym.c | 2 +- app/test/test_cryptodev_rsa_test_vectors.h | 2 +- app/test/test_dmadev.c | 8 +- app/test/test_efd.c | 2 +- app/test/test_fib_perf.c | 2 +- app/test/test_kni.c | 4 +- app/test/test_kvargs.c | 16 +- app/test/test_link_bonding.c | 4 + app/test/test_link_bonding_rssconf.c | 4 + app/test/test_lpm6_data.h | 2 +- app/test/test_mbuf.c | 4 - app/test/test_member.c | 2 +- app/test/test_memory.c | 2 +- app/test/test_mempool.c | 4 +- app/test/test_memzone.c | 6 +- app/test/test_metrics.c | 2 +- app/test/test_pcapng.c | 2 +- app/test/test_power_cpufreq.c | 2 +- app/test/test_rcu_qsbr.c | 4 +- app/test/test_red.c | 8 +- app/test/test_security.c | 2 +- app/test/test_table_pipeline.c | 2 +- app/test/test_thash.c | 2 +- buildtools/binutils-avx512-check.py | 4 +- buildtools/call-sphinx-build.py | 4 +- buildtools/meson.build | 5 +- config/arm/meson.build | 10 +- config/meson.build | 5 +- config/x86/meson.build | 2 +- devtools/check-abi.sh | 4 - devtools/check-forbidden-tokens.awk | 3 + devtools/check-symbol-change.sh | 6 +- devtools/check-symbol-maps.sh | 7 + devtools/libabigail.abignore | 20 + doc/api/generate_examples.sh | 14 +- doc/api/meson.build | 10 +- doc/guides/compressdevs/mlx5.rst | 6 +- doc/guides/conf.py | 6 +- doc/guides/cryptodevs/mlx5.rst | 6 +- doc/guides/dmadevs/hisilicon.rst | 4 +- doc/guides/dmadevs/idxd.rst | 29 +- doc/guides/eventdevs/dlb2.rst | 19 +- doc/guides/gpus/features/cuda.ini | 10 + .../img/virtio_user_for_container_networking.svg | 2 +- doc/guides/linux_gsg/enable_func.rst | 8 +- doc/guides/linux_gsg/linux_drivers.rst | 11 +- doc/guides/linux_gsg/sys_reqs.rst | 6 +- doc/guides/nics/af_packet.rst | 2 +- doc/guides/nics/features/ice_dcf.ini | 5 + doc/guides/nics/hns3.rst | 5 + doc/guides/nics/ice.rst | 4 + doc/guides/nics/kni.rst | 2 +- doc/guides/nics/mlx4.rst | 6 +- doc/guides/nics/mlx5.rst | 33 +- doc/guides/prog_guide/cryptodev_lib.rst | 3 +- doc/guides/prog_guide/env_abstraction_layer.rst | 4 +- ...{flow_tru_droppper.png => flow_tru_dropper.png} | Bin doc/guides/prog_guide/img/turbo_tb_decode.svg | 2 +- doc/guides/prog_guide/img/turbo_tb_encode.svg | 2 +- doc/guides/prog_guide/qos_framework.rst | 6 +- doc/guides/prog_guide/rte_flow.rst | 8 +- doc/guides/rawdevs/cnxk_bphy.rst | 2 +- doc/guides/regexdevs/features_overview.rst | 2 +- doc/guides/regexdevs/mlx5.rst | 8 +- doc/guides/rel_notes/release_16_07.rst | 2 +- doc/guides/rel_notes/release_17_08.rst | 2 +- doc/guides/rel_notes/release_21_11.rst | 518 +++++++++++++++++++++ doc/guides/rel_notes/release_2_1.rst | 2 +- doc/guides/sample_app_ug/fips_validation.rst | 3 +- doc/guides/sample_app_ug/ip_reassembly.rst | 4 +- doc/guides/sample_app_ug/l2_forward_cat.rst | 2 +- doc/guides/sample_app_ug/server_node_efd.rst | 2 +- doc/guides/sample_app_ug/skeleton.rst | 2 +- doc/guides/sample_app_ug/vm_power_management.rst | 2 +- doc/guides/testpmd_app_ug/testpmd_funcs.rst | 2 +- drivers/baseband/acc100/rte_acc100_pmd.c | 3 +- drivers/baseband/acc100/rte_acc100_pmd.h | 1 + drivers/baseband/fpga_lte_fec/fpga_lte_fec.c | 8 +- drivers/baseband/null/bbdev_null.c | 2 +- drivers/baseband/turbo_sw/bbdev_turbo_software.c | 2 +- drivers/bus/auxiliary/version.map | 2 + drivers/bus/dpaa/dpaa_bus.c | 2 +- drivers/bus/dpaa/include/fsl_qman.h | 6 +- drivers/bus/dpaa/include/fsl_usd.h | 2 +- drivers/bus/dpaa/include/process.h | 2 +- drivers/bus/fslmc/fslmc_bus.c | 2 +- drivers/bus/fslmc/portal/dpaa2_hw_dpio.c | 2 +- drivers/bus/fslmc/portal/dpaa2_hw_pvt.h | 2 +- drivers/bus/fslmc/qbman/include/fsl_qbman_portal.h | 20 +- drivers/bus/ifpga/ifpga_bus.c | 6 +- drivers/bus/pci/linux/pci_vfio.c | 2 +- drivers/bus/pci/pci_common.c | 5 +- drivers/bus/vdev/rte_bus_vdev.h | 2 +- drivers/bus/vmbus/vmbus_common.c | 2 +- drivers/common/cnxk/cnxk_security.c | 4 - drivers/common/cnxk/cnxk_telemetry_nix.c | 3 + drivers/common/cnxk/hw/cpt.h | 14 +- drivers/common/cnxk/roc_bphy_cgx.c | 2 +- drivers/common/cnxk/roc_bphy_irq.c | 2 +- drivers/common/cnxk/roc_cpt.c | 10 +- drivers/common/cnxk/roc_dev.c | 21 +- drivers/common/cnxk/roc_irq.c | 5 +- drivers/common/cnxk/roc_nix.h | 1 + drivers/common/cnxk/roc_nix_bpf.c | 2 +- drivers/common/cnxk/roc_nix_debug.c | 10 +- drivers/common/cnxk/roc_nix_fc.c | 12 + drivers/common/cnxk/roc_nix_inl.c | 5 +- drivers/common/cnxk/roc_nix_inl_dev.c | 12 + drivers/common/cnxk/roc_nix_inl_priv.h | 1 + drivers/common/cnxk/roc_nix_irq.c | 5 +- drivers/common/cnxk/roc_nix_npc.c | 2 +- drivers/common/cnxk/roc_nix_priv.h | 1 + drivers/common/cnxk/roc_nix_ptp.c | 8 + drivers/common/cnxk/roc_nix_queue.c | 93 +++- drivers/common/cnxk/roc_nix_stats.c | 18 + drivers/common/cnxk/roc_nix_tm.c | 8 +- drivers/common/cnxk/roc_nix_tm_ops.c | 2 +- drivers/common/cnxk/roc_nix_tm_utils.c | 3 +- drivers/common/cnxk/roc_npc.c | 14 +- drivers/common/cnxk/roc_npc_mcam.c | 4 +- drivers/common/cnxk/roc_npc_mcam_dump.c | 40 +- drivers/common/cnxk/roc_npc_parse.c | 13 +- drivers/common/cnxk/roc_npc_priv.h | 2 +- drivers/common/cnxk/roc_npc_utils.c | 7 +- drivers/common/cnxk/version.map | 1 + drivers/common/cpt/cpt_ucode.h | 4 +- drivers/common/cpt/cpt_ucode_asym.h | 2 +- drivers/common/dpaax/caamflib/desc/algo.h | 2 +- drivers/common/dpaax/caamflib/desc/sdap.h | 6 +- drivers/common/dpaax/dpaax_iova_table.c | 2 +- drivers/common/iavf/iavf_type.h | 2 +- drivers/common/iavf/virtchnl.h | 2 +- drivers/common/iavf/virtchnl_inline_ipsec.h | 9 + drivers/common/mlx5/linux/meson.build | 2 +- drivers/common/mlx5/linux/mlx5_common_os.c | 2 +- drivers/common/mlx5/linux/mlx5_common_os.h | 2 + drivers/common/mlx5/linux/mlx5_nl.c | 102 +++- drivers/common/mlx5/linux/mlx5_nl.h | 8 +- drivers/common/mlx5/mlx5_common.c | 22 +- drivers/common/mlx5/mlx5_common_mr.c | 11 +- drivers/common/mlx5/mlx5_devx_cmds.c | 32 +- drivers/common/mlx5/mlx5_devx_cmds.h | 3 + drivers/common/mlx5/mlx5_malloc.c | 4 +- drivers/common/mlx5/mlx5_malloc.h | 2 +- drivers/common/mlx5/mlx5_prm.h | 30 +- drivers/common/mlx5/version.map | 5 + drivers/common/mlx5/windows/meson.build | 4 +- drivers/common/mlx5/windows/mlx5_common_os.c | 4 +- drivers/common/mlx5/windows/mlx5_common_os.h | 2 +- .../qat/qat_adf/adf_transport_access_macros.h | 2 +- drivers/common/sfc_efx/base/efx_mae.c | 11 +- drivers/common/sfc_efx/efsys.h | 2 +- drivers/compress/mlx5/mlx5_compress.c | 13 +- drivers/compress/octeontx/include/zip_regs.h | 4 +- drivers/compress/octeontx/otx_zip.h | 2 +- drivers/compress/octeontx/otx_zip_pmd.c | 6 +- drivers/compress/qat/qat_comp_pmd.c | 2 +- drivers/crypto/bcmfs/bcmfs_device.h | 2 +- drivers/crypto/bcmfs/bcmfs_qp.c | 2 +- drivers/crypto/bcmfs/bcmfs_sym_defs.h | 6 +- drivers/crypto/bcmfs/bcmfs_sym_engine.h | 2 +- drivers/crypto/bcmfs/hw/bcmfs5_rm.c | 2 +- drivers/crypto/caam_jr/caam_jr_hw_specific.h | 4 +- drivers/crypto/caam_jr/caam_jr_pvt.h | 4 +- drivers/crypto/caam_jr/caam_jr_uio.c | 2 +- drivers/crypto/ccp/ccp_crypto.c | 2 +- drivers/crypto/ccp/ccp_crypto.h | 2 +- drivers/crypto/ccp/ccp_dev.h | 2 +- drivers/crypto/cnxk/cn9k_ipsec_la_ops.h | 6 +- drivers/crypto/cnxk/cnxk_cryptodev_ops.c | 21 +- drivers/crypto/cnxk/cnxk_cryptodev_ops.h | 6 +- drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c | 6 +- drivers/crypto/dpaa_sec/dpaa_sec.c | 8 +- drivers/crypto/ipsec_mb/ipsec_mb_ops.c | 10 +- drivers/crypto/ipsec_mb/ipsec_mb_private.h | 4 +- drivers/crypto/ipsec_mb/pmd_aesni_gcm.c | 16 +- drivers/crypto/ipsec_mb/pmd_aesni_mb.c | 134 ++++-- drivers/crypto/ipsec_mb/pmd_aesni_mb_priv.h | 4 +- drivers/crypto/ipsec_mb/pmd_zuc.c | 22 +- drivers/crypto/ipsec_mb/pmd_zuc_priv.h | 2 +- drivers/crypto/octeontx/otx_cryptodev_hw_access.c | 2 +- drivers/crypto/octeontx/otx_cryptodev_mbox.h | 2 +- drivers/crypto/octeontx/otx_cryptodev_ops.c | 2 +- drivers/crypto/qat/qat_asym.c | 6 +- drivers/crypto/qat/qat_sym.c | 2 +- drivers/crypto/qat/qat_sym_hw_dp.c | 16 +- drivers/crypto/virtio/virtio_rxtx.c | 3 + drivers/crypto/virtio/virtqueue.h | 2 +- drivers/dma/cnxk/meson.build | 1 - drivers/dma/hisilicon/hisi_dmadev.c | 23 +- drivers/dma/idxd/dpdk_idxd_cfg.py | 19 +- drivers/dma/idxd/idxd_common.c | 10 +- drivers/dma/skeleton/skeleton_dmadev.c | 2 +- drivers/event/cnxk/cn10k_eventdev.c | 4 +- drivers/event/cnxk/cn10k_worker.h | 2 - drivers/event/cnxk/cn9k_eventdev.c | 11 +- drivers/event/cnxk/cn9k_worker.h | 2 - drivers/event/cnxk/cnxk_eventdev.c | 2 +- drivers/event/cnxk/cnxk_eventdev.h | 8 +- drivers/event/cnxk/cnxk_eventdev_adptr.c | 2 +- drivers/event/cnxk/cnxk_eventdev_selftest.c | 4 +- drivers/event/cnxk/cnxk_tim_worker.c | 2 +- drivers/event/cnxk/cnxk_tim_worker.h | 4 +- drivers/event/dlb2/dlb2.c | 32 +- drivers/event/dlb2/dlb2_priv.h | 2 +- drivers/event/dlb2/dlb2_selftest.c | 2 +- drivers/event/dlb2/pf/base/dlb2_resource.c | 23 +- drivers/event/dlb2/rte_pmd_dlb2.h | 2 +- drivers/event/dpaa2/dpaa2_eventdev_selftest.c | 2 +- drivers/event/dsw/dsw_evdev.h | 4 +- drivers/event/dsw/dsw_event.c | 4 +- drivers/event/octeontx/ssovf_evdev.h | 2 +- drivers/event/octeontx/ssovf_evdev_selftest.c | 2 +- drivers/event/octeontx2/otx2_evdev_selftest.c | 2 +- drivers/event/octeontx2/otx2_worker_dual.h | 2 +- drivers/event/opdl/opdl_evdev.c | 2 +- drivers/event/opdl/opdl_test.c | 2 +- drivers/event/sw/sw_evdev.h | 2 +- drivers/event/sw/sw_evdev_selftest.c | 2 +- drivers/gpu/cuda/cuda.c | 8 +- drivers/mempool/cnxk/cn10k_mempool_ops.c | 2 +- drivers/mempool/dpaa/dpaa_mempool.c | 2 +- drivers/mempool/octeontx/octeontx_fpavf.c | 4 +- drivers/net/af_xdp/rte_eth_af_xdp.c | 167 +++---- drivers/net/ark/ark_global.h | 2 +- drivers/net/atlantic/atl_ethdev.c | 2 +- drivers/net/atlantic/atl_rxtx.c | 2 +- drivers/net/atlantic/hw_atl/hw_atl_b0.c | 2 +- drivers/net/axgbe/axgbe_dev.c | 2 +- drivers/net/axgbe/axgbe_ethdev.c | 41 +- drivers/net/axgbe/axgbe_ethdev.h | 2 +- drivers/net/axgbe/axgbe_phy_impl.c | 4 +- drivers/net/axgbe/axgbe_rxtx_vec_sse.c | 2 +- drivers/net/bnx2x/bnx2x.c | 38 +- drivers/net/bnx2x/bnx2x.h | 10 +- drivers/net/bnx2x/bnx2x_stats.c | 2 +- drivers/net/bnx2x/bnx2x_stats.h | 4 +- drivers/net/bnx2x/bnx2x_vfpf.c | 2 +- drivers/net/bnx2x/bnx2x_vfpf.h | 2 +- drivers/net/bnx2x/ecore_fw_defs.h | 2 +- drivers/net/bnx2x/ecore_hsi.h | 26 +- drivers/net/bnx2x/ecore_init_ops.h | 6 +- drivers/net/bnx2x/ecore_reg.h | 28 +- drivers/net/bnx2x/ecore_sp.c | 6 +- drivers/net/bnx2x/ecore_sp.h | 6 +- drivers/net/bnx2x/elink.c | 20 +- drivers/net/bnxt/bnxt.h | 18 +- drivers/net/bnxt/bnxt_cpr.c | 25 +- drivers/net/bnxt/bnxt_ethdev.c | 133 ++++-- drivers/net/bnxt/bnxt_flow.c | 14 +- drivers/net/bnxt/bnxt_hwrm.c | 123 +++-- drivers/net/bnxt/bnxt_hwrm.h | 7 +- drivers/net/bnxt/bnxt_reps.c | 33 +- drivers/net/bnxt/bnxt_ring.c | 3 + drivers/net/bnxt/bnxt_rxq.c | 9 +- drivers/net/bnxt/bnxt_rxr.c | 6 + drivers/net/bnxt/bnxt_stats.c | 105 +++-- drivers/net/bnxt/bnxt_txr.c | 3 + drivers/net/bnxt/bnxt_vnic.c | 84 ++-- drivers/net/bnxt/bnxt_vnic.h | 7 +- drivers/net/bnxt/tf_core/tf_session.c | 8 +- drivers/net/bnxt/tf_core/tfp.c | 2 +- drivers/net/bnxt/tf_core/tfp.h | 2 +- drivers/net/bonding/eth_bond_8023ad_private.h | 2 +- drivers/net/bonding/eth_bond_private.h | 8 +- drivers/net/bonding/rte_eth_bond_8023ad.c | 20 +- drivers/net/bonding/rte_eth_bond_8023ad.h | 4 +- drivers/net/bonding/rte_eth_bond_alb.h | 2 +- drivers/net/bonding/rte_eth_bond_api.c | 12 +- drivers/net/bonding/rte_eth_bond_pmd.c | 163 ++++++- drivers/net/cnxk/cn10k_ethdev.c | 6 + drivers/net/cnxk/cn10k_ethdev.h | 5 +- drivers/net/cnxk/cn10k_ethdev_sec.c | 42 +- drivers/net/cnxk/cn10k_rx.c | 4 + drivers/net/cnxk/cn10k_rx.h | 9 +- drivers/net/cnxk/cn10k_tx.c | 4 + drivers/net/cnxk/cn10k_tx.h | 6 +- drivers/net/cnxk/cn9k_rx.c | 4 + drivers/net/cnxk/cn9k_rx.h | 14 +- drivers/net/cnxk/cn9k_tx.c | 4 + drivers/net/cnxk/cn9k_tx.h | 6 +- drivers/net/cnxk/cnxk_ethdev.c | 15 +- drivers/net/cnxk/cnxk_ethdev.h | 9 +- drivers/net/cnxk/cnxk_ethdev_mtr.c | 59 ++- drivers/net/cnxk/cnxk_ethdev_ops.c | 5 +- drivers/net/cnxk/cnxk_ptp.c | 2 +- drivers/net/cxgbe/base/adapter.h | 2 - drivers/net/cxgbe/base/t4_hw.c | 83 ++-- drivers/net/cxgbe/base/t4vf_hw.c | 28 +- drivers/net/cxgbe/cxgbe_flow.c | 2 +- drivers/net/cxgbe/cxgbevf_main.c | 2 +- drivers/net/cxgbe/sge.c | 8 +- drivers/net/dpaa/dpaa_ethdev.c | 6 +- drivers/net/dpaa/dpaa_rxtx.c | 4 +- drivers/net/dpaa/fmlib/fm_ext.h | 2 +- drivers/net/dpaa/fmlib/fm_pcd_ext.h | 8 +- drivers/net/dpaa/fmlib/fm_port_ext.h | 14 +- drivers/net/dpaa2/dpaa2_ethdev.c | 23 +- drivers/net/dpaa2/dpaa2_ethdev.h | 4 +- drivers/net/dpaa2/dpaa2_flow.c | 8 +- drivers/net/dpaa2/dpaa2_mux.c | 2 +- drivers/net/dpaa2/dpaa2_ptp.c | 8 +- drivers/net/dpaa2/dpaa2_rxtx.c | 45 +- drivers/net/dpaa2/mc/fsl_dpni.h | 10 +- drivers/net/e1000/e1000_ethdev.h | 4 +- drivers/net/e1000/em_ethdev.c | 10 +- drivers/net/e1000/em_rxtx.c | 6 +- drivers/net/e1000/igb_ethdev.c | 18 +- drivers/net/e1000/igb_flow.c | 4 +- drivers/net/e1000/igb_pf.c | 2 +- drivers/net/e1000/igb_rxtx.c | 14 +- drivers/net/ena/ena_ethdev.c | 71 +-- drivers/net/ena/ena_ethdev.h | 7 +- drivers/net/enetfec/enet_regs.h | 2 +- drivers/net/enic/enic_flow.c | 18 +- drivers/net/enic/enic_fm_flow.c | 12 +- drivers/net/enic/enic_main.c | 2 +- drivers/net/enic/enic_rxtx.c | 2 +- drivers/net/fm10k/fm10k.h | 2 +- drivers/net/fm10k/fm10k_ethdev.c | 12 +- drivers/net/fm10k/fm10k_rxtx_vec.c | 10 +- drivers/net/hinic/hinic_pmd_ethdev.c | 4 +- drivers/net/hinic/hinic_pmd_ethdev.h | 2 +- drivers/net/hinic/hinic_pmd_flow.c | 4 +- drivers/net/hinic/hinic_pmd_tx.c | 2 +- drivers/net/hns3/hns3_cmd.c | 4 +- drivers/net/hns3/hns3_cmd.h | 1 - drivers/net/hns3/hns3_common.c | 10 +- drivers/net/hns3/hns3_dcb.c | 10 +- drivers/net/hns3/hns3_ethdev.c | 53 ++- drivers/net/hns3/hns3_ethdev.h | 9 +- drivers/net/hns3/hns3_ethdev_vf.c | 14 +- drivers/net/hns3/hns3_fdir.h | 2 +- drivers/net/hns3/hns3_flow.c | 27 +- drivers/net/hns3/hns3_mbx.c | 4 +- drivers/net/hns3/hns3_mbx.h | 2 +- drivers/net/hns3/hns3_mp.c | 7 +- drivers/net/hns3/hns3_ptp.c | 1 + drivers/net/hns3/hns3_rss.c | 62 ++- drivers/net/hns3/hns3_rss.h | 2 +- drivers/net/hns3/hns3_rxtx.c | 73 ++- drivers/net/hns3/hns3_rxtx.h | 2 +- drivers/net/hns3/hns3_rxtx_vec.c | 20 +- drivers/net/hns3/hns3_stats.c | 124 +++-- drivers/net/hns3/hns3_stats.h | 11 +- drivers/net/i40e/i40e_ethdev.c | 53 ++- drivers/net/i40e/i40e_ethdev.h | 10 +- drivers/net/i40e/i40e_fdir.c | 10 +- drivers/net/i40e/i40e_flow.c | 2 +- drivers/net/i40e/i40e_pf.c | 8 +- drivers/net/i40e/i40e_rxtx.c | 20 +- drivers/net/i40e/i40e_rxtx_vec_altivec.c | 2 +- drivers/net/i40e/i40e_rxtx_vec_neon.c | 4 +- drivers/net/i40e/i40e_rxtx_vec_sse.c | 6 +- drivers/net/i40e/rte_pmd_i40e.c | 2 +- drivers/net/iavf/iavf_ethdev.c | 6 +- drivers/net/iavf/iavf_ipsec_crypto.c | 38 +- drivers/net/iavf/iavf_ipsec_crypto.h | 6 +- drivers/net/iavf/iavf_rxtx.c | 104 +++-- drivers/net/iavf/iavf_rxtx.h | 2 - drivers/net/iavf/iavf_rxtx_vec_sse.c | 4 +- drivers/net/iavf/iavf_vchnl.c | 6 +- drivers/net/ice/base/ice_flex_pipe.c | 11 +- drivers/net/ice/base/ice_flex_type.h | 1 + drivers/net/ice/base/ice_protocol_type.h | 1 + drivers/net/ice/base/ice_switch.c | 1 + drivers/net/ice/ice_dcf.c | 2 +- drivers/net/ice/ice_dcf_ethdev.c | 15 +- drivers/net/ice/ice_dcf_ethdev.h | 1 + drivers/net/ice/ice_dcf_parent.c | 18 +- drivers/net/ice/ice_ethdev.c | 14 +- drivers/net/ice/ice_ethdev.h | 2 + drivers/net/ice/ice_fdir_filter.c | 32 ++ drivers/net/ice/ice_generic_flow.c | 4 +- drivers/net/ice/ice_rxtx.c | 27 +- drivers/net/ice/ice_rxtx_vec_common.h | 5 +- drivers/net/ice/ice_rxtx_vec_sse.c | 4 +- drivers/net/ice/ice_switch_filter.c | 45 +- drivers/net/igc/igc_filter.c | 2 +- drivers/net/igc/igc_txrx.c | 4 +- drivers/net/ionic/ionic_if.h | 6 +- drivers/net/ipn3ke/ipn3ke_ethdev.c | 2 +- drivers/net/ipn3ke/ipn3ke_ethdev.h | 4 +- drivers/net/ipn3ke/ipn3ke_flow.c | 2 +- drivers/net/ipn3ke/ipn3ke_representor.c | 12 +- drivers/net/ipn3ke/meson.build | 2 +- drivers/net/ixgbe/ixgbe_bypass.c | 2 +- drivers/net/ixgbe/ixgbe_bypass_api.h | 4 +- drivers/net/ixgbe/ixgbe_ethdev.c | 65 ++- drivers/net/ixgbe/ixgbe_ethdev.h | 2 +- drivers/net/ixgbe/ixgbe_fdir.c | 2 +- drivers/net/ixgbe/ixgbe_flow.c | 4 +- drivers/net/ixgbe/ixgbe_ipsec.c | 2 +- drivers/net/ixgbe/ixgbe_pf.c | 2 +- drivers/net/ixgbe/ixgbe_rxtx.c | 10 +- drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c | 13 +- drivers/net/kni/rte_eth_kni.c | 2 +- drivers/net/memif/memif_socket.c | 5 +- drivers/net/memif/rte_eth_memif.c | 21 +- drivers/net/mlx4/meson.build | 2 +- drivers/net/mlx4/mlx4.h | 2 +- drivers/net/mlx4/mlx4_ethdev.c | 2 +- drivers/net/mlx5/linux/mlx5_ethdev_os.c | 63 ++- drivers/net/mlx5/linux/mlx5_flow_os.c | 3 +- drivers/net/mlx5/linux/mlx5_os.c | 203 ++++---- drivers/net/mlx5/linux/mlx5_verbs.c | 4 +- drivers/net/mlx5/linux/mlx5_vlan_os.c | 2 +- drivers/net/mlx5/mlx5.c | 43 +- drivers/net/mlx5/mlx5.h | 27 +- drivers/net/mlx5/mlx5_defs.h | 6 +- drivers/net/mlx5/mlx5_devx.c | 6 +- drivers/net/mlx5/mlx5_ethdev.c | 2 +- drivers/net/mlx5/mlx5_flow.c | 403 ++++++++++------ drivers/net/mlx5/mlx5_flow.h | 24 +- drivers/net/mlx5/mlx5_flow_aso.c | 117 ++--- drivers/net/mlx5/mlx5_flow_dv.c | 234 ++++++---- drivers/net/mlx5/mlx5_flow_flex.c | 14 +- drivers/net/mlx5/mlx5_flow_meter.c | 39 +- drivers/net/mlx5/mlx5_flow_verbs.c | 89 +++- drivers/net/mlx5/mlx5_rx.c | 24 +- drivers/net/mlx5/mlx5_rx.h | 15 +- drivers/net/mlx5/mlx5_rxq.c | 269 +++++++---- drivers/net/mlx5/mlx5_rxtx_vec.c | 8 +- drivers/net/mlx5/mlx5_rxtx_vec_altivec.h | 2 +- drivers/net/mlx5/mlx5_rxtx_vec_neon.h | 2 +- drivers/net/mlx5/mlx5_rxtx_vec_sse.h | 2 +- drivers/net/mlx5/mlx5_trigger.c | 12 +- drivers/net/mlx5/mlx5_tx.c | 2 +- drivers/net/mlx5/mlx5_tx.h | 1 - drivers/net/mlx5/mlx5_utils.c | 43 +- drivers/net/mlx5/mlx5_utils.h | 30 +- drivers/net/mlx5/windows/mlx5_flow_os.c | 4 +- drivers/net/mlx5/windows/mlx5_os.c | 54 ++- drivers/net/mvneta/mvneta_ethdev.c | 2 +- drivers/net/mvpp2/mrvl_ethdev.c | 2 +- drivers/net/mvpp2/mrvl_qos.c | 4 +- drivers/net/netvsc/hn_nvs.c | 2 +- drivers/net/netvsc/hn_rxtx.c | 4 +- drivers/net/netvsc/hn_vf.c | 2 +- drivers/net/nfb/nfb.h | 4 - drivers/net/nfb/nfb_ethdev.c | 15 +- drivers/net/nfb/nfb_rxmode.c | 20 +- drivers/net/nfp/nfp_common.c | 4 - drivers/net/nfp/nfp_ethdev.c | 2 + drivers/net/nfp/nfp_ethdev_vf.c | 2 + drivers/net/nfp/nfp_rxtx.c | 2 + drivers/net/nfp/nfpcore/nfp-common/nfp_resid.h | 6 +- drivers/net/nfp/nfpcore/nfp_cppcore.c | 2 +- drivers/net/nfp/nfpcore/nfp_nsp.h | 2 +- drivers/net/nfp/nfpcore/nfp_resource.c | 2 +- drivers/net/nfp/nfpcore/nfp_rtsym.c | 2 +- drivers/net/nfp/nfpcore/nfp_target.h | 26 +- drivers/net/ngbe/base/ngbe_dummy.h | 4 + drivers/net/ngbe/base/ngbe_eeprom.c | 22 +- drivers/net/ngbe/base/ngbe_hw.c | 247 +++++----- drivers/net/ngbe/base/ngbe_hw.h | 3 + drivers/net/ngbe/base/ngbe_mbx.c | 22 - drivers/net/ngbe/base/ngbe_mng.c | 71 ++- drivers/net/ngbe/base/ngbe_mng.h | 21 + drivers/net/ngbe/base/ngbe_phy.c | 30 +- drivers/net/ngbe/base/ngbe_phy_mvl.c | 13 +- drivers/net/ngbe/base/ngbe_phy_rtl.c | 10 +- drivers/net/ngbe/base/ngbe_phy_yt.c | 16 +- drivers/net/ngbe/base/ngbe_regs.h | 51 +- drivers/net/ngbe/base/ngbe_type.h | 10 + drivers/net/ngbe/ngbe_ethdev.c | 133 ++---- drivers/net/ngbe/ngbe_ethdev.h | 1 + drivers/net/ngbe/ngbe_logs.h | 7 +- drivers/net/ngbe/ngbe_pf.c | 2 +- drivers/net/octeontx/octeontx_ethdev.c | 2 +- drivers/net/octeontx2/otx2_ethdev_irq.c | 2 +- drivers/net/octeontx2/otx2_ptp.c | 2 +- drivers/net/octeontx2/otx2_tx.h | 4 +- drivers/net/octeontx2/otx2_vlan.c | 2 +- drivers/net/octeontx_ep/otx2_ep_vf.c | 2 +- drivers/net/octeontx_ep/otx_ep_vf.c | 2 +- drivers/net/pfe/pfe_ethdev.c | 2 +- drivers/net/pfe/pfe_hal.c | 2 +- drivers/net/pfe/pfe_hif.c | 4 +- drivers/net/pfe/pfe_hif.h | 2 +- drivers/net/pfe/pfe_hif_lib.c | 8 +- drivers/net/qede/qede_debug.c | 6 +- drivers/net/qede/qede_ethdev.c | 2 +- drivers/net/qede/qede_rxtx.c | 161 +++---- drivers/net/qede/qede_rxtx.h | 2 +- drivers/net/sfc/sfc.c | 2 +- drivers/net/sfc/sfc_dp.c | 2 +- drivers/net/sfc/sfc_dp_rx.h | 4 +- drivers/net/sfc/sfc_ef100.h | 2 +- drivers/net/sfc/sfc_ef100_rx.c | 2 +- drivers/net/sfc/sfc_ef10_essb_rx.c | 2 +- drivers/net/sfc/sfc_ef10_rx_ev.h | 2 +- drivers/net/sfc/sfc_ethdev.c | 6 - drivers/net/sfc/sfc_flow.c | 8 +- drivers/net/sfc/sfc_flow_tunnel.c | 4 +- drivers/net/sfc/sfc_intr.c | 2 +- drivers/net/sfc/sfc_repr_proxy.c | 5 + drivers/net/sfc/sfc_rx.c | 6 +- drivers/net/sfc/sfc_sw_stats.c | 2 +- drivers/net/sfc/sfc_tx.c | 10 +- drivers/net/softnic/rte_eth_softnic_flow.c | 2 +- drivers/net/tap/rte_eth_tap.c | 82 +++- drivers/net/tap/tap_bpf_api.c | 4 +- drivers/net/tap/tap_flow.c | 4 +- drivers/net/thunderx/nicvf_svf.c | 2 +- drivers/net/txgbe/base/meson.build | 2 +- drivers/net/txgbe/base/txgbe_eeprom.c | 41 +- drivers/net/txgbe/base/txgbe_hw.c | 202 ++------ drivers/net/txgbe/base/txgbe_mbx.c | 38 -- drivers/net/txgbe/base/txgbe_mng.c | 15 +- drivers/net/txgbe/base/txgbe_osdep.h | 1 + drivers/net/txgbe/base/txgbe_phy.c | 88 +--- drivers/net/txgbe/base/txgbe_vf.c | 12 +- drivers/net/txgbe/txgbe_ethdev.c | 11 +- drivers/net/txgbe/txgbe_ethdev_vf.c | 6 +- drivers/net/txgbe/txgbe_ipsec.c | 2 +- drivers/net/txgbe/txgbe_logs.h | 7 +- drivers/net/txgbe/txgbe_pf.c | 2 +- drivers/net/virtio/virtio_ethdev.c | 7 +- drivers/net/virtio/virtio_pci.c | 2 +- drivers/net/virtio/virtio_rxtx.c | 6 +- drivers/net/virtio/virtio_rxtx_packed.h | 3 +- drivers/net/virtio/virtio_rxtx_packed_avx.h | 2 +- drivers/net/virtio/virtio_user/vhost_user.c | 6 +- drivers/net/virtio/virtio_user_ethdev.c | 1 + drivers/net/virtio/virtqueue.c | 2 +- drivers/net/virtio/virtqueue.h | 4 +- drivers/raw/dpaa2_qdma/dpaa2_qdma.c | 2 +- drivers/raw/dpaa2_qdma/dpaa2_qdma.h | 4 +- drivers/raw/ifpga/base/ifpga_defines.h | 6 +- drivers/raw/ifpga/base/opae_spi.c | 12 + drivers/raw/ifpga/base/opae_spi.h | 4 + drivers/raw/ifpga/base/opae_spi_transaction.c | 215 +++++---- drivers/raw/ifpga/ifpga_rawdev.c | 173 ++++--- drivers/raw/ifpga/ifpga_rawdev.h | 9 +- drivers/raw/ntb/ntb.c | 4 + drivers/raw/ntb/ntb.h | 2 +- drivers/regex/mlx5/mlx5_rxp.c | 2 +- drivers/vdpa/ifc/base/ifcvf.c | 14 +- drivers/vdpa/mlx5/mlx5_vdpa.c | 4 +- drivers/vdpa/mlx5/mlx5_vdpa_mem.c | 2 +- drivers/vdpa/mlx5/mlx5_vdpa_virtq.c | 2 +- drivers/vdpa/sfc/sfc_vdpa.c | 3 +- drivers/vdpa/sfc/sfc_vdpa_ops.c | 4 +- examples/bbdev_app/main.c | 2 +- examples/bond/main.c | 4 +- examples/distributor/main.c | 2 +- examples/dma/dmafwd.c | 2 +- examples/ethtool/lib/rte_ethtool.c | 2 +- examples/ethtool/lib/rte_ethtool.h | 4 +- examples/flow_classify/flow_classify.c | 2 +- examples/ip_reassembly/main.c | 8 +- examples/ipsec-secgw/event_helper.c | 19 +- examples/ipsec-secgw/ipsec-secgw.c | 21 +- examples/ipsec-secgw/ipsec_process.c | 6 +- examples/ipsec-secgw/ipsec_worker.c | 15 +- examples/ipsec-secgw/sa.c | 6 +- examples/ipsec-secgw/sp4.c | 2 +- examples/ipsec-secgw/sp6.c | 2 +- examples/ipsec-secgw/test/common_defs.sh | 4 +- examples/kni/main.c | 4 +- examples/l2fwd-cat/l2fwd-cat.c | 2 +- examples/l2fwd-crypto/main.c | 2 +- examples/l2fwd-event/l2fwd_event_generic.c | 2 +- examples/l2fwd-event/l2fwd_event_internal_port.c | 2 +- examples/l2fwd-jobstats/main.c | 2 +- examples/l3fwd-acl/main.c | 6 +- examples/l3fwd-power/main.c | 4 +- examples/l3fwd/l3fwd.h | 4 + examples/l3fwd/l3fwd_common.h | 8 +- examples/l3fwd/l3fwd_event.c | 2 - examples/l3fwd/l3fwd_event_internal_port.c | 2 + examples/l3fwd/l3fwd_neon.h | 2 +- examples/l3fwd/l3fwd_sse.h | 2 +- examples/l3fwd/main.c | 59 ++- examples/multi_process/hotplug_mp/commands.c | 2 +- examples/multi_process/simple_mp/main.c | 2 +- examples/multi_process/symmetric_mp/main.c | 2 +- examples/ntb/ntb_fwd.c | 2 +- examples/packet_ordering/main.c | 2 +- examples/performance-thread/common/lthread.c | 6 +- examples/performance-thread/common/lthread_diag.c | 2 +- examples/performance-thread/common/lthread_int.h | 2 +- examples/performance-thread/common/lthread_tls.c | 2 +- examples/performance-thread/l3fwd-thread/main.c | 12 +- .../performance-thread/pthread_shim/pthread_shim.h | 2 +- examples/pipeline/examples/registers.spec | 2 +- examples/qos_sched/args.c | 5 +- examples/qos_sched/cmdline.c | 2 +- examples/server_node_efd/node/node.c | 2 +- examples/skeleton/basicfwd.c | 2 +- examples/vhost/main.c | 93 ++-- examples/vm_power_manager/channel_monitor.c | 2 +- examples/vm_power_manager/power_manager.h | 2 +- examples/vmdq/main.c | 2 +- kernel/freebsd/meson.build | 4 +- kernel/linux/kni/kni_fifo.h | 2 +- kernel/linux/kni/kni_misc.c | 12 +- kernel/linux/kni/meson.build | 10 +- kernel/linux/meson.build | 9 +- lib/acl/acl_bld.c | 2 +- lib/acl/acl_run_altivec.h | 2 +- lib/acl/acl_run_avx512.c | 2 +- lib/acl/acl_run_avx512x16.h | 14 +- lib/acl/acl_run_avx512x8.h | 12 +- lib/acl/rte_acl_osdep.h | 8 + lib/bpf/bpf_convert.c | 4 +- lib/bpf/bpf_def.h | 8 + lib/bpf/bpf_impl.h | 6 +- lib/compressdev/rte_compressdev_internal.h | 13 +- lib/cryptodev/cryptodev_pmd.h | 8 + lib/cryptodev/rte_crypto.h | 9 + lib/cryptodev/rte_crypto_asym.h | 2 +- lib/distributor/rte_distributor_single.c | 3 +- lib/dmadev/rte_dmadev.h | 4 +- lib/dmadev/rte_dmadev_pmd.h | 2 + lib/eal/arm/include/rte_cycles_32.h | 2 +- lib/eal/common/eal_common_devargs.c | 1 + lib/eal/common/eal_common_dynmem.c | 4 + lib/eal/common/eal_common_proc.c | 20 +- lib/eal/freebsd/eal_interrupts.c | 4 +- lib/eal/freebsd/include/rte_os.h | 8 + lib/eal/include/generic/rte_pflock.h | 2 +- lib/eal/include/generic/rte_ticketlock.h | 14 +- lib/eal/include/meson.build | 1 + lib/eal/include/rte_bitops.h | 8 + lib/eal/include/rte_branch_prediction.h | 8 + lib/eal/include/rte_compat.h | 8 + lib/eal/include/rte_hypervisor.h | 8 + lib/eal/include/rte_keepalive.h | 8 + lib/eal/include/rte_malloc.h | 4 +- lib/eal/include/rte_pci_dev_feature_defs.h | 8 + lib/eal/include/rte_pci_dev_features.h | 8 + lib/eal/include/rte_time.h | 8 + lib/eal/include/rte_trace_point.h | 2 +- lib/eal/include/rte_trace_point_register.h | 8 + lib/eal/linux/eal.c | 4 + lib/eal/linux/eal_dev.c | 5 +- lib/eal/linux/eal_interrupts.c | 4 +- lib/eal/linux/eal_memalloc.c | 8 +- lib/eal/linux/eal_vfio.h | 3 +- lib/eal/linux/eal_vfio_mp_sync.c | 8 + lib/eal/linux/include/rte_os.h | 8 + lib/eal/windows/eal_memalloc.c | 6 +- lib/eal/windows/eal_windows.h | 2 +- lib/eal/windows/include/dirent.h | 4 +- lib/eal/windows/include/fnmatch.h | 4 +- lib/eal/x86/include/rte_atomic.h | 2 +- lib/efd/rte_efd.c | 2 +- lib/ethdev/ethdev_driver.h | 26 ++ lib/ethdev/ethdev_pci.h | 13 +- lib/ethdev/ethdev_vdev.h | 8 + lib/ethdev/rte_dev_info.h | 8 + lib/ethdev/rte_ethdev.c | 28 +- lib/ethdev/rte_ethdev.h | 4 +- lib/ethdev/version.map | 1 + lib/eventdev/eventdev_pmd.h | 4 + lib/eventdev/eventdev_pmd_pci.h | 8 + lib/eventdev/eventdev_pmd_vdev.h | 8 + lib/eventdev/rte_event_eth_rx_adapter.c | 142 ++++-- lib/eventdev/rte_event_eth_tx_adapter.c | 14 +- lib/eventdev/rte_event_ring.h | 9 + lib/eventdev/rte_event_timer_adapter.h | 4 + lib/eventdev/rte_eventdev.h | 14 +- lib/fib/rte_fib.c | 6 +- lib/fib/rte_fib.h | 4 +- lib/fib/rte_fib6.c | 6 +- lib/fib/rte_fib6.h | 4 +- lib/gpudev/version.map | 2 + lib/graph/rte_graph_worker.h | 2 +- lib/ipsec/ipsec_telemetry.c | 2 +- lib/ipsec/rte_ipsec_group.h | 4 +- lib/ipsec/rte_ipsec_sad.h | 2 +- lib/ipsec/sa.c | 2 +- lib/kni/rte_kni_common.h | 8 + lib/mbuf/rte_mbuf_core.h | 2 +- lib/meson.build | 2 +- lib/metrics/rte_metrics_telemetry.h | 7 + lib/net/rte_l2tpv2.h | 36 +- lib/pcapng/rte_pcapng.c | 4 +- lib/pipeline/rte_swx_ctl.c | 52 ++- lib/pipeline/rte_swx_ctl.h | 4 +- lib/pipeline/rte_swx_pipeline.c | 2 +- lib/pipeline/rte_swx_pipeline_internal.h | 4 +- lib/pipeline/rte_swx_pipeline_spec.c | 2 +- lib/power/power_cppc_cpufreq.c | 2 +- lib/regexdev/rte_regexdev.h | 10 +- lib/regexdev/rte_regexdev_driver.h | 3 + lib/regexdev/version.map | 11 + lib/ring/rte_ring.c | 4 +- lib/ring/rte_ring_core.h | 2 +- lib/sched/rte_pie.c | 22 +- lib/sched/rte_pie.h | 6 +- lib/sched/rte_red.h | 4 +- lib/sched/rte_sched.c | 2 +- lib/sched/rte_sched.h | 2 +- lib/stack/meson.build | 1 + lib/table/rte_swx_table.h | 2 +- lib/table/rte_swx_table_selector.h | 2 +- lib/table/rte_table_hash_func.h | 32 +- lib/telemetry/rte_telemetry.h | 8 + lib/telemetry/telemetry.c | 2 +- lib/telemetry/telemetry_json.h | 2 +- lib/vhost/rte_vdpa.h | 9 + lib/vhost/rte_vhost.h | 2 + lib/vhost/rte_vhost_async.h | 8 + lib/vhost/rte_vhost_crypto.h | 8 + lib/vhost/vdpa_driver.h | 8 + lib/vhost/version.map | 2 +- lib/vhost/vhost.h | 29 +- lib/vhost/vhost_user.c | 148 +++--- lib/vhost/virtio_net.c | 11 +- meson.build | 4 +- 745 files changed, 6605 insertions(+), 3994 deletions(-) Adham Masarwah (2): net/mlx5: fix destroying empty matchers list app/testpmd: fix show RSS RETA on Windows Ajit Khaparde (7): net/bnxt: fix ring teardown net/bnxt: fix PAM4 mask setting net/bnxt: fix crash by validating pointer net/bnxt: check VF representor pointer before access net/bnxt: fix VF resource allocation strategy net/bnxt: set HW coalescing parameters net/bnxt: fix ring calculation for representors Alexander Kozyrev (4): net/mlx5: fix maximum packet headers size for TSO net/mlx5: fix MPRQ WQE size assertion net/mlx5: fix committed bucket size net/mlx5: fix meter capabilities reporting Ali Alnubani (1): doc: fix typos and punctuation in flow API guide Anatoly Burakov (1): net/qede: fix redundant condition in debug code Andy Pei (1): vdpa/ifc: fix log info mismatch Ankur Dwivedi (1): common/cnxk: fix NPC key extraction validation Anoob Joseph (4): common/cnxk: fix reset of fields crypto/cnxk: fix inflight count calculation crypto/cnxk: fix extend tail calculation crypto/cnxk: fix update of number of descriptors Arek Kusztal (1): cryptodev: fix RSA key type name Asaf Ravid (1): net/cnxk: fix promiscuous mode in multicast enable flow Ashwin Sekhar T K (1): mempool/cnxk: fix batch allocation failure path Bin Zheng (1): net/ixgbe: add vector Rx parameter check Bing Zhao (5): common/mlx5: fix probing failure code app/testpmd: fix raw encap of GENEVE option net/mlx5: fix matcher priority with ICMP or ICMPv6 net/mlx5: remove unused reference counter net/mlx5: fix configuration without Rx queue Brian Dooley (13): eal: add missing C++ guards telemetry: add missing C++ guards ethdev: add missing C++ guards metrics: add missing C++ guards acl: add missing C++ guards compressdev: add missing C++ guards eventdev: add missing C++ guards kni: add missing C++ guards vhost: add missing C++ guards bpf: add missing C++ guards cryptodev: add missing C++ guards examples/l2fwd-crypto: fix port mask overflow crypto/virtio: fix out-of-bounds access Bruce Richardson (23): doc: remove dependency on findutils on FreeBSD dma/idxd: fix burst capacity calculation dma/idxd: fix paths to driver sysfs directory dma/idxd: fix wrap-around in burst capacity calculation build: fix warnings when running external commands build: remove deprecated Meson functions eal: fix C++ include eventdev: fix C++ include graph: fix C++ include ipsec: fix C++ include table: fix C++ include vhost: fix C++ include ethdev: fix cast for C++ compatibility test/dma: fix missing checks for device capacity dma/idxd: configure maximum batch size to high value doc: improve configuration examples in idxd guide distributor: fix potential overflow eal/freebsd: add missing C++ include guards compressdev: fix missing space in log macro cryptodev: fix clang C++ include eventdev: fix clang C++ include doc: replace characters for (R) symbol in Linux guide doc: fix missing note on UIO module in Linux guide Chandubabu Namburu (1): net/axgbe: use PCI root complex device to distinguish device Chenbo Xia (1): vhost: fix queue number check when setting inflight FD Chengchang Tang (1): net/bonding: fix offloading configuration Chengwen Feng (2): net/hns3: delete duplicated RSS type dma/hisilicon: use common PCI device naming Chuanshe Zhang (1): examples/flow_classify: fix failure message Ciara Loftus (2): net/af_xdp: fix build with -Wunused-function net/af_xdp: ensure socket is deleted on Rx queue setup error Ciara Power (4): crypto/ipsec_mb: fix queue setup null pointer dereference crypto/ipsec_mb: fix queue cleanup null pointer dereference crypto/ipsec_mb: fix tainted data for session crypto/ipsec_mb: remove useless check Cristian Dumitrescu (2): pipeline: fix annotation checks pipeline: fix table state memory allocation Dapeng Yu (2): net/ice: track DCF state of PF net/i40e: enable maximum frame size at port level Dariusz Sosnowski (3): net/mlx5: fix inline length for multi-segment TSO net/mlx5: fix MPLS/GRE Verbs spec ordering net/mlx5: fix VLAN push action validation David Marchand (8): devtools: fix comment detection in forbidden token check stack: fix stubs header export test/mbuf: fix mbuf data content check ethdev: fix MAC address in telemetry device info net/af_xdp: add missing trailing newline in logs devtools: remove event/dlb exception in ABI check vhost: fix FD leak with inflight messages bpf: fix build with some libpcap version on FreeBSD Dawid Gorecki (2): net/ena: fix reset reason being overwritten net/ena: check memory BAR before initializing LLQ Devendra Singh Rawat (3): net/qede: fix Tx completion net/qede: fix Rx bulk net/qede: fix maximum Rx packet length Dmitry Kozlyuk (8): net/mlx5: fix GCC uninitialized variable warning net/mlx5: relax headroom assertion app/testpmd: fix external buffer allocation common/mlx5: fix MR lookup for non-contiguous mempool common/mlx5: add Netlink event helpers net/mlx5: fix link status change detection net/mlx5: fix initial link status detection net/mlx5: fix modify port action validation Elena Agostini (3): gpu/cuda: fix memory list cleanup doc: add CUDA driver features gpu/cuda: fix dependency loading path Ferruh Yigit (2): net/bonding: fix MTU set for slaves ethdev: fix doxygen comments for device info struct Geoffrey Le Gourriérec (1): net/bnxt: restore dependency on kernel modules Gerry Gribbon (1): app/regex: fix number of matches Gowrishankar Muthukrishnan (6): event/cnxk: fix variables casting event/cnxk: fix uninitialized local variables common/cnxk: add missing checks of return values common/cnxk fix unintended sign extension common/cnxk: fix uninitialized pointer read net/cnxk: fix uninitialized local variable Gregory Etelson (11): net/mlx5: fix RSS expansion with explicit next protocol net/mlx5: fix GRE protocol type translation for Verbs net/mlx5: fix GRE item translation in Verbs net/mlx5: reduce flex item flow handle size net/mlx5: fix flex item header length translation net/mlx5: fix inet IPIP protocol type net/mlx5: fix next protocol RSS expansion net/mlx5: fix flex item availability app/testpmd: fix GTP header parsing in checksum engine app/testpmd: fix flow rule with flex input link net/mlx5: fix flex item availability Haiyue Wang (2): net/iavf: remove git residue symbol doc: fix KNI PMD name typo Harman Kalra (3): common/cnxk: reset stale values on error debug registers common/cnxk: always use single interrupt ID with NIX common/cnxk: fix mbuf data offset for VF Harold Huang (2): net/virtio-user: fix resource leak on probing failure net/kni: fix config initialization Heinrich Kuhn (1): net/nfp: free HW ring memzone on queue release Hemant Agrawal (1): crypto/dpaax_sec: fix auth/cipher xform chain checks Honnappa Nagarahalli (3): examples/distributor: reduce Tx queue number to 1 examples/l3fwd: share queue size variables examples/l3fwd: make Rx and Tx queue size configurable Huisong Li (10): net/hns3: fix mailbox wait time net/hns3: fix using enum as boolean net/hns3: fix max packet size rollback in PF net/hns3: fix insecure way to query MAC statistics net/hns3: fix double decrement of secondary count net/hns3: fix operating queue when TCAM table is invalid kni: fix freeing order in device release net/hns3: fix RSS TC mode entry net/hns3: fix VF RSS TC mode entry net/hns3: increase time waiting for PF reset completion Ivan Malov (8): net/sfc: validate queue span when parsing flow action RSS net/sfc: fix lock releases net/sfc: do not push fast free offload to default TxQ config net/sfc: demand Tx fast free offload on EF10 simple datapath common/sfc_efx/base: fix recirculation ID set in outer rules common/sfc_efx/base: add missing handler for 1-byte fields net/sfc: fix flow tunnel support detection net/sfc: reduce log level of tunnel restore info error Jakub Poczatek (1): doc: fix FIPS guide Jiawei Wang (4): net/mlx5: fix NIC egress flow mismatch in switchdev mode net/mlx5: fix sample flow action on trusted device net/mlx5: fix implicit tag insertion with sample action net/mlx5: fix port matching in sample flow rule Jiawen Wu (8): net/ngbe: fix Rx by initializing packet buffer early net/ngbe: fix missed link interrupt net/ngbe: fix Tx hang on queue disable net/ngbe: fix packet statistics net/txgbe: fix link up and down net/txgbe: fix KR auto-negotiation net/ngbe: fix debug logs net/txgbe: fix debug logs Jie Hai (1): net/hns3: remove duplicate macro definition Jie Wang (1): net: fix L2TPv2 common header Jie Zhou (2): eal/windows: fix error code for not supported API test/mem: fix error check Josh Soref (1): fix spelling in comments and strings Junfeng Guo (3): net/ice: fix pattern check for flow director parser net/ice: fix pattern check in flow director raw/ntb: clear all valid doorbell bits on init Junjie Wan (1): net/bonding: fix slaves initializing on MTU setting Junxiao Shi (1): net/af_xdp: fix custom program loading with multiple queues Juraj Linkeš (1): config/arm: add values for native armv7 Kai Ji (2): test/crypto: fix out-of-place SGL in raw datapath crypto/qat: fix GEN4 AEAD job in raw data path Kalesh AP (15): net/bnxt: fix multicast address set net/bnxt: fix multicast MAC restore during reset recovery net/bnxt: fix queue stop operation net/bnxt: restore RSS configuration after reset recovery net/bnxt: fix restoring VLAN filtering after recovery net/bnxt: cap maximum number of unicast MAC addresses net/bnxt: set fast-path pointers only if recovery succeeds net/bnxt: add null check for mark table net/bnxt: fix flow create when RSS is disabled net/bnxt: get maximum supported multicast filters count net/bnxt: fix handling of VF configuration change net/bnxt: fix xstats query net/bnxt: fix check for autoneg enablement net/bnxt: handle ring cleanup in case of error net/bnxt: fix memzone allocation per VNIC Karl Bonde Torp (1): build: fix build on FreeBSD with Meson 0.61.1 Kathleen Capella (2): net/iavf: count continuous DD bits for Arm net/iavf: count continuous DD bits for Arm in flex Rx Kevin Liu (2): net/ice: fix Tx checksum offload net/ice: fix Tx offload path choice Kevin Traynor (6): maintainers: update for stable branches build: suppress rte_crypto_asym_op abi check Revert "crypto/ipsec_mb: fix length and offset settings" Revert "net/mlx5: fix flex item availability" version: 21.11.1-rc1 version: 21.11.1 Kumara Parameshwaran (2): ethdev: add internal function to device struct from name net/tap: fix to populate FDs in secondary process Lance Richardson (2): buildtools: fix AVX512 check for Python 3.5 net/bnxt: fix xstats names query overrun Leyi Rong (1): net/iavf: fix potential out-of-bounds access Lijun Ou (1): net/hns3: fix RSS key with null Lior Margalit (1): net/mlx5: fix assertion on flags set in packet mbuf Madhuker Mythri (1): devargs: fix crash with uninitialized parsing Martijn Bakker (1): pflock: fix header file installation Martin Spinler (2): net/nfb: fix array indexes in deinit functions net/nfb: fix multicast/promiscuous mode switching Marvin Liu (1): net/virtio: fix slots number when indirect feature on Matan Azrad (1): vdpa/mlx5: workaround queue stop with traffic Maxime Coquelin (1): vhost: fix unsafe vring addresses modifications Maxime Gouin (3): bus/ifpga: remove useless check while browsing devices net/nfp: remove duplicated check when setting MAC address net/nfp: remove useless range checks Megha Ajmera (1): examples/qos_sched: fix core mask overflow Michael Baum (17): common/mlx5: add minimum WQE size for striding RQ net/mlx5: improve stride parameter names net/mlx5: fix MPRQ stride devargs adjustment common/mlx5: fix error handling in multi-class probe net/mlx5: fix memory socket selection in ASO management common/mlx5: fix missing validation in devargs parsing net/mlx5: fix sibling device config check net/mlx5: fix ineffective metadata argument adjustment net/mlx5: fix ASO CT object release net/mlx5: fix errno update in shared context creation net/mlx5: fix entry in shared Rx queues list doc: remove obsolete vector Tx explanations from mlx5 guide doc: replace broken links in mlx guides doc: correct name of BlueField-2 in mlx5 guide net/mlx5: fix shared counter flag in flow validation net/mlx5: fix check in count action validation common/mlx5: consider local functions as internal Michal Krawczyk (6): net/ena: remove unused enumeration net/ena: remove unused offload variables net/ena: skip timer if reset is triggered net/ena: fix meta descriptor DF flag setup net/ena: fix checksum flag for L4 bus/pci: assign driver pointer before mapping Michal Wilczynski (1): net/ice: fix overwriting of LSE bit by DCF Min Hu (Connor) (6): net/hns3: fix Rx/Tx functions update net/hns3: fix vector Rx/Tx when PTP enabled net/bonding: fix promiscuous and allmulticast state net/bonding: fix reference count on mbufs app/testpmd: fix bonding mode set app/testpmd: check starting port is not in bonding Naga Harish K S V (2): eventdev/eth_tx: fix queue add error code eventdev/eth_rx: fix queue config query Nicolas Chautru (1): baseband/acc100: avoid out-of-bounds access Nipun Gupta (1): examples/l3fwd: fix Rx burst size for event mode Nithin Dabilpuram (11): examples/ipsec-secgw: fix eventdev start sequence examples/ipsec-secgw: fix default flow rule creation common/cnxk: fix shift offset for TL3 length disable common/cnxk: fix byte order of frag sizes and infos common/cnxk: fix null pointer dereferences common/cnxk: fix uninitialized variables examples/ipsec-secgw: fix buffer freeing in vector mode net/cnxk: fix inline device RQ tag mask net/cnxk: register callback early to handle initial packets net/cnxk: fix inline IPsec security error handling common/cnxk: fix bitmap usage for TM Pablo de Lara (9): crypto/ipsec_mb: fix buffer overrun crypto/ipsec_mb: check missing operation types crypto/ipsec_mb: fix ZUC authentication verify crypto/ipsec_mb: fix ZUC operation overwrite crypto/ipsec_mb: fix length and offset settings test/efd: fix sockets mask size efd: fix uninitialized structure crypto/ipsec_mb: fix length and offset settings crypto/ipsec_mb: fix GMAC parameters setting Pavan Nikhilesh (6): eventdev/eth_rx: fix missing internal port checks event/cnxk: fix QoS devargs parsing common/cnxk: add workaround for vWQE flush config: align mempool elements to 128 bytes on CN10K event/cnxk: fix sub-event clearing mask length event/cnxk: fix Rx adapter config check Peng Yu (1): vhost: fix linker script syntax Piotr Bronowski (2): crypto/ipsec_mb: fix premature dereference crypto/ipsec_mb: fix GCM requested digest length Qi Zhang (2): net/ice: fix Tx checksum offload capability doc: update matching versions in ice guide Radu Nicolau (5): examples/ipsec-secgw: fix offload flag used for TSO IPv6 net/iavf: fix segmentation offload condition net/iavf: fix segmentation offload buffer size net/iavf: support NAT-T / UDP encapsulation net/iavf: fix AES-GMAC IV size Rahul Bhansali (2): net/cnxk: fix mbuf data length examples/l3fwd: fix buffer overflow in Tx Rahul Lakkireddy (1): net/cxgbe: fix dangling pointer by mailbox access rework Raja Zidane (8): net/mlx5: fix mark enabling for Rx app/testpmd: fix GENEVE parsing in checksum mode app/compress-perf: fix cycle count operations allocation app/compress-perf: optimize operations pool allocation compress/mlx5: support out-of-space status app/compress-perf: fix socket ID type during init app/compress-perf: fix number of queue pairs to setup compressdev: fix socket ID type Rakesh Kudurumalla (3): net/cnxk: fix build with GCC 12 net/cnxk: fix RSS RETA table update net/cnxk: fix build with optimization Rashmi Shetty (1): doc: fix dlb2 guide Reshma Pattan (1): app/pdump: abort on multi-core capture limit Rongwei Liu (3): net/mlx5: fix shared RSS destroy net/mlx5: fix meter creation default state net/mlx5: forbid multiple ASO actions in a single rule Ruifeng Wang (1): config: add arch define for Arm Satheesh Paul (5): common/cnxk: fix nibble parsing order when dumping MCAM common/cnxk: fix flow deletion common/cnxk: fix log level during MCAM allocation common/cnxk: fix base rule merge net/cnxk: fix Rx/Tx function update Sean Morrissey (2): app/testpmd: fix dereference before null check doc: fix telemetry example in cryptodev guide Shijith Thotton (1): crypto/cnxk: enable allocated queues only Shun Hao (3): net/mlx5: fix meter sub-policy creation net/mlx5: fix E-Switch manager vport ID net/mlx5: fix meter policy creation assert Simei Su (1): net/ice: fix mbuf offload flag for Rx timestamp Srikanth Yalavarthi (1): dma/cnxk: fix installing internal headers Stephen Douthit (1): net/ixgbe: fix FSP check for X550EM devices Stephen Hemminger (7): eal/linux: log hugepage create errors with filename net/memif: remove unnecessary Rx interrupt stub ipc: end multiprocess thread during cleanup vfio: cleanup the multiprocess sync handle pcapng: handle failure of link status query test/bpf: skip dump if conversion fails app/dumpcap: check for failure to set promiscuous Steve Yang (4): app/testpmd: fix stack overflow for EEPROM display net/i40e: fix unintentional integer overflow eal/linux: fix illegal memory access in uevent handler net/iavf: fix function pointer in multi-process Suanming Mou (3): net/mlx5: set flow error for hash list create net/mlx5: remove unused function net/mlx5: fix indexed pool fetch overlap Thinh Tran (1): net/mlx5: fix CPU socket ID for Rx queue creation Thomas Monjalon (6): doc: replace deprecated distutils version parsing dmadev: add missing header include app/testpmd: fix build without drivers regexdev: fix section attribute of symbols build: hide local symbols in shared libraries devtools: fix symbols check Tianfei Zhang (2): raw/ifpga/base: fix SPI transaction raw/ifpga: fix thread closing Tianli Lai (1): examples/kni: add missing trailing newline in log Timothy McDaniel (3): event/dlb2: update rolling mask used for dequeue event/dlb2: poll HW CQ inflights before mapping queue event/dlb2: add shift value check in sparse dequeue Vanshika Shukla (2): net/dpaa2: fix unregistering interrupt handler net/dpaa2: fix timestamping for IEEE1588 Viacheslav Ovsiienko (4): net/mlx5: fix modify field MAC address offset app/testpmd: fix Tx scheduling interval net/mlx5: fix metadata endianness in modify field action doc: fix modify field action description for mlx5 Vladimir Medvedkin (1): app/fib: fix division by zero Wei Huang (5): raw/ifpga/base: fix port feature ID raw/ifpga: fix variable initialization in probing raw/ifpga: fix interrupt handle allocation raw/ifpga: fix monitor thread raw/ifpga: fix build with optimization Weiguo Li (14): common/cnxk: fix error checking net/enic: fix dereference before null check net/dpaa2: fix null pointer dereference regex/mlx5: fix memory allocation check net/memif: remove pointer deference before null check net/iavf: fix null pointer dereference vdpa/sfc: fix null dereference during config vdpa/sfc: fix null dereference during removal compress/octeontx: fix null pointer dereference eventdev/eth_rx: fix parameters parsing memory leak net/sfc: fix memory allocation size for cache net/txgbe: fix queue statistics mapping sched: remove useless malloc in PIE data init net/bnxt: fix null dereference in session cleanup Wenwu Ma (1): examples/vhost: fix launch with physical port Wenxuan Wu (1): eal/linux: fix device monitor stop return Xiaoyu Min (1): net/mlx5: reject jump to root table Xuan Ding (2): vhost: fix field naming in guest page struct vhost: fix physical address mapping Xueming Li (1): net/virtio: fix Tx queue 0 overriden by queue 128 Yajun Wu (1): common/mlx5: fix queue pair ack timeout configuration Yiding Zhou (1): net/ice: fix build with 16-byte Rx descriptor Yu Wenjun (1): net/bonding: fix RSS with early configure Yuan Wang (1): vhost: fix guest to host physical address mapping Yunjian Wang (12): net/bonding: fix mode type mismatch ethdev: fix Rx queue telemetry memory leak on failure net/ice: fix link up when starting device net/virtio-user: check FD flags getting failure net/virtio: fix uninitialized RSS key ring: fix error code when creating ring net/ixgbe: check filter init failure mem: check allocation in dynamic hugepage init ethdev: remove unnecessary null check net/ixgbe: reset security context pointer on close net/txgbe: reset security context pointer on close net/iavf: reset security context pointer on stop Yuying Zhang (1): net/ice/base: add profile validation on switch filter Zhihong Wang (1): ring: fix overflow in memory size calculation