Test-Label: iol-testing Test-Status: WARNING http://dpdk.org/patch/122723 _apply patch failure_ Submitter: Alex Vesker Date: Tuesday, January 31 2023 09:33:45 Applied on: CommitID:2a211079a92e962bbd0ec81e425a6ffc32890e67 Apply patch set 122723-122734 failed: Checking patch drivers/net/mlx5/hws/mlx5dr_debug.c... Checking patch drivers/net/mlx5/hws/mlx5dr_matcher.c... error: while searching for: /* The usual Hash Table */ rtc_attr.update_index_mode = MLX5_IFC_RTC_STE_UPDATE_MODE_BY_HASH; /* The first match template is used since all share the same definer */ rtc_attr.definer_id = mlx5dr_definer_get_id(matcher->mt[0]->definer); rtc_attr.is_jumbo = mlx5dr_definer_is_jumbo(matcher->mt[0]->definer); } else if (attr->insert_mode == MLX5DR_MATCHER_INSERT_BY_INDEX) { rtc_attr.update_index_mode = MLX5_IFC_RTC_STE_UPDATE_MODE_BY_OFFSET; rtc_attr.num_hash_definer = 1; error: patch failed: drivers/net/mlx5/hws/mlx5dr_matcher.c:430 error: while searching for: if (attr->distribute_mode == MLX5DR_MATCHER_DISTRIBUTE_BY_HASH) { /* Hash Split Table */ rtc_attr.access_index_mode = MLX5_IFC_RTC_STE_ACCESS_MODE_BY_HASH; rtc_attr.definer_id = mlx5dr_definer_get_id(matcher->mt[0]->definer); rtc_attr.is_jumbo = mlx5dr_definer_is_jumbo(matcher->mt[0]->definer); } else if (attr->distribute_mode == MLX5DR_MATCHER_DISTRIBUTE_BY_LINEAR) { /* Linear Lookup Table */ rtc_attr.access_index_mode = MLX5_IFC_RTC_STE_ACCESS_MODE_LINEAR; error: patch failed: drivers/net/mlx5/hws/mlx5dr_matcher.c:439 Hunk #3 succeeded at 347 (offset -230 lines). Hunk #4 succeeded at 357 (offset -230 lines). Hunk #5 succeeded at 447 (offset -230 lines). Hunk #6 succeeded at 457 (offset -230 lines). Hunk #7 succeeded at 484 (offset -230 lines). Hunk #8 succeeded at 494 (offset -230 lines). Hunk #9 succeeded at 620 (offset -317 lines). Hunk #10 succeeded at 748 (offset -318 lines). Hunk #11 succeeded at 804 (offset -319 lines). Hunk #12 succeeded at 874 (offset -319 lines). Hunk #13 succeeded at 882 (offset -319 lines). Hunk #14 succeeded at 898 (offset -319 lines). Hunk #15 succeeded at 917 (offset -319 lines). Hunk #16 succeeded at 977 (offset -319 lines). Checking patch drivers/net/mlx5/hws/mlx5dr_matcher.h... Hunk #2 succeeded at 53 (offset -2 lines). Checking patch drivers/net/mlx5/hws/mlx5dr_rule.c... Hunk #4 succeeded at 184 (offset -3 lines). Hunk #5 succeeded at 210 (offset -3 lines). error: while searching for: ste_attr.used_id_rtc_1 = &rule->rtc_1; ste_attr.wqe_ctrl = &wqe_ctrl; ste_attr.wqe_tag = &rule->tag; ste_attr.wqe_tag_is_jumbo = mlx5dr_definer_is_jumbo(matcher->mt[0]->definer); ste_attr.gta_opcode = MLX5DR_WQE_GTA_OP_DEACTIVATE; if (unlikely(mlx5dr_matcher_is_insert_by_idx(matcher))) ste_attr.direct_index = attr->rule_idx; error: patch failed: drivers/net/mlx5/hws/mlx5dr_rule.c:371 Hunk #7 succeeded at 378 (offset -11 lines). Applied patch drivers/net/mlx5/hws/mlx5dr_debug.c cleanly. Applying patch drivers/net/mlx5/hws/mlx5dr_matcher.c with 2 rejects... Rejected hunk #1. Rejected hunk #2. Hunk #3 applied cleanly. Hunk #4 applied cleanly. Hunk #5 applied cleanly. Hunk #6 applied cleanly. Hunk #7 applied cleanly. Hunk #8 applied cleanly. Hunk #9 applied cleanly. Hunk #10 applied cleanly. Hunk #11 applied cleanly. Hunk #12 applied cleanly. Hunk #13 applied cleanly. Hunk #14 applied cleanly. Hunk #15 applied cleanly. Hunk #16 applied cleanly. Applied patch drivers/net/mlx5/hws/mlx5dr_matcher.h cleanly. Applying patch drivers/net/mlx5/hws/mlx5dr_rule.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. diff a/drivers/net/mlx5/hws/mlx5dr_matcher.c b/drivers/net/mlx5/hws/mlx5dr_matcher.c (rejected hunks) @@ -430,8 +430,8 @@ static int mlx5dr_matcher_create_rtc(struct mlx5dr_matcher *matcher, /* The usual Hash Table */ rtc_attr.update_index_mode = MLX5_IFC_RTC_STE_UPDATE_MODE_BY_HASH; /* The first match template is used since all share the same definer */ - rtc_attr.definer_id = mlx5dr_definer_get_id(matcher->mt[0]->definer); - rtc_attr.is_jumbo = mlx5dr_definer_is_jumbo(matcher->mt[0]->definer); + rtc_attr.definer_id = mlx5dr_definer_get_id(matcher->mt->definer); + rtc_attr.is_jumbo = mlx5dr_definer_is_jumbo(matcher->mt->definer); } else if (attr->insert_mode == MLX5DR_MATCHER_INSERT_BY_INDEX) { rtc_attr.update_index_mode = MLX5_IFC_RTC_STE_UPDATE_MODE_BY_OFFSET; rtc_attr.num_hash_definer = 1; @@ -439,10 +439,8 @@ static int mlx5dr_matcher_create_rtc(struct mlx5dr_matcher *matcher, if (attr->distribute_mode == MLX5DR_MATCHER_DISTRIBUTE_BY_HASH) { /* Hash Split Table */ rtc_attr.access_index_mode = MLX5_IFC_RTC_STE_ACCESS_MODE_BY_HASH; - rtc_attr.definer_id = - mlx5dr_definer_get_id(matcher->mt[0]->definer); - rtc_attr.is_jumbo = - mlx5dr_definer_is_jumbo(matcher->mt[0]->definer); + rtc_attr.definer_id = mlx5dr_definer_get_id(matcher->mt->definer); + rtc_attr.is_jumbo = mlx5dr_definer_is_jumbo(matcher->mt->definer); } else if (attr->distribute_mode == MLX5DR_MATCHER_DISTRIBUTE_BY_LINEAR) { /* Linear Lookup Table */ rtc_attr.access_index_mode = MLX5_IFC_RTC_STE_ACCESS_MODE_LINEAR; diff a/drivers/net/mlx5/hws/mlx5dr_rule.c b/drivers/net/mlx5/hws/mlx5dr_rule.c (rejected hunks) @@ -371,7 +372,7 @@ static int mlx5dr_rule_destroy_hws(struct mlx5dr_rule *rule, ste_attr.used_id_rtc_1 = &rule->rtc_1; ste_attr.wqe_ctrl = &wqe_ctrl; ste_attr.wqe_tag = &rule->tag; - ste_attr.wqe_tag_is_jumbo = mlx5dr_definer_is_jumbo(matcher->mt[0]->definer); + ste_attr.wqe_tag_is_jumbo = mlx5dr_definer_is_jumbo(matcher->mt->definer); ste_attr.gta_opcode = MLX5DR_WQE_GTA_OP_DEACTIVATE; if (unlikely(mlx5dr_matcher_is_insert_by_idx(matcher))) ste_attr.direct_index = attr->rule_idx; Checking patch drivers/common/mlx5/mlx5_prm.h... error: while searching for: MLX5_CMD_QUERY_REGEX_REGISTERS = 0xb07, MLX5_CMD_OP_ACCESS_REGISTER_USER = 0xb0c, MLX5_CMD_OP_ALLOW_OTHER_VHCA_ACCESS = 0xb16, }; enum { error: patch failed: drivers/common/mlx5/mlx5_prm.h:1141 Hunk #2 succeeded at 2135 (offset -25 lines). error: while searching for: struct mlx5_ifc_alias_context_bits alias_ctx; }; enum { MLX5_CRYPTO_KEY_SIZE_128b = 0x0, MLX5_CRYPTO_KEY_SIZE_256b = 0x1, error: patch failed: drivers/common/mlx5/mlx5_prm.h:3529 Checking patch drivers/net/mlx5/hws/mlx5dr_cmd.c... error: while searching for: return devx_obj; } int mlx5dr_cmd_query_caps(struct ibv_context *ctx, struct mlx5dr_cmd_query_caps *caps) { error: patch failed: drivers/net/mlx5/hws/mlx5dr_cmd.c:795 Checking patch drivers/net/mlx5/hws/mlx5dr_cmd.h... Hunk #1 succeeded at 136 (offset -17 lines). Hunk #2 succeeded at 196 (offset -24 lines). Applying patch drivers/common/mlx5/mlx5_prm.h with 2 rejects... Rejected hunk #1. Hunk #2 applied cleanly. Rejected hunk #3. Applying patch drivers/net/mlx5/hws/mlx5dr_cmd.c with 1 reject... Rejected hunk #1. Applied patch drivers/net/mlx5/hws/mlx5dr_cmd.h cleanly. diff a/drivers/common/mlx5/mlx5_prm.h b/drivers/common/mlx5/mlx5_prm.h (rejected hunks) @@ -1141,6 +1141,7 @@ enum { MLX5_CMD_QUERY_REGEX_REGISTERS = 0xb07, MLX5_CMD_OP_ACCESS_REGISTER_USER = 0xb0c, MLX5_CMD_OP_ALLOW_OTHER_VHCA_ACCESS = 0xb16, + MLX5_CMD_OP_GENERATE_WQE = 0xb17, }; enum { @@ -3529,6 +3531,29 @@ struct mlx5_ifc_create_alias_obj_in_bits { struct mlx5_ifc_alias_context_bits alias_ctx; }; +struct mlx5_ifc_generate_wqe_in_bits { + u8 opcode[0x10]; + u8 uid[0x10]; + u8 reserved_at_20[0x10]; + u8 op_mode[0x10]; + u8 reserved_at_40[0x40]; + u8 reserved_at_80[0x8]; + u8 pdn[0x18]; + u8 reserved_at_a0[0x160]; + u8 wqe_ctrl[0x80]; + u8 wqe_gta_ctrl[0x180]; + u8 wqe_gta_data_0[0x200]; + u8 wqe_gta_data_1[0x200]; +}; + +struct mlx5_ifc_generate_wqe_out_bits { + u8 status[0x8]; + u8 reserved_at_8[0x18]; + u8 syndrome[0x20]; + u8 reserved_at_40[0x1c0]; + u8 cqe_data[0x200]; +}; + enum { MLX5_CRYPTO_KEY_SIZE_128b = 0x0, MLX5_CRYPTO_KEY_SIZE_256b = 0x1, diff a/drivers/net/mlx5/hws/mlx5dr_cmd.c b/drivers/net/mlx5/hws/mlx5dr_cmd.c (rejected hunks) @@ -795,6 +795,53 @@ mlx5dr_cmd_alias_obj_create(struct ibv_context *ctx, return devx_obj; } +int mlx5dr_cmd_generate_wqe(struct ibv_context *ctx, + struct mlx5dr_cmd_generate_wqe_attr *attr, + struct mlx5_cqe64 *ret_cqe) +{ + uint32_t out[MLX5_ST_SZ_DW(generate_wqe_out)] = {0}; + uint32_t in[MLX5_ST_SZ_DW(generate_wqe_in)] = {0}; + uint8_t status; + void *ptr; + int ret; + + MLX5_SET(generate_wqe_in, in, opcode, MLX5_CMD_OP_GENERATE_WQE); + MLX5_SET(generate_wqe_in, in, pdn, attr->pdn); + + ptr = MLX5_ADDR_OF(generate_wqe_in, in, wqe_ctrl); + memcpy(ptr, attr->wqe_ctrl, MLX5_FLD_SZ_BYTES(generate_wqe_in, wqe_ctrl)); + + ptr = MLX5_ADDR_OF(generate_wqe_in, in, wqe_gta_ctrl); + memcpy(ptr, attr->gta_ctrl, MLX5_FLD_SZ_BYTES(generate_wqe_in, wqe_gta_ctrl)); + + ptr = MLX5_ADDR_OF(generate_wqe_in, in, wqe_gta_data_0); + memcpy(ptr, attr->gta_data_0, MLX5_FLD_SZ_BYTES(generate_wqe_in, wqe_gta_data_0)); + + if (attr->gta_data_1) { + ptr = MLX5_ADDR_OF(generate_wqe_in, in, wqe_gta_data_1); + memcpy(ptr, attr->gta_data_1, MLX5_FLD_SZ_BYTES(generate_wqe_in, wqe_gta_data_1)); + } + + ret = mlx5_glue->devx_general_cmd(ctx, in, sizeof(in), out, sizeof(out)); + if (ret) { + DR_LOG(ERR, "Failed to write GTA WQE using FW"); + rte_errno = errno; + return rte_errno; + } + + status = MLX5_GET(generate_wqe_out, out, status); + if (status) { + DR_LOG(ERR, "Invalid FW CQE status %d", status); + rte_errno = EINVAL; + return rte_errno; + } + + ptr = MLX5_ADDR_OF(generate_wqe_out, out, cqe_data); + memcpy(ret_cqe, ptr, sizeof(*ret_cqe)); + + return 0; +} + int mlx5dr_cmd_query_caps(struct ibv_context *ctx, struct mlx5dr_cmd_query_caps *caps) { Checking patch drivers/common/mlx5/mlx5_prm.h... error: drivers/common/mlx5/mlx5_prm.h: does not match index Checking patch drivers/net/mlx5/hws/mlx5dr_cmd.c... error: while searching for: capability.cmd_hca_cap_2. format_select_dw_gtpu_first_ext_dw_0); /* check cross-VHCA support in cap2 */ res = MLX5_GET(query_hca_cap_out, out, error: patch failed: drivers/net/mlx5/hws/mlx5dr_cmd.c:928 error: while searching for: caps->linear_match_definer = MLX5_GET(query_hca_cap_out, out, capability.wqe_based_flow_table_cap. linear_match_definer_reg_c3); } if (caps->eswitch_manager) { error: patch failed: drivers/net/mlx5/hws/mlx5dr_cmd.c:1033 Checking patch drivers/net/mlx5/hws/mlx5dr_cmd.h... error: drivers/net/mlx5/hws/mlx5dr_cmd.h: does not match index Applying patch drivers/net/mlx5/hws/mlx5dr_cmd.c with 2 rejects... Rejected hunk #1. Rejected hunk #2. diff a/drivers/net/mlx5/hws/mlx5dr_cmd.c b/drivers/net/mlx5/hws/mlx5dr_cmd.c (rejected hunks) @@ -928,6 +928,10 @@ int mlx5dr_cmd_query_caps(struct ibv_context *ctx, capability.cmd_hca_cap_2. format_select_dw_gtpu_first_ext_dw_0); + caps->supp_type_gen_wqe = MLX5_GET(query_hca_cap_out, out, + capability.cmd_hca_cap_2. + generate_wqe_type); + /* check cross-VHCA support in cap2 */ res = MLX5_GET(query_hca_cap_out, out, @@ -1033,6 +1037,14 @@ int mlx5dr_cmd_query_caps(struct ibv_context *ctx, caps->linear_match_definer = MLX5_GET(query_hca_cap_out, out, capability.wqe_based_flow_table_cap. linear_match_definer_reg_c3); + + caps->rtc_max_hash_def_gen_wqe = MLX5_GET(query_hca_cap_out, out, + capability.wqe_based_flow_table_cap. + rtc_max_num_hash_definer_gen_wqe); + + caps->supp_ste_fromat_gen_wqe = MLX5_GET(query_hca_cap_out, out, + capability.wqe_based_flow_table_cap. + ste_fromat_gen_wqe); } if (caps->eswitch_manager) { Checking patch drivers/common/mlx5/mlx5_prm.h... error: drivers/common/mlx5/mlx5_prm.h: does not match index Checking patch drivers/net/mlx5/hws/mlx5dr_cmd.c... error: while searching for: attr, obj_type, MLX5_GENERAL_OBJ_TYPE_RTC); attr = MLX5_ADDR_OF(create_rtc_in, in, rtc); MLX5_SET(rtc, attr, ste_format, rtc_attr->is_jumbo ? MLX5_IFC_RTC_STE_FORMAT_11DW : MLX5_IFC_RTC_STE_FORMAT_8DW); MLX5_SET(rtc, attr, pd, rtc_attr->pd); MLX5_SET(rtc, attr, update_index_mode, rtc_attr->update_index_mode); MLX5_SET(rtc, attr, access_index_mode, rtc_attr->access_index_mode); MLX5_SET(rtc, attr, num_hash_definer, rtc_attr->num_hash_definer); MLX5_SET(rtc, attr, log_depth, rtc_attr->log_depth); MLX5_SET(rtc, attr, log_hash_size, rtc_attr->log_size); MLX5_SET(rtc, attr, table_type, rtc_attr->table_type); MLX5_SET(rtc, attr, match_definer_id, rtc_attr->definer_id); MLX5_SET(rtc, attr, stc_id, rtc_attr->stc_base); MLX5_SET(rtc, attr, ste_table_base_id, rtc_attr->ste_base); MLX5_SET(rtc, attr, ste_table_offset, rtc_attr->ste_offset); error: patch failed: drivers/net/mlx5/hws/mlx5dr_cmd.c:259 Checking patch drivers/net/mlx5/hws/mlx5dr_cmd.h... error: drivers/net/mlx5/hws/mlx5dr_cmd.h: does not match index Checking patch drivers/net/mlx5/hws/mlx5dr_matcher.c... error: drivers/net/mlx5/hws/mlx5dr_matcher.c: does not match index Applying patch drivers/net/mlx5/hws/mlx5dr_cmd.c with 1 reject... Rejected hunk #1. diff a/drivers/net/mlx5/hws/mlx5dr_cmd.c b/drivers/net/mlx5/hws/mlx5dr_cmd.c (rejected hunks) @@ -259,17 +259,26 @@ mlx5dr_cmd_rtc_create(struct ibv_context *ctx, attr, obj_type, MLX5_GENERAL_OBJ_TYPE_RTC); attr = MLX5_ADDR_OF(create_rtc_in, in, rtc); - MLX5_SET(rtc, attr, ste_format, rtc_attr->is_jumbo ? + MLX5_SET(rtc, attr, ste_format_0, rtc_attr->is_frst_jumbo ? MLX5_IFC_RTC_STE_FORMAT_11DW : MLX5_IFC_RTC_STE_FORMAT_8DW); + + if (rtc_attr->is_scnd_range) { + MLX5_SET(rtc, attr, ste_format_1, MLX5_IFC_RTC_STE_FORMAT_RANGE); + MLX5_SET(rtc, attr, num_match_ste, 2); + } + MLX5_SET(rtc, attr, pd, rtc_attr->pd); + MLX5_SET(rtc, attr, update_method, rtc_attr->fw_gen_wqe); MLX5_SET(rtc, attr, update_index_mode, rtc_attr->update_index_mode); MLX5_SET(rtc, attr, access_index_mode, rtc_attr->access_index_mode); MLX5_SET(rtc, attr, num_hash_definer, rtc_attr->num_hash_definer); MLX5_SET(rtc, attr, log_depth, rtc_attr->log_depth); MLX5_SET(rtc, attr, log_hash_size, rtc_attr->log_size); MLX5_SET(rtc, attr, table_type, rtc_attr->table_type); - MLX5_SET(rtc, attr, match_definer_id, rtc_attr->definer_id); + MLX5_SET(rtc, attr, num_hash_definer, rtc_attr->num_hash_definer); + MLX5_SET(rtc, attr, match_definer_0, rtc_attr->match_definer_0); + MLX5_SET(rtc, attr, match_definer_1, rtc_attr->match_definer_1); MLX5_SET(rtc, attr, stc_id, rtc_attr->stc_base); MLX5_SET(rtc, attr, ste_table_base_id, rtc_attr->ste_base); MLX5_SET(rtc, attr, ste_table_offset, rtc_attr->ste_offset); Checking patch drivers/net/mlx5/hws/mlx5dr_matcher.c... error: drivers/net/mlx5/hws/mlx5dr_matcher.c: does not match index Checking patch drivers/net/mlx5/hws/mlx5dr_definer.c... Checking patch drivers/net/mlx5/hws/mlx5dr_definer.h... Checking patch drivers/net/mlx5/hws/mlx5dr_internal.h... Hunk #1 succeeded at 29 (offset -1 lines). Checking patch drivers/net/mlx5/hws/mlx5dr_matcher.c... error: drivers/net/mlx5/hws/mlx5dr_matcher.c: does not match index Checking patch drivers/net/mlx5/hws/mlx5dr_matcher.h... error: drivers/net/mlx5/hws/mlx5dr_matcher.h: does not match index Applied patch drivers/net/mlx5/hws/mlx5dr_definer.c cleanly. Applied patch drivers/net/mlx5/hws/mlx5dr_definer.h cleanly. Applied patch drivers/net/mlx5/hws/mlx5dr_internal.h cleanly. Checking patch drivers/common/mlx5/mlx5_prm.h... error: drivers/common/mlx5/mlx5_prm.h: does not match index Checking patch drivers/net/mlx5/hws/mlx5dr_definer.c... error: drivers/net/mlx5/hws/mlx5dr_definer.c: does not match index Checking patch drivers/net/mlx5/hws/mlx5dr_matcher.c... error: drivers/net/mlx5/hws/mlx5dr_matcher.c: does not match index Checking patch drivers/net/mlx5/hws/mlx5dr_matcher.h... error: drivers/net/mlx5/hws/mlx5dr_matcher.h: does not match index Checking patch drivers/net/mlx5/hws/mlx5dr_definer.c... error: drivers/net/mlx5/hws/mlx5dr_definer.c: does not match index Checking patch drivers/net/mlx5/hws/mlx5dr_definer.h... error: drivers/net/mlx5/hws/mlx5dr_definer.h: does not match index Checking patch drivers/net/mlx5/hws/mlx5dr_matcher.c... error: drivers/net/mlx5/hws/mlx5dr_matcher.c: does not match index Checking patch drivers/net/mlx5/hws/mlx5dr_matcher.h... error: drivers/net/mlx5/hws/mlx5dr_matcher.h: does not match index Checking patch drivers/net/mlx5/hws/mlx5dr_rule.c... error: drivers/net/mlx5/hws/mlx5dr_rule.c: does not match index Checking patch drivers/net/mlx5/hws/mlx5dr_rule.h... Checking patch drivers/net/mlx5/hws/mlx5dr_send.h... Applied patch drivers/net/mlx5/hws/mlx5dr_rule.h cleanly. Applied patch drivers/net/mlx5/hws/mlx5dr_send.h cleanly. Checking patch drivers/net/mlx5/hws/mlx5dr_debug.c... error: drivers/net/mlx5/hws/mlx5dr_debug.c: does not match index Checking patch drivers/net/mlx5/hws/mlx5dr_debug.h... Applied patch drivers/net/mlx5/hws/mlx5dr_debug.h cleanly. Checking patch drivers/net/mlx5/hws/mlx5dr_context.c... Checking patch drivers/net/mlx5/hws/mlx5dr_context.h... error: while searching for: struct mlx5dr_context_common_res common_res[MLX5DR_TABLE_TYPE_MAX]; struct mlx5dr_context_shared_gvmi_res gvmi_res[MLX5DR_TABLE_TYPE_MAX]; struct mlx5dr_pattern_cache *pattern_cache; pthread_spinlock_t ctrl_lock; enum mlx5dr_context_flags flags; struct mlx5dr_send_engine *send_queue; error: patch failed: drivers/net/mlx5/hws/mlx5dr_context.h:39 Checking patch drivers/net/mlx5/hws/mlx5dr_definer.c... error: drivers/net/mlx5/hws/mlx5dr_definer.c: does not match index Checking patch drivers/net/mlx5/hws/mlx5dr_definer.h... error: drivers/net/mlx5/hws/mlx5dr_definer.h: does not match index Applied patch drivers/net/mlx5/hws/mlx5dr_context.c cleanly. Applying patch drivers/net/mlx5/hws/mlx5dr_context.h with 1 reject... Rejected hunk #1. diff a/drivers/net/mlx5/hws/mlx5dr_context.h b/drivers/net/mlx5/hws/mlx5dr_context.h (rejected hunks) @@ -39,6 +39,7 @@ struct mlx5dr_context { struct mlx5dr_context_common_res common_res[MLX5DR_TABLE_TYPE_MAX]; struct mlx5dr_context_shared_gvmi_res gvmi_res[MLX5DR_TABLE_TYPE_MAX]; struct mlx5dr_pattern_cache *pattern_cache; + struct mlx5dr_definer_cache *definer_cache; pthread_spinlock_t ctrl_lock; enum mlx5dr_context_flags flags; struct mlx5dr_send_engine *send_queue; https://lab.dpdk.org/results/dashboard/patchsets/25132/ UNH-IOL DPDK Community Lab