Login
Log in using an SSO provider:
Fedora Account System
Red Hat Associate
Red Hat Customer
Login using a Red Hat Bugzilla account
Forgot Password
Create an Account
Red Hat Bugzilla – Attachment 1846641 Details for
Bug 2030462
Performance drop while Mirroring OVS Ports in an OVS HW Offload Scenario
Home
New
Search
Simple Search
Advanced Search
My Links
Browse
Requests
Reports
Current State
Search
Tabular reports
Graphical reports
Duplicates
Other Reports
User Changes
Plotly Reports
Bug Status
Bug Severity
Non-Defaults
Product Dashboard
Help
Page Help!
Bug Writing Guidelines
What's new
Browser Support Policy
5.0.4.rh92 Release notes
FAQ
Guides index
User guide
Web Services
Contact
Legal
[?]
This site requires JavaScript to be enabled to function correctly, please enable it.
[patch]
net/mlx5: Set reformat action when needed for termination rules
0001-net-mlx5-Set-reformat-action-when-needed-for-termina.patch (text/plain), 3.16 KB, created by
Amir Tzin (Mellanox)
on 2021-12-16 19:43:52 UTC
(
hide
)
Description:
net/mlx5: Set reformat action when needed for termination rules
Filename:
MIME Type:
Creator:
Amir Tzin (Mellanox)
Created:
2021-12-16 19:43:52 UTC
Size:
3.16 KB
patch
obsolete
>From 442b3d7b671bcb779ebdad46edd08051eb8b28d9 Mon Sep 17 00:00:00 2001 >From: Jianbo Liu <jianbol@nvidia.com> >Date: Fri, 30 Apr 2021 06:58:29 +0000 >Subject: [PATCH] net/mlx5: Set reformat action when needed for termination > rules > >For remote mirroring, after the tunnel packets are received, they are >decapsulated and sent to representor, then re-encapsulated and sent >out over another tunnel. So reformat action is set only when the >destination is required to do encapsulation. > >Fixes: 249ccc3c95bd ("net/mlx5e: Add support for offloading traffic from uplink to uplink") >Signed-off-by: Jianbo Liu <jianbol@nvidia.com> >Reviewed-by: Ariel Levkovich <lariel@nvidia.com> >Signed-off-by: Saeed Mahameed <saeedm@nvidia.com> >--- > .../mlx5/core/eswitch_offloads_termtbl.c | 31 ++++++------------- > 1 file changed, 10 insertions(+), 21 deletions(-) > >diff --git a/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_termtbl.c b/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_termtbl.c >index a81ece94f599..e3e7fdd396ad 100644 >--- a/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_termtbl.c >+++ b/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_termtbl.c >@@ -172,19 +172,6 @@ mlx5_eswitch_termtbl_put(struct mlx5_eswitch *esw, > } > } > >-static bool mlx5_eswitch_termtbl_is_encap_reformat(struct mlx5_pkt_reformat *rt) >-{ >- switch (rt->reformat_type) { >- case MLX5_REFORMAT_TYPE_L2_TO_VXLAN: >- case MLX5_REFORMAT_TYPE_L2_TO_NVGRE: >- case MLX5_REFORMAT_TYPE_L2_TO_L2_TUNNEL: >- case MLX5_REFORMAT_TYPE_L2_TO_L3_TUNNEL: >- return true; >- default: >- return false; >- } >-} >- > static void > mlx5_eswitch_termtbl_actions_move(struct mlx5_flow_act *src, > struct mlx5_flow_act *dst) >@@ -202,14 +189,6 @@ mlx5_eswitch_termtbl_actions_move(struct mlx5_flow_act *src, > memset(&src->vlan[1], 0, sizeof(src->vlan[1])); > } > } >- >- if (src->action & MLX5_FLOW_CONTEXT_ACTION_PACKET_REFORMAT && >- mlx5_eswitch_termtbl_is_encap_reformat(src->pkt_reformat)) { >- src->action &= ~MLX5_FLOW_CONTEXT_ACTION_PACKET_REFORMAT; >- dst->action |= MLX5_FLOW_CONTEXT_ACTION_PACKET_REFORMAT; >- dst->pkt_reformat = src->pkt_reformat; >- src->pkt_reformat = NULL; >- } > } > > static bool mlx5_eswitch_offload_is_uplink_port(const struct mlx5_eswitch *esw, >@@ -279,6 +258,14 @@ mlx5_eswitch_add_termtbl_rule(struct mlx5_eswitch *esw, > if (dest[i].type != MLX5_FLOW_DESTINATION_TYPE_VPORT) > continue; > >+ if (attr->dests[num_vport_dests].flags & MLX5_ESW_DEST_ENCAP) { >+ term_tbl_act.action |= MLX5_FLOW_CONTEXT_ACTION_PACKET_REFORMAT; >+ term_tbl_act.pkt_reformat = attr->dests[num_vport_dests].pkt_reformat; >+ } else { >+ term_tbl_act.action &= ~MLX5_FLOW_CONTEXT_ACTION_PACKET_REFORMAT; >+ term_tbl_act.pkt_reformat = NULL; >+ } >+ > /* get the terminating table for the action list */ > tt = mlx5_eswitch_termtbl_get_create(esw, &term_tbl_act, > &dest[i], attr); >@@ -301,6 +288,8 @@ mlx5_eswitch_add_termtbl_rule(struct mlx5_eswitch *esw, > goto revert_changes; > > /* create the FTE */ >+ flow_act->action &= ~MLX5_FLOW_CONTEXT_ACTION_PACKET_REFORMAT; >+ flow_act->pkt_reformat = NULL; > rule = mlx5_add_flow_rules(fdb, spec, flow_act, dest, num_dest); > if (IS_ERR(rule)) > goto revert_changes; >-- >2.21.3 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 2030462
: 1846641 |
1846642