Test-Label: iol-testing Test-Status: WARNING http://dpdk.org/patch/116739 _apply patch failure_ Submitter: Suanming Mou Date: Friday, September 23 2022 14:43:34 Applied on: CommitID:d2384afb4776b4f775bfe238aaa7912423335ebd Apply patch set 116739-116764 failed: Checking patch drivers/common/mlx5/mlx5_prm.h... Hunk #1 succeeded at 745 (offset -6 lines). Checking patch drivers/net/mlx5/linux/mlx5_os.c... error: while searching for: mlx5_hrxq_clone_free_cb); if (!priv->hrxqs) goto error; rte_rwlock_init(&priv->ind_tbls_lock); if (priv->vport_meta_mask) flow_hw_set_port_info(eth_dev); error: patch failed: drivers/net/mlx5/linux/mlx5_os.c:1539 Hunk #2 succeeded at 1563 (offset -6 lines). Checking patch drivers/net/mlx5/mlx5.h... Checking patch drivers/net/mlx5/mlx5_flow.h... error: while searching for: return items[0].spec; } /* HW steering flow attributes. */ struct mlx5_flow_attr { uint32_t port_id; /* Port index. */ error: patch failed: drivers/net/mlx5/mlx5_flow.h:1008 Hunk #2 succeeded at 1051 (offset -62 lines). Hunk #3 succeeded at 1099 (offset -62 lines). Hunk #4 succeeded at 1120 (offset -62 lines). Hunk #5 succeeded at 1145 (offset -62 lines). Hunk #6 succeeded at 2115 (offset -171 lines). Checking patch drivers/net/mlx5/mlx5_flow_dv.c... Hunk #1 succeeded at 215 (offset -26 lines). Hunk #2 succeeded at 347 (offset -26 lines). Hunk #3 succeeded at 375 (offset -26 lines). Hunk #4 succeeded at 1393 (offset -26 lines). Hunk #5 succeeded at 1427 (offset -26 lines). Hunk #6 succeeded at 1768 (offset -26 lines). Hunk #7 succeeded at 1789 (offset -26 lines). Hunk #8 succeeded at 1809 (offset -26 lines). Checking patch drivers/net/mlx5/mlx5_flow_hw.c... Applied patch drivers/common/mlx5/mlx5_prm.h cleanly. Applying patch drivers/net/mlx5/linux/mlx5_os.c with 1 reject... Rejected hunk #1. Hunk #2 applied cleanly. Applied patch drivers/net/mlx5/mlx5.h cleanly. Applying patch drivers/net/mlx5/mlx5_flow.h with 1 reject... Rejected hunk #1. Hunk #2 applied cleanly. Hunk #3 applied cleanly. Hunk #4 applied cleanly. Hunk #5 applied cleanly. Hunk #6 applied cleanly. Applied patch drivers/net/mlx5/mlx5_flow_dv.c cleanly. Applied patch drivers/net/mlx5/mlx5_flow_hw.c cleanly. diff a/drivers/net/mlx5/linux/mlx5_os.c b/drivers/net/mlx5/linux/mlx5_os.c (rejected hunks) @@ -1539,6 +1539,15 @@ mlx5_dev_spawn(struct rte_device *dpdk_dev, mlx5_hrxq_clone_free_cb); if (!priv->hrxqs) goto error; + mlx5_set_metadata_mask(eth_dev); + if (sh->config.dv_xmeta_en != MLX5_XMETA_MODE_LEGACY && + !priv->sh->dv_regc0_mask) { + DRV_LOG(ERR, "metadata mode %u is not supported " + "(no metadata reg_c[0] is available)", + sh->config.dv_xmeta_en); + err = ENOTSUP; + goto error; + } rte_rwlock_init(&priv->ind_tbls_lock); if (priv->vport_meta_mask) flow_hw_set_port_info(eth_dev); diff a/drivers/net/mlx5/mlx5_flow.h b/drivers/net/mlx5/mlx5_flow.h (rejected hunks) @@ -1008,6 +1008,51 @@ flow_items_to_tunnel(const struct rte_flow_item items[]) return items[0].spec; } +/** + * Fetch 1, 2, 3 or 4 byte field from the byte array + * and return as unsigned integer in host-endian format. + * + * @param[in] data + * Pointer to data array. + * @param[in] size + * Size of field to extract. + * + * @return + * converted field in host endian format. + */ +static inline uint32_t +flow_dv_fetch_field(const uint8_t *data, uint32_t size) +{ + uint32_t ret; + + switch (size) { + case 1: + ret = *data; + break; + case 2: + ret = rte_be_to_cpu_16(*(const unaligned_uint16_t *)data); + break; + case 3: + ret = rte_be_to_cpu_16(*(const unaligned_uint16_t *)data); + ret = (ret << 8) | *(data + sizeof(uint16_t)); + break; + case 4: + ret = rte_be_to_cpu_32(*(const unaligned_uint32_t *)data); + break; + default: + MLX5_ASSERT(false); + ret = 0; + break; + } + return ret; +} + +struct field_modify_info { + uint32_t size; /* Size of field in protocol header, in bytes. */ + uint32_t offset; /* Offset of field in protocol header, in bytes. */ + enum mlx5_modification_field id; +}; + /* HW steering flow attributes. */ struct mlx5_flow_attr { uint32_t port_id; /* Port index. */ Checking patch drivers/net/mlx5/mlx5_flow_hw.c... error: drivers/net/mlx5/mlx5_flow_hw.c: does not match index Checking patch drivers/net/mlx5/mlx5.h... error: drivers/net/mlx5/mlx5.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow.c... Hunk #1 succeeded at 1464 (offset -17 lines). Hunk #2 succeeded at 1625 (offset -17 lines). Applied patch drivers/net/mlx5/mlx5_flow.c cleanly. Checking patch doc/guides/nics/mlx5.rst... Hunk #1 succeeded at 1117 (offset -1 lines). Checking patch drivers/net/mlx5/linux/mlx5_os.c... error: drivers/net/mlx5/linux/mlx5_os.c: does not match index Checking patch drivers/net/mlx5/mlx5.c... Hunk #5 succeeded at 1358 (offset -9 lines). error: while searching for: mlx5_flex_parser_ecpri_release(dev); mlx5_flex_item_port_cleanup(dev); #if defined(HAVE_IBV_FLOW_DV_SUPPORT) || !defined(HAVE_INFINIBAND_VERBS_H) flow_hw_resource_release(dev); #endif flow_hw_clear_port_info(dev); error: patch failed: drivers/net/mlx5/mlx5.c:1943 Hunk #7 succeeded at 2643 (offset -10 lines). Checking patch drivers/net/mlx5/mlx5.h... error: drivers/net/mlx5/mlx5.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow.c... error: drivers/net/mlx5/mlx5_flow.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow.h... error: drivers/net/mlx5/mlx5_flow.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow_dv.c... error: drivers/net/mlx5/mlx5_flow_dv.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow_hw.c... error: drivers/net/mlx5/mlx5_flow_hw.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow_verbs.c... Checking patch drivers/net/mlx5/mlx5_trigger.c... Applied patch doc/guides/nics/mlx5.rst cleanly. Applying patch drivers/net/mlx5/mlx5.c with 1 reject... Hunk #1 applied cleanly. Hunk #2 applied cleanly. Hunk #3 applied cleanly. Hunk #4 applied cleanly. Hunk #5 applied cleanly. Rejected hunk #6. Hunk #7 applied cleanly. Applied patch drivers/net/mlx5/mlx5_flow_verbs.c cleanly. Applied patch drivers/net/mlx5/mlx5_trigger.c cleanly. diff a/drivers/net/mlx5/mlx5.c b/drivers/net/mlx5/mlx5.c (rejected hunks) @@ -1943,6 +1951,7 @@ mlx5_dev_close(struct rte_eth_dev *dev) mlx5_flex_parser_ecpri_release(dev); mlx5_flex_item_port_cleanup(dev); #if defined(HAVE_IBV_FLOW_DV_SUPPORT) || !defined(HAVE_INFINIBAND_VERBS_H) + flow_hw_destroy_vport_action(dev); flow_hw_resource_release(dev); #endif flow_hw_clear_port_info(dev); Checking patch drivers/net/mlx5/linux/mlx5_os.c... error: drivers/net/mlx5/linux/mlx5_os.c: does not match index Checking patch drivers/net/mlx5/mlx5.c... error: drivers/net/mlx5/mlx5.c: does not match index Checking patch drivers/net/mlx5/mlx5.h... error: drivers/net/mlx5/mlx5.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow.c... error: drivers/net/mlx5/mlx5_flow.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow.h... error: drivers/net/mlx5/mlx5_flow.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow_dv.c... error: drivers/net/mlx5/mlx5_flow_dv.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow_hw.c... error: drivers/net/mlx5/mlx5_flow_hw.c: does not match index Checking patch drivers/net/mlx5/mlx5_trigger.c... error: drivers/net/mlx5/mlx5_trigger.c: does not match index Checking patch drivers/net/mlx5/mlx5.h... error: drivers/net/mlx5/mlx5.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow.c... error: drivers/net/mlx5/mlx5_flow.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow.h... error: drivers/net/mlx5/mlx5_flow.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow_aso.c... Checking patch drivers/net/mlx5/mlx5_flow_dv.c... error: drivers/net/mlx5/mlx5_flow_dv.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow_hw.c... error: drivers/net/mlx5/mlx5_flow_hw.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow_meter.c... Hunk #12 succeeded at 2564 (offset -1 lines). Hunk #13 succeeded at 2595 (offset -1 lines). Hunk #14 succeeded at 2629 (offset -1 lines). Hunk #15 succeeded at 2979 (offset -1 lines). Hunk #16 succeeded at 3014 (offset -1 lines). Hunk #17 succeeded at 3047 (offset -1 lines). Hunk #18 succeeded at 3069 (offset -1 lines). Applied patch drivers/net/mlx5/mlx5_flow_aso.c cleanly. Applied patch drivers/net/mlx5/mlx5_flow_meter.c cleanly. Checking patch drivers/common/mlx5/mlx5_devx_cmds.c... Hunk #1 succeeded at 167 (offset -9 lines). Hunk #2 succeeded at 994 (offset -8 lines). Hunk #3 succeeded at 1026 (offset -8 lines). Checking patch drivers/common/mlx5/mlx5_devx_cmds.h... error: while searching for: uint32_t set_reg_c:8; uint32_t nic_flow_table:1; uint32_t modify_outer_ip_ecn:1; }; /* LAG Context. */ error: patch failed: drivers/common/mlx5/mlx5_devx_cmds.h:263 Hunk #3 succeeded at 601 (offset -14 lines). Checking patch drivers/common/mlx5/mlx5_prm.h... error: drivers/common/mlx5/mlx5_prm.h: does not match index Checking patch drivers/common/mlx5/version.map... Checking patch drivers/net/mlx5/meson.build... Hunk #1 succeeded at 38 (offset 1 line). Checking patch drivers/net/mlx5/mlx5.c... error: drivers/net/mlx5/mlx5.c: does not match index Checking patch drivers/net/mlx5/mlx5.h... error: drivers/net/mlx5/mlx5.h: does not match index Checking patch drivers/net/mlx5/mlx5_defs.h... Hunk #1 succeeded at 186 (offset -2 lines). Checking patch drivers/net/mlx5/mlx5_flow.c... error: drivers/net/mlx5/mlx5_flow.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow.h... error: drivers/net/mlx5/mlx5_flow.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow_aso.c... error: drivers/net/mlx5/mlx5_flow_aso.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow_hw.c... error: drivers/net/mlx5/mlx5_flow_hw.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow_meter.c... error: drivers/net/mlx5/mlx5_flow_meter.c: does not match index Checking patch drivers/net/mlx5/mlx5_hws_cnt.c... Checking patch drivers/net/mlx5/mlx5_hws_cnt.h... Applied patch drivers/common/mlx5/mlx5_devx_cmds.c cleanly. Applying patch drivers/common/mlx5/mlx5_devx_cmds.h with 1 reject... Hunk #1 applied cleanly. Rejected hunk #2. Hunk #3 applied cleanly. Applied patch drivers/common/mlx5/version.map cleanly. Applied patch drivers/net/mlx5/meson.build cleanly. Applied patch drivers/net/mlx5/mlx5_defs.h cleanly. Applied patch drivers/net/mlx5/mlx5_hws_cnt.c cleanly. Applied patch drivers/net/mlx5/mlx5_hws_cnt.h cleanly. diff a/drivers/common/mlx5/mlx5_devx_cmds.h b/drivers/common/mlx5/mlx5_devx_cmds.h (rejected hunks) @@ -263,6 +273,18 @@ struct mlx5_hca_attr { uint32_t set_reg_c:8; uint32_t nic_flow_table:1; uint32_t modify_outer_ip_ecn:1; + union { + uint32_t max_flow_counter; + struct { + uint16_t max_flow_counter_15_0; + uint16_t max_flow_counter_31_16; + }; + }; + uint32_t flow_counter_bulk_log_max_alloc:5; + uint32_t flow_counter_bulk_log_granularity:5; + uint32_t alloc_flow_counter_pd:1; + uint32_t flow_counter_access_aso:1; + uint32_t flow_access_aso_opc_mod:8; }; /* LAG Context. */ Checking patch drivers/net/mlx5/mlx5.h... error: drivers/net/mlx5/mlx5.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow.h... error: drivers/net/mlx5/mlx5_flow.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow_hw.c... error: drivers/net/mlx5/mlx5_flow_hw.c: does not match index Checking patch drivers/net/mlx5/mlx5_trigger.c... error: drivers/net/mlx5/mlx5_trigger.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow.h... error: drivers/net/mlx5/mlx5_flow.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow_hw.c... error: drivers/net/mlx5/mlx5_flow_hw.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow_hw.c... error: drivers/net/mlx5/mlx5_flow_hw.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow_hw.c... error: drivers/net/mlx5/mlx5_flow_hw.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow.h... error: drivers/net/mlx5/mlx5_flow.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow_hw.c... error: drivers/net/mlx5/mlx5_flow_hw.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow_hw.c... error: drivers/net/mlx5/mlx5_flow_hw.c: does not match index Checking patch drivers/net/mlx5/linux/mlx5_os.c... error: drivers/net/mlx5/linux/mlx5_os.c: does not match index Checking patch drivers/net/mlx5/mlx5.c... error: drivers/net/mlx5/mlx5.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow.h... error: drivers/net/mlx5/mlx5_flow.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow_hw.c... error: drivers/net/mlx5/mlx5_flow_hw.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow.c... error: drivers/net/mlx5/mlx5_flow.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow.h... error: drivers/net/mlx5/mlx5_flow.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow_hw.c... error: drivers/net/mlx5/mlx5_flow_hw.c: does not match index Checking patch drivers/net/mlx5/mlx5.h... error: drivers/net/mlx5/mlx5.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow.h... error: drivers/net/mlx5/mlx5_flow.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow_aso.c... error: drivers/net/mlx5/mlx5_flow_aso.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow_dv.c... error: drivers/net/mlx5/mlx5_flow_dv.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow_hw.c... error: drivers/net/mlx5/mlx5_flow_hw.c: does not match index Checking patch drivers/net/mlx5/mlx5.h... error: drivers/net/mlx5/mlx5.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow.h... error: drivers/net/mlx5/mlx5_flow.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow_dv.c... error: drivers/net/mlx5/mlx5_flow_dv.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow_hw.c... error: drivers/net/mlx5/mlx5_flow_hw.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow.h... error: drivers/net/mlx5/mlx5_flow.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow_dv.c... error: drivers/net/mlx5/mlx5_flow_dv.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow.h... error: drivers/net/mlx5/mlx5_flow.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow_dv.c... error: drivers/net/mlx5/mlx5_flow_dv.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow_hw.c... error: drivers/net/mlx5/mlx5_flow_hw.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow_meter.c... error: drivers/net/mlx5/mlx5_flow_meter.c: does not match index Checking patch drivers/net/mlx5/mlx5.h... error: drivers/net/mlx5/mlx5.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow.h... error: drivers/net/mlx5/mlx5_flow.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow_aso.c... error: drivers/net/mlx5/mlx5_flow_aso.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow_hw.c... error: drivers/net/mlx5/mlx5_flow_hw.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow_meter.c... error: drivers/net/mlx5/mlx5_flow_meter.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow.c... error: drivers/net/mlx5/mlx5_flow.c: does not match index Checking patch drivers/net/mlx5/mlx5_flow.h... error: drivers/net/mlx5/mlx5_flow.h: does not match index Checking patch drivers/net/mlx5/mlx5_flow_hw.c... error: drivers/net/mlx5/mlx5_flow_hw.c: does not match index https://lab.dpdk.org/results/dashboard/patchsets/23611/ UNH-IOL DPDK Community Lab