[dpdk-dev] [PATCH v2 03/15] net/mlx5: support L3 vxlan flow

Nélio Laranjeiro nelio.laranjeiro at 6wind.com
Tue Apr 10 16:53:57 CEST 2018


On Tue, Apr 10, 2018 at 09:34:03PM +0800, Xueming Li wrote:
> This patch add L3 vxlan support, no inner L2 header comparing to
> standard vxlan protocol.
>
> 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 026952b46..870d05250 100644
> --- a/drivers/net/mlx5/mlx5_flow.c
> +++ b/drivers/net/mlx5/mlx5_flow.c
> @@ -410,7 +410,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,
> +			       RTE_FLOW_ITEM_TYPE_IPV6),
>  		.actions = valid_actions,
>  		.mask = &(const struct rte_flow_item_vxlan){
>  			.vni = "\xff\xff\xff",
> -- 
> 2.13.3


As there is a necessity for a v3, can you also upper VXLAN.

It also deserves a comment in the code itself, currently this seems a
bug as the RFC [1] implies to have an inner Ethernet layer.  I suppose
there is a use case for such modification but as it not explained it is
just a supposition.

Thanks,

[1] https://tools.ietf.org/html/rfc7348

-- 
Nélio Laranjeiro
6WIND


More information about the dev mailing list