From: Christian Ehrhardt <christian.ehrhardt@canonical.com> To: Alvin Zhang <alvinx.zhang@intel.com> Cc: Lingli Chen <linglix.chen@intel.com>, dpdk stable <stable@dpdk.org> Subject: [dpdk-stable] patch 'net/i40e: fix input set field mask' has been queued to stable release 19.11.9 Date: Mon, 17 May 2021 18:08:10 +0200 Message-ID: <20210517161039.3132619-61-christian.ehrhardt@canonical.com> (raw) In-Reply-To: <20210517161039.3132619-1-christian.ehrhardt@canonical.com> Hi, FYI, your patch has been queued to stable release 19.11.9 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 05/19/21. So please shout if anyone has objections. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasing (ie: not only metadata diffs), please double check that the rebase was correctly done. Queued patches are on a temporary branch at: https://github.com/cpaelzer/dpdk-stable-queue This queued commit can be viewed at: https://github.com/cpaelzer/dpdk-stable-queue/commit/ce1c16ab2255d945f6f493539b7d3e71128d0e76 Thanks. Christian Ehrhardt <christian.ehrhardt@canonical.com> --- From ce1c16ab2255d945f6f493539b7d3e71128d0e76 Mon Sep 17 00:00:00 2001 From: Alvin Zhang <alvinx.zhang@intel.com> Date: Mon, 1 Mar 2021 15:06:07 +0800 Subject: [PATCH] net/i40e: fix input set field mask [ upstream commit 2a2fd19d46e598a6816be8f81aa62ec372fd495d ] The absolute field offsets of IPv4 or IPv6 header are related to hardware configuration. The X710 and X722 have different hardware configurations, and users can even modify the hardware configuration. Therefore, The default values cannot be used when calculating mask offset. The following flows can be created on X722 NIC, but the packet will not enter the queue 3: flow create 0 ingress pattern eth / ipv4 proto is 255 / end actions queue index 3 / end pkt = Ether()/IP(ttl=63, proto=255)/Raw('X'*40) flow create 0 ingress pattern eth / ipv4 tos is 50 / udp / end actions queue index 3 / end pkt = Ether()/IP(tos=50)/UDP()/Raw('X'*40) flow create 0 ingress pattern eth / ipv6 tc is 12 / udp / end actions queue index 3 / end pkt = Ether()/IPv6(tc=12,hlim=34,fl=0x98765)/UDP()/Raw('X'*40) flow create 0 ingress pattern eth / ipv6 hop is 34 / end actions queue index 3 / end pkt = Ether()/IPv6(tc=12,hlim=34,fl=0x98765)/Raw('X'*40) This patch read the field offsets from the NIC and return the mask register value. Fixes: 98f055707685 ("i40e: configure input fields for RSS or flow director") Fixes: 92cf7f8ec082 ("i40e: allow filtering on more IP header fields") Signed-off-by: Alvin Zhang <alvinx.zhang@intel.com> Tested-by: Lingli Chen <linglix.chen@intel.com> --- drivers/net/i40e/i40e_ethdev.c | 158 +++++++++++++++++++++++++-------- drivers/net/i40e/i40e_ethdev.h | 4 +- drivers/net/i40e/i40e_flow.c | 2 +- 3 files changed, 125 insertions(+), 39 deletions(-) diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c index 2e23631211..79558c8aad 100644 --- a/drivers/net/i40e/i40e_ethdev.c +++ b/drivers/net/i40e/i40e_ethdev.c @@ -201,12 +201,12 @@ #define I40E_TRANSLATE_INSET 0 #define I40E_TRANSLATE_REG 1 -#define I40E_INSET_IPV4_TOS_MASK 0x0009FF00UL -#define I40E_INSET_IPv4_TTL_MASK 0x000D00FFUL -#define I40E_INSET_IPV4_PROTO_MASK 0x000DFF00UL -#define I40E_INSET_IPV6_TC_MASK 0x0009F00FUL -#define I40E_INSET_IPV6_HOP_LIMIT_MASK 0x000CFF00UL -#define I40E_INSET_IPV6_NEXT_HDR_MASK 0x000C00FFUL +#define I40E_INSET_IPV4_TOS_MASK 0x0000FF00UL +#define I40E_INSET_IPV4_TTL_MASK 0x000000FFUL +#define I40E_INSET_IPV4_PROTO_MASK 0x0000FF00UL +#define I40E_INSET_IPV6_TC_MASK 0x0000F00FUL +#define I40E_INSET_IPV6_HOP_LIMIT_MASK 0x0000FF00UL +#define I40E_INSET_IPV6_NEXT_HDR_MASK 0x000000FFUL /* PCI offset for querying capability */ #define PCI_DEV_CAP_REG 0xA4 @@ -219,6 +219,25 @@ /* Bit mask of Extended Tag enable/disable */ #define PCI_DEV_CTRL_EXT_TAG_MASK (1 << PCI_DEV_CTRL_EXT_TAG_SHIFT) +#define I40E_GLQF_PIT_IPV4_START 2 +#define I40E_GLQF_PIT_IPV4_COUNT 2 +#define I40E_GLQF_PIT_IPV6_START 4 +#define I40E_GLQF_PIT_IPV6_COUNT 2 + +#define I40E_GLQF_PIT_SOURCE_OFF_GET(a) \ + (((a) & I40E_GLQF_PIT_SOURCE_OFF_MASK) >> \ + I40E_GLQF_PIT_SOURCE_OFF_SHIFT) + +#define I40E_GLQF_PIT_DEST_OFF_GET(a) \ + (((a) & I40E_GLQF_PIT_DEST_OFF_MASK) >> \ + I40E_GLQF_PIT_DEST_OFF_SHIFT) + +#define I40E_GLQF_PIT_FSIZE_GET(a) (((a) & I40E_GLQF_PIT_FSIZE_MASK) >> \ + I40E_GLQF_PIT_FSIZE_SHIFT) + +#define I40E_GLQF_PIT_BUILD(off, mask) (((off) << 16) | (mask)) +#define I40E_FDIR_FIELD_OFFSET(a) ((a) >> 1) + static int eth_i40e_dev_init(struct rte_eth_dev *eth_dev, void *init_params); static int eth_i40e_dev_uninit(struct rte_eth_dev *eth_dev); static int i40e_dev_configure(struct rte_eth_dev *dev); @@ -9628,49 +9647,116 @@ i40e_translate_input_set_reg(enum i40e_mac_type type, uint64_t input) return val; } +static int +i40e_get_inset_field_offset(struct i40e_hw *hw, uint32_t pit_reg_start, + uint32_t pit_reg_count, uint32_t hdr_off) +{ + const uint32_t pit_reg_end = pit_reg_start + pit_reg_count; + uint32_t field_off = I40E_FDIR_FIELD_OFFSET(hdr_off); + uint32_t i, reg_val, src_off, count; + + for (i = pit_reg_start; i < pit_reg_end; i++) { + reg_val = i40e_read_rx_ctl(hw, I40E_GLQF_PIT(i)); + + src_off = I40E_GLQF_PIT_SOURCE_OFF_GET(reg_val); + count = I40E_GLQF_PIT_FSIZE_GET(reg_val); + + if (src_off <= field_off && (src_off + count) > field_off) + break; + } + + if (i >= pit_reg_end) { + PMD_DRV_LOG(ERR, + "Hardware GLQF_PIT configuration does not support this field mask"); + return -1; + } + + return I40E_GLQF_PIT_DEST_OFF_GET(reg_val) + field_off - src_off; +} + int -i40e_generate_inset_mask_reg(uint64_t inset, uint32_t *mask, uint8_t nb_elem) +i40e_generate_inset_mask_reg(struct i40e_hw *hw, uint64_t inset, + uint32_t *mask, uint8_t nb_elem) { - uint8_t i, idx = 0; - uint64_t inset_need_mask = inset; + static const uint64_t mask_inset[] = { + I40E_INSET_IPV4_PROTO | I40E_INSET_IPV4_TTL, + I40E_INSET_IPV6_NEXT_HDR | I40E_INSET_IPV6_HOP_LIMIT }; static const struct { uint64_t inset; uint32_t mask; - } inset_mask_map[] = { - {I40E_INSET_IPV4_TOS, I40E_INSET_IPV4_TOS_MASK}, - {I40E_INSET_IPV4_PROTO | I40E_INSET_IPV4_TTL, 0}, - {I40E_INSET_IPV4_PROTO, I40E_INSET_IPV4_PROTO_MASK}, - {I40E_INSET_IPV4_TTL, I40E_INSET_IPv4_TTL_MASK}, - {I40E_INSET_IPV6_TC, I40E_INSET_IPV6_TC_MASK}, - {I40E_INSET_IPV6_NEXT_HDR | I40E_INSET_IPV6_HOP_LIMIT, 0}, - {I40E_INSET_IPV6_NEXT_HDR, I40E_INSET_IPV6_NEXT_HDR_MASK}, - {I40E_INSET_IPV6_HOP_LIMIT, I40E_INSET_IPV6_HOP_LIMIT_MASK}, + uint32_t offset; + } inset_mask_offset_map[] = { + { I40E_INSET_IPV4_TOS, I40E_INSET_IPV4_TOS_MASK, + offsetof(struct rte_ipv4_hdr, type_of_service) }, + + { I40E_INSET_IPV4_PROTO, I40E_INSET_IPV4_PROTO_MASK, + offsetof(struct rte_ipv4_hdr, next_proto_id) }, + + { I40E_INSET_IPV4_TTL, I40E_INSET_IPV4_TTL_MASK, + offsetof(struct rte_ipv4_hdr, time_to_live) }, + + { I40E_INSET_IPV6_TC, I40E_INSET_IPV6_TC_MASK, + offsetof(struct rte_ipv6_hdr, vtc_flow) }, + + { I40E_INSET_IPV6_NEXT_HDR, I40E_INSET_IPV6_NEXT_HDR_MASK, + offsetof(struct rte_ipv6_hdr, proto) }, + + { I40E_INSET_IPV6_HOP_LIMIT, I40E_INSET_IPV6_HOP_LIMIT_MASK, + offsetof(struct rte_ipv6_hdr, hop_limits) }, }; - if (!inset || !mask || !nb_elem) + uint32_t i; + int idx = 0; + + assert(mask); + if (!inset) return 0; - for (i = 0, idx = 0; i < RTE_DIM(inset_mask_map); i++) { + for (i = 0; i < RTE_DIM(mask_inset); i++) { /* Clear the inset bit, if no MASK is required, * for example proto + ttl */ - if ((inset & inset_mask_map[i].inset) == - inset_mask_map[i].inset && inset_mask_map[i].mask == 0) - inset_need_mask &= ~inset_mask_map[i].inset; - if (!inset_need_mask) - return 0; + if ((mask_inset[i] & inset) == mask_inset[i]) { + inset &= ~mask_inset[i]; + if (!inset) + return 0; + } } - for (i = 0, idx = 0; i < RTE_DIM(inset_mask_map); i++) { - if ((inset_need_mask & inset_mask_map[i].inset) == - inset_mask_map[i].inset) { - if (idx >= nb_elem) { - PMD_DRV_LOG(ERR, "exceed maximal number of bitmasks"); - return -EINVAL; - } - mask[idx] = inset_mask_map[i].mask; - idx++; + + for (i = 0; i < RTE_DIM(inset_mask_offset_map); i++) { + uint32_t pit_start, pit_count; + int offset; + + if (!(inset_mask_offset_map[i].inset & inset)) + continue; + + if (inset_mask_offset_map[i].inset & + (I40E_INSET_IPV4_TOS | I40E_INSET_IPV4_PROTO | + I40E_INSET_IPV4_TTL)) { + pit_start = I40E_GLQF_PIT_IPV4_START; + pit_count = I40E_GLQF_PIT_IPV4_COUNT; + } else { + pit_start = I40E_GLQF_PIT_IPV6_START; + pit_count = I40E_GLQF_PIT_IPV6_COUNT; + } + + offset = i40e_get_inset_field_offset(hw, pit_start, pit_count, + inset_mask_offset_map[i].offset); + + if (offset < 0) + return -EINVAL; + + if (idx >= nb_elem) { + PMD_DRV_LOG(ERR, + "Configuration of inset mask out of range %u", + nb_elem); + return -ERANGE; } + + mask[idx] = I40E_GLQF_PIT_BUILD((uint32_t)offset, + inset_mask_offset_map[i].mask); + idx++; } return idx; @@ -9724,7 +9810,7 @@ i40e_filter_input_set_init(struct i40e_pf *pf) input_set = i40e_get_default_input_set(pctype); - num = i40e_generate_inset_mask_reg(input_set, mask_reg, + num = i40e_generate_inset_mask_reg(hw, input_set, mask_reg, I40E_INSET_MASK_NUM_REG); if (num < 0) return; @@ -9829,7 +9915,7 @@ i40e_hash_filter_inset_select(struct i40e_hw *hw, inset_reg |= i40e_read_rx_ctl(hw, I40E_GLQF_HASH_INSET(0, pctype)); input_set |= pf->hash_input_set[pctype]; } - num = i40e_generate_inset_mask_reg(input_set, mask_reg, + num = i40e_generate_inset_mask_reg(hw, input_set, mask_reg, I40E_INSET_MASK_NUM_REG); if (num < 0) return -EINVAL; diff --git a/drivers/net/i40e/i40e_ethdev.h b/drivers/net/i40e/i40e_ethdev.h index 91d6830a3c..7c97c609f3 100644 --- a/drivers/net/i40e/i40e_ethdev.h +++ b/drivers/net/i40e/i40e_ethdev.h @@ -1276,8 +1276,8 @@ bool is_i40evf_supported(struct rte_eth_dev *dev); int i40e_validate_input_set(enum i40e_filter_pctype pctype, enum rte_filter_type filter, uint64_t inset); -int i40e_generate_inset_mask_reg(uint64_t inset, uint32_t *mask, - uint8_t nb_elem); +int i40e_generate_inset_mask_reg(struct i40e_hw *hw, uint64_t inset, + uint32_t *mask, uint8_t nb_elem); uint64_t i40e_translate_input_set_reg(enum i40e_mac_type type, uint64_t input); void i40e_check_write_reg(struct i40e_hw *hw, uint32_t addr, uint32_t val); void i40e_check_write_global_reg(struct i40e_hw *hw, diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c index ed2565e88f..e8a52bdb76 100644 --- a/drivers/net/i40e/i40e_flow.c +++ b/drivers/net/i40e/i40e_flow.c @@ -2201,7 +2201,7 @@ i40e_flow_set_fdir_inset(struct i40e_pf *pf, !memcmp(&pf->fdir.input_set[pctype], &input_set, sizeof(uint64_t))) return 0; - num = i40e_generate_inset_mask_reg(input_set, mask_reg, + num = i40e_generate_inset_mask_reg(hw, input_set, mask_reg, I40E_INSET_MASK_NUM_REG); if (num < 0) return -EINVAL; -- 2.31.1 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2021-05-17 17:40:31.913775418 +0200 +++ 0061-net-i40e-fix-input-set-field-mask.patch 2021-05-17 17:40:29.211809791 +0200 @@ -1 +1 @@ -From 2a2fd19d46e598a6816be8f81aa62ec372fd495d Mon Sep 17 00:00:00 2001 +From ce1c16ab2255d945f6f493539b7d3e71128d0e76 Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit 2a2fd19d46e598a6816be8f81aa62ec372fd495d ] + @@ -35 +36,0 @@ -Cc: stable@dpdk.org @@ -46 +47 @@ -index 9b86bcdc69..09a1402a3f 100644 +index 2e23631211..79558c8aad 100644 @@ -49 +50 @@ -@@ -202,12 +202,12 @@ +@@ -201,12 +201,12 @@ @@ -68 +69 @@ -@@ -220,6 +220,25 @@ +@@ -219,6 +219,25 @@ @@ -94 +95 @@ -@@ -9424,49 +9443,116 @@ i40e_translate_input_set_reg(enum i40e_mac_type type, uint64_t input) +@@ -9628,49 +9647,116 @@ i40e_translate_input_set_reg(enum i40e_mac_type type, uint64_t input) @@ -239 +240 @@ -@@ -9520,7 +9606,7 @@ i40e_filter_input_set_init(struct i40e_pf *pf) +@@ -9724,7 +9810,7 @@ i40e_filter_input_set_init(struct i40e_pf *pf) @@ -248 +249 @@ -@@ -9600,7 +9686,7 @@ i40e_set_hash_inset(struct i40e_hw *hw, uint64_t input_set, +@@ -9829,7 +9915,7 @@ i40e_hash_filter_inset_select(struct i40e_hw *hw, @@ -258 +259 @@ -index 1e8f5d3a87..faf6896fbc 100644 +index 91d6830a3c..7c97c609f3 100644 @@ -261,2 +262,2 @@ -@@ -1458,8 +1458,8 @@ void i40e_set_symmetric_hash_enable_per_port(struct i40e_hw *hw, - uint8_t enable); +@@ -1276,8 +1276,8 @@ bool is_i40evf_supported(struct rte_eth_dev *dev); + @@ -273 +274 @@ -index 3e514d5f38..1ee8959e56 100644 +index ed2565e88f..e8a52bdb76 100644 @@ -276 +277 @@ -@@ -2269,7 +2269,7 @@ i40e_flow_set_fdir_inset(struct i40e_pf *pf, +@@ -2201,7 +2201,7 @@ i40e_flow_set_fdir_inset(struct i40e_pf *pf,
next prev parent reply other threads:[~2021-05-17 16:13 UTC|newest] Thread overview: 190+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-05-17 16:07 [dpdk-stable] patch 'vfio: do not merge contiguous areas' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'vfio: fix DMA mapping granularity for IOVA as VA' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'test/mem: fix page size for external memory' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'power: remove duplicated symbols from map file' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'vfio: fix API description' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'fbarray: fix log message on truncation error' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/failsafe: fix RSS hash offload reporting' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/failsafe: report minimum and maximum MTU' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/mlx5: fix metadata item validation for ingress flows' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'bus/fslmc: fix random portal hangs with qbman 5.0' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'bus/dpaa: fix statistics reading' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/dpaa2: fix getting link status' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'app/testpmd: remove unnecessary UDP tunnel check' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/af_xdp: fix error handling during Rx queue setup' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/pcap: fix format string' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/bnxt: fix Rx queue count' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/bonding: fix LACP system address check' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/ice: fix VLAN filter with PF' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/e1000: remove MTU setting limitation' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/ice/base: fix payload indicator on ptype' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/ice/base: cleanup filter list on error' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/i40evf: fix packet loss for X722' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/i40e: fix IPv4 fragment offload' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/mlx5: fix Rx segmented packets on mbuf starvation' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/octeontx2: fix VLAN filter' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'build: exclude meson files from examples installation' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'log/linux: make default output stderr' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net: fix comment in IPv6 header' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/bnxt: remove unused macro' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/bnxt: fix VNIC configuration' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/bnxt: fix queues per VNIC' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/bnxt: fix FW readiness check during recovery' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/bnxt: fix device readiness check' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/bnxt: fix HWRM and FW incompatibility handling' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/bnxt: fix Rx and Tx timestamps' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/ice: check some functions return' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/mlx5: fix Rx metadata leftovers' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'eal: fix comment of OS-specific header files' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'buildtools: fix build with busybox' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'build: detect execinfo library on Linux' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'common/dpaax/caamflib: fix build with musl' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'bus/dpaa: fix 64-bit arch detection' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'bus/dpaa: fix build with musl' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/cxgbe: remove use of uint type' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'app/testpmd: fix build with musl' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'examples/bbdev: fix header include for " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'examples/packet_ordering: fix port configuration' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'test: fix autotest handling of skipped tests' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/ark: update packet director initial state' " Christian Ehrhardt 2021-05-17 16:07 ` [dpdk-stable] patch 'net/ark: refactor Rx buffer recovery' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'app/testpmd: fix NVGRE encap configuration' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/bnxt: fix Tx timestamp init' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/bnxt: fix PCI write check' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/bnxt: fix RSS context cleanup' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/bnxt: fix link state operations' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/bnxt: fix Rx buffer posting' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/bnxt: fix Tx length hint threshold' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/bnxt: fix handling of null flow mask' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/qede: reduce log verbosity' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/qede: accept bigger RSS table' " Christian Ehrhardt 2021-05-17 16:08 ` Christian Ehrhardt [this message] 2021-05-17 16:08 ` [dpdk-stable] patch 'net/ice/base: fix memory allocation for MAC addresses' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/mlx5: support RSS expansion for IPv6 GRE' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/hns3: fix reporting undefined speed' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/hinic: fix crash in secondary process' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'app/testpmd: fix Tx/Rx descriptor query error log' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/i40e: fix parsing packet type for NEON' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/i40e: announce request queue capability in PF' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/iavf: fix TSO max segment size' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/ixgbe: fix RSS RETA being reset after port start' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'vdpa/ifc: check PCI config read' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'examples/vhost: check memory table query' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'vhost: fix split ring potential buffer overflow' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'vhost: fix packed " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'vhost: fix batch dequeue " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'examples/vhost_crypto: remove unused short option' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'doc: fix sphinx rtd theme import in GHA' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'power: do not skip saving original P-state governor' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'mem: fix freeing segments in --huge-unlink mode' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'service: clean references to removed symbol' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'test: proceed if timer subsystem already initialized' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'app: fix exit messages' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/hns3: fix MTU config complexity' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/hns3: update HiSilicon copyright syntax' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/ena: fix releasing Tx ring mbufs' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/e1000: fix Rx error counter for bad length' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/bnxt: fix configuring LRO' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'vhost: fix initialization of temporary header' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'ethdev: validate input in module EEPROM dump' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'ethdev: validate input in register info' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'ethdev: validate input in EEPROM " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/hns3: fix FLR miss detection' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/hns3: fix rollback after setting PVID failure' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/hns3: fix flow control exception' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/hns3: fix flow counter value' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/hns3: fix VF mailbox head field' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/hns3: support get device version when dump register' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/hns3: delete redundant blank line' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'test/event: fix timeout accuracy' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'app/eventdev: " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'event/octeontx2: fix device reconfigure for single slot' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'license: fix typos' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'devargs: fix memory leak on parsing failure' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'eal: add C++ include guard for reciprocal header' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'examples/l2fwd-crypto: skip masked devices' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'examples/l2fwd-crypto: fix packet length while decryption' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'crypto/qat: fix offset for out-of-place scatter-gather' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'test: fix TCP header initialization' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/e1000: fix max Rx packet size' " Christian Ehrhardt 2021-05-17 16:08 ` [dpdk-stable] patch 'net/ice: fix illegal access when removing MAC filter' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/mlx4: fix RSS action with null hash key' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/ixgbe: fix Rx errors statistics for UDP checksum' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'app/testpmd: fix bitmap of link speeds when force speed' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'ethdev: update flow item GTP QFI definition' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: fix VF handling LSC event in secondary process' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: fix flow control mode' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/i40e: fix lack of MAC type when set MAC address' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/iavf: " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'eventdev: fix case to initiate crypto adapter service' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'vfio: fix duplicated user mem map' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'examples/ptpclient: remove wrong comment' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'examples/l3fwd: fix LPM IPv6 subnets' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'test/cmdline: fix inputs array' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'test: check thread creation' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'common/dpaax: fix possible null pointer access' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'test/bpf: fix error message' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'test/power: add delay before checking CPU frequency' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'test/power: round CPU frequency to check' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'examples: add eal cleanup to examples' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'examples/ethtool: remove unused parsing' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'doc: fix HiSilicon copyright syntax' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: remove unused macros' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: fix DCB mode check' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: fix VMDq " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: fix flow director lock' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/bonding: fix adding itself as its slave' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/bnxt: fix health check alarm cancellation' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: remove unused macro' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/ice: fix disabling promiscuous mode' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/e1000/base: fix timeout for shadow RAM write' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'doc: fix names of UIO drivers' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'stack: allow lock-free only on relevant architectures' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'config/ppc: reduce number of cores and NUMA nodes' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'eal/arm64: fix platform register bit' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'mbuf: check shared memory before dumping dynamic space' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'test/mempool: fix object initializer' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'app/eventdev: fix overflow in lcore list parsing' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'eventdev: remove redundant thread name setting' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'eventdev: fix memory leakage on thread creation failure' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'bpf: fix JSLT validation' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'power: save original ACPI governor always' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'doc: fix multiport syntax in nfp guide' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/kni: check init result' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: fix mailbox error message' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: fix processing link status message on PF' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: remove unused mailbox macro and struct' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/bonding: fix leak on remove' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'test/kni: fix a comment' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'test/kni: check init result' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'app/testpmd: fix max queue number for Tx offloads' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/tap: fix interrupt vector array size' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/hns3: fix typos on comments' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'app/testpmd: fix segment number check' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/bonding: fix socket ID " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/i40e: fix negative VEB index' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/i40e: remove redundant VSI check in Tx queue setup' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/ice: fix fast mbuf freeing' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/iavf: fix VF to PF command failure handling' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'net/e1000: fix flow error message object' " Christian Ehrhardt 2021-05-17 16:09 ` [dpdk-stable] patch 'vhost: fix queue initialization' " Christian Ehrhardt 2021-05-17 16:10 ` [dpdk-stable] patch 'net/bnxt: remove unnecessary forward declarations' " Christian Ehrhardt 2021-05-17 16:10 ` [dpdk-stable] patch 'net/bnxt: remove unused function parameters' " Christian Ehrhardt 2021-05-17 16:10 ` [dpdk-stable] patch 'net/bnxt: use prefix on global function' " Christian Ehrhardt 2021-05-17 16:10 ` [dpdk-stable] patch 'net/mlx5: remove drop queue function prototypes' " Christian Ehrhardt 2021-05-17 16:10 ` [dpdk-stable] patch 'net/mlx4: fix buffer leakage on device close' " Christian Ehrhardt 2021-05-17 16:10 ` [dpdk-stable] patch 'net/mlx5: fix probing device in legacy bonding mode' " Christian Ehrhardt 2021-05-17 16:10 ` [dpdk-stable] patch 'net/tap: check ioctl on restore' " Christian Ehrhardt 2021-05-17 16:10 ` [dpdk-stable] patch 'net/softnic: fix meter policies initialization' " Christian Ehrhardt 2021-05-17 16:10 ` [dpdk-stable] patch 'app/testpmd: fix forward lcores number for DCB' " Christian Ehrhardt 2021-05-17 16:10 ` [dpdk-stable] patch 'app/testpmd: fix DCB forwarding configuration' " Christian Ehrhardt 2021-05-17 16:10 ` [dpdk-stable] patch 'app/testpmd: fix DCB re-configuration' " Christian Ehrhardt 2021-05-17 16:10 ` [dpdk-stable] patch 'app/testpmd: verify DCB config during forward config' " Christian Ehrhardt 2021-05-17 16:10 ` [dpdk-stable] patch 'net/hns3: log time delta in decimal format' " Christian Ehrhardt 2021-05-17 16:10 ` [dpdk-stable] patch 'net/hns3: remove unused macros' " Christian Ehrhardt 2021-05-17 16:10 ` [dpdk-stable] patch 'net/iavf: fix primary MAC type when starting port' " Christian Ehrhardt 2021-05-17 16:10 ` [dpdk-stable] patch 'net/i40e: " Christian Ehrhardt 2021-05-17 16:10 ` [dpdk-stable] patch 'net/hns3: remove unused VMDq code' " Christian Ehrhardt 2021-05-17 16:10 ` [dpdk-stable] patch 'ethdev: add missing buses in device iterator' " Christian Ehrhardt 2021-05-17 16:10 ` [dpdk-stable] patch 'test/distributor: fix worker notification in burst mode' " Christian Ehrhardt 2021-05-17 16:10 ` [dpdk-stable] patch 'test/distributor: fix burst flush on worker quit' " Christian Ehrhardt
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20210517161039.3132619-61-christian.ehrhardt@canonical.com \ --to=christian.ehrhardt@canonical.com \ --cc=alvinx.zhang@intel.com \ --cc=linglix.chen@intel.com \ --cc=stable@dpdk.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
patches for DPDK stable branches This inbox may be cloned and mirrored by anyone: git clone --mirror https://inbox.dpdk.org/stable/0 stable/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 stable stable/ https://inbox.dpdk.org/stable \ stable@dpdk.org public-inbox-index stable Example config snippet for mirrors. Newsgroup available over NNTP: nntp://inbox.dpdk.org/inbox.dpdk.stable AGPL code for this site: git clone https://public-inbox.org/public-inbox.git