diff options
| author | Maor Dickman <maord@nvidia.com> | 2020-09-03 11:02:10 +0300 |
|---|---|---|
| committer | Saeed Mahameed <saeedm@nvidia.com> | 2020-09-15 11:59:53 -0700 |
| commit | 748cde9a3802e1ababedabbf759b3eedbaeaba52 (patch) | |
| tree | 8d88c060a139c3e55b87e9d434e4a213198067f9 | |
| parent | f02882102b1d82e1863c1afb92ca6adf3cfd2ccc (diff) | |
| download | cachepc-linux-748cde9a3802e1ababedabbf759b3eedbaeaba52.tar.gz cachepc-linux-748cde9a3802e1ababedabbf759b3eedbaeaba52.zip | |
net/mlx5e: Add IPv6 traffic class (DSCP) header rewrite support
Add support for rewriting of IPV6 DSCP part of traffic class field.
Next commands, for example, can be used to offload rewrite action:
OVS:
$ ovs-ofctl add-flow ovs-sriov "tcpv6, in_port=REP, \
actions=mod_nw_tos:68, output:NIC"
iproute2:
$ tc filter add dev REP ingress protocol ipv6 prio 1 flower skip_sw \
ip_proto tcp \
action pedit ex munge ip6 traffic_class set 68 retain 0xfc pipe \
action mirred egress redirect dev NIC
Signed-off-by: Maor Dickman <maord@nvidia.com>
Reviewed-by: Roi Dayan <roid@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
| -rw-r--r-- | drivers/net/ethernet/mellanox/mlx5/core/en_tc.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c b/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c index 2dded22a64a3..817c503693fc 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c @@ -2615,6 +2615,7 @@ static struct mlx5_fields fields[] = { OFFLOAD(DIPV6_31_0, 32, U32_MAX, ip6.daddr.s6_addr32[3], 0, dst_ipv4_dst_ipv6.ipv6_layout.ipv6[12]), OFFLOAD(IPV6_HOPLIMIT, 8, U8_MAX, ip6.hop_limit, 0, ttl_hoplimit), + OFFLOAD(IP_DSCP, 16, 0xc00f, ip6, 0, ip_dscp), OFFLOAD(TCP_SPORT, 16, U16_MAX, tcp.source, 0, tcp_sport), OFFLOAD(TCP_DPORT, 16, U16_MAX, tcp.dest, 0, tcp_dport), |
