|WARNING| pw117211-117227 [PATCH] [v3, 17/17] net/mlx5: support device control of representor matching
dpdklab at iol.unh.edu
dpdklab at iol.unh.edu
Fri Sep 30 15:16:26 CEST 2022
Test-Label: iol-testing
Test-Status: WARNING
http://dpdk.org/patch/117211
_apply patch failure_
Submitter: Suanming Mou <suanmingm at nvidia.com>
Date: Friday, September 30 2022 12:53:15
Applied on: CommitID:6de9af249177cee6baceb31e9b73b4df5e34fac7
Apply patch set 117211-117227 failed:
Checking patch drivers/common/mlx5/mlx5_prm.h...
Hunk #1 succeeded at 745 (offset -1 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->sh->config.dv_flow_en == 2) {
#ifdef HAVE_IBV_FLOW_DV_SUPPORT
error: patch failed: drivers/net/mlx5/linux/mlx5_os.c:1540
Hunk #2 succeeded at 1563 (offset -12 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:1007
Hunk #2 succeeded at 1051 (offset -61 lines).
Hunk #3 succeeded at 1099 (offset -61 lines).
Hunk #4 succeeded at 1120 (offset -61 lines).
Hunk #5 succeeded at 1145 (offset -61 lines).
Hunk #6 succeeded at 2115 (offset -172 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).
Hunk #9 succeeded at 1884 (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)
@@ -1540,6 +1540,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->sh->config.dv_flow_en == 2) {
#ifdef HAVE_IBV_FLOW_DV_SUPPORT
diff a/drivers/net/mlx5/mlx5_flow.h b/drivers/net/mlx5/mlx5_flow.h (rejected hunks)
@@ -1007,6 +1007,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 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);
flow_hw_clear_port_info(dev);
if (priv->sh->config.dv_flow_en == 2)
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...
Hunk #1 succeeded at 982 (offset -17 lines).
Hunk #2 succeeded at 1226 (offset -17 lines).
Hunk #3 succeeded at 1253 (offset -17 lines).
Hunk #4 succeeded at 1468 (offset -17 lines).
Hunk #5 succeeded at 1629 (offset -17 lines).
Hunk #6 succeeded at 2815 (offset -17 lines).
Hunk #7 succeeded at 2828 (offset -17 lines).
Hunk #8 succeeded at 2865 (offset -17 lines).
Hunk #9 succeeded at 3108 (offset -17 lines).
Hunk #10 succeeded at 6168 (offset -18 lines).
Hunk #11 succeeded at 11082 (offset -28 lines).
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.c 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);
flow_hw_clear_port_info(dev);
if (priv->sh->config.dv_flow_en == 2)
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 #11 succeeded at 2413 (offset -1 lines).
Hunk #12 succeeded at 2444 (offset -1 lines).
Hunk #13 succeeded at 2478 (offset -1 lines).
Hunk #14 succeeded at 2828 (offset -1 lines).
Hunk #15 succeeded at 2863 (offset -1 lines).
Hunk #16 succeeded at 2896 (offset -1 lines).
Hunk #17 succeeded at 2918 (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...
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_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/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.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/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_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.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_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_flow_meter.c...
error: drivers/net/mlx5/mlx5_flow_meter.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_defs.h...
error: drivers/net/mlx5/mlx5_defs.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...
error: drivers/net/mlx5/mlx5_flow_verbs.c: does not match index
Checking patch drivers/net/mlx5/mlx5_hws_cnt.c...
error: drivers/net/mlx5/mlx5_hws_cnt.c: does not exist in index
Checking patch drivers/net/mlx5/mlx5_hws_cnt.h...
error: drivers/net/mlx5/mlx5_hws_cnt.h: does not exist in 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...
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_flow_meter.c...
error: drivers/net/mlx5/mlx5_flow_meter.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/linux/mlx5_os.c...
error: drivers/net/mlx5/linux/mlx5_os.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_tx.h...
Checking patch drivers/net/mlx5/mlx5_txq.c...
Checking patch drivers/net/mlx5/rte_pmd_mlx5.h...
Checking patch drivers/net/mlx5/version.map...
Applied patch drivers/net/mlx5/mlx5_tx.h cleanly.
Applied patch drivers/net/mlx5/mlx5_txq.c cleanly.
Applied patch drivers/net/mlx5/rte_pmd_mlx5.h cleanly.
Applied patch drivers/net/mlx5/version.map cleanly.
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_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
https://lab.dpdk.org/results/dashboard/patchsets/23732/
UNH-IOL DPDK Community Lab
More information about the test-report
mailing list