[dpdk-dev] [PATCH v4 03/11] net/mlx5: support L3 VXLAN flow

Nélio Laranjeiro nelio.laranjeiro at 6wind.com
Wed Apr 18 08:48:56 CEST 2018


On Tue, Apr 17, 2018 at 11:14:28PM +0800, Xueming Li wrote:
> This patch support L3 VXLAN, no inner L2 header comparing to standard
> VXLAN protocol. L3 VXLAN using specific overlay UDP destination port to
> discriminate against standard VXLAN, FW has to be configured to support
> it:
>   sudo mlxconfig -d <device> -y s IP_OVER_VXLAN_EN=1
>   sudo mlxconfig -d <device> -y s IP_OVER_VXLAN_PORT=<port>
> 
> Signed-off-by: Xueming Li <xuemingl at mellanox.com>
> ---
>  drivers/net/mlx5/mlx5_flow.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c
> index 771d5f14d..d7a921dff 100644
> --- a/drivers/net/mlx5/mlx5_flow.c
> +++ b/drivers/net/mlx5/mlx5_flow.c
> @@ -413,7 +413,9 @@ static const struct mlx5_flow_items mlx5_flow_items[] = {
>  		.dst_sz = sizeof(struct ibv_flow_spec_tunnel),
>  	},
>  	[RTE_FLOW_ITEM_TYPE_VXLAN] = {
> -		.items = ITEMS(RTE_FLOW_ITEM_TYPE_ETH),
> +		.items = ITEMS(RTE_FLOW_ITEM_TYPE_ETH,
> +			       RTE_FLOW_ITEM_TYPE_IPV4, /* For L3 VXLAN. */
> +			       RTE_FLOW_ITEM_TYPE_IPV6), /* For L3 VXLAN. */
>  		.actions = valid_actions,
>  		.mask = &(const struct rte_flow_item_vxlan){
>  			.vni = "\xff\xff\xff",
> -- 
> 2.13.3

Such support must be under device parameter has it depends on the
configuration of the firmware.  If the firmware is not correctly
configured the PMD must refuse such rule.

Thanks,

-- 
Nélio Laranjeiro
6WIND


More information about the dev mailing list