[dpdk-dev] [PATCH v2 1/4] net/i40e: support flexible payload parsing for FDIR
Ferruh Yigit
ferruh.yigit at intel.com
Thu Jun 8 12:02:34 CEST 2017
On 6/7/2017 9:09 AM, Beilei Xing wrote:
> This patch adds flexible payload parsing support for
> flow director filter.
>
> Signed-off-by: Beilei Xing <beilei.xing at intel.com>
<...>
> /* 1. Last in item should be NULL as range is not supported.
> - * 2. Supported flow type and input set: refer to array
> + * 2. Supported patterns: refer to array i40e_supported_patterns.
> + * 3. Supported flow type and input set: refer to array
> * default_inset_table in i40e_ethdev.c.
> - * 3. Mask of fields which need to be matched should be
> + * 4. Mask of fields which need to be matched should be
> * filled with 1.
> - * 4. Mask of fields which needn't to be matched should be
> + * 5. Mask of fields which needn't to be matched should be
> * filled with 0.
> */
> static int
> @@ -769,15 +948,29 @@ i40e_flow_parse_fdir_pattern(struct rte_eth_dev *dev,
> const struct rte_flow_item_tcp *tcp_spec, *tcp_mask;
> const struct rte_flow_item_udp *udp_spec, *udp_mask;
> const struct rte_flow_item_sctp *sctp_spec, *sctp_mask;
> + const struct rte_flow_item_raw *raw_spec, *raw_mask;
> const struct rte_flow_item_vf *vf_spec;
> +
> uint32_t flow_type = RTE_ETH_FLOW_UNKNOWN;
> enum i40e_filter_pctype pctype;
> uint64_t input_set = I40E_INSET_NONE;
> uint16_t flag_offset;
> enum rte_flow_item_type item_type;
> enum rte_flow_item_type l3 = RTE_FLOW_ITEM_TYPE_END;
> - uint32_t j;
> + uint32_t i, j;
> + enum i40e_flxpld_layer_idx layer_idx = I40E_FLXPLD_L2_IDX;
> + uint8_t raw_id = 0;
> + struct rte_flow_item_raw raw_arr[I40E_MAX_FLXPLD_FIED];
Hi Beilei,
Getting build error [1] with ICC, can you please check?
[1]
...dpdk/drivers/net/i40e/i40e_flow.c(2302):
error #2405: array of elements containing a flexible array member is
nonstandard
struct rte_flow_item_raw raw_arr[I40E_MAX_FLXPLD_FIED];
^
More information about the dev
mailing list