From: Tonghao Zhang <xiangxia.m....@gmail.com>

Introduce the mlx5e_rep_uplink_priv helper
to make the codes more readable.

Signed-off-by: Tonghao Zhang <xiangxia.m....@gmail.com>
---
v2:
* change the name mlx5e_eswitch_rep_uplink_priv to mlx5e_rep_uplink_priv
---
 drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c |  4 +--
 drivers/net/ethernet/mellanox/mlx5/core/en_rep.h   |  9 +++++++
 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c    | 30 +++++-----------------
 3 files changed, 17 insertions(+), 26 deletions(-)

diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c 
b/drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c
index 5568ded97e0b..c3e0967c8e07 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en/tc_ct.c
@@ -99,10 +99,8 @@ struct mlx5_ct_entry {
 {
        struct mlx5_eswitch *esw = priv->mdev->priv.eswitch;
        struct mlx5_rep_uplink_priv *uplink_priv;
-       struct mlx5e_rep_priv *uplink_rpriv;
 
-       uplink_rpriv = mlx5_eswitch_get_uplink_priv(esw, REP_ETH);
-       uplink_priv = &uplink_rpriv->uplink_priv;
+       uplink_priv = mlx5e_rep_uplink_priv(esw);
        return uplink_priv->ct_priv;
 }
 
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_rep.h 
b/drivers/net/ethernet/mellanox/mlx5/core/en_rep.h
index 6a2337900420..5bd2a61770ca 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/en_rep.h
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en_rep.h
@@ -109,6 +109,15 @@ struct mlx5e_rep_priv *mlx5e_rep_to_rep_priv(struct 
mlx5_eswitch_rep *rep)
        return rep->rep_data[REP_ETH].priv;
 }
 
+static inline struct mlx5_rep_uplink_priv *
+mlx5e_rep_uplink_priv(struct mlx5_eswitch *esw)
+{
+       struct mlx5e_rep_priv *priv;
+
+       priv = mlx5_eswitch_get_uplink_priv(esw, REP_ETH);
+       return &priv->uplink_priv;
+}
+
 struct mlx5e_neigh {
        struct net_device *dev;
        union {
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c 
b/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c
index 7ab1b162d317..4c3376b10c6c 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c
@@ -1255,12 +1255,10 @@ static void unready_flow_del(struct mlx5e_tc_flow *flow)
 static void add_unready_flow(struct mlx5e_tc_flow *flow)
 {
        struct mlx5_rep_uplink_priv *uplink_priv;
-       struct mlx5e_rep_priv *rpriv;
        struct mlx5_eswitch *esw;
 
        esw = flow->priv->mdev->priv.eswitch;
-       rpriv = mlx5_eswitch_get_uplink_priv(esw, REP_ETH);
-       uplink_priv = &rpriv->uplink_priv;
+       uplink_priv = mlx5e_rep_uplink_priv(esw);
 
        mutex_lock(&uplink_priv->unready_flows_lock);
        unready_flow_add(flow, &uplink_priv->unready_flows);
@@ -1270,12 +1268,10 @@ static void add_unready_flow(struct mlx5e_tc_flow *flow)
 static void remove_unready_flow(struct mlx5e_tc_flow *flow)
 {
        struct mlx5_rep_uplink_priv *uplink_priv;
-       struct mlx5e_rep_priv *rpriv;
        struct mlx5_eswitch *esw;
 
        esw = flow->priv->mdev->priv.eswitch;
-       rpriv = mlx5_eswitch_get_uplink_priv(esw, REP_ETH);
-       uplink_priv = &rpriv->uplink_priv;
+       uplink_priv = mlx5e_rep_uplink_priv(esw);
 
        mutex_lock(&uplink_priv->unready_flows_lock);
        unready_flow_del(flow);
@@ -1892,7 +1888,6 @@ static int mlx5e_get_flow_tunnel_id(struct mlx5e_priv 
*priv,
        struct flow_match_enc_opts enc_opts_match;
        struct tunnel_match_enc_opts tun_enc_opts;
        struct mlx5_rep_uplink_priv *uplink_priv;
-       struct mlx5e_rep_priv *uplink_rpriv;
        struct tunnel_match_key tunnel_key;
        bool enc_opts_is_dont_care = true;
        u32 tun_id, enc_opts_id = 0;
@@ -1901,8 +1896,7 @@ static int mlx5e_get_flow_tunnel_id(struct mlx5e_priv 
*priv,
        int err;
 
        esw = priv->mdev->priv.eswitch;
-       uplink_rpriv = mlx5_eswitch_get_uplink_priv(esw, REP_ETH);
-       uplink_priv = &uplink_rpriv->uplink_priv;
+       uplink_priv = mlx5e_rep_uplink_priv(esw);
 
        mlx5e_make_tunnel_match_key(f, filter_dev, &tunnel_key);
        err = mapping_add(uplink_priv->tunnel_mapping, &tunnel_key, &tun_id);
@@ -1967,13 +1961,11 @@ static int mlx5e_lookup_flow_tunnel_id(struct 
mlx5e_priv *priv,
                                       u32 *tun_id)
 {
        struct mlx5_rep_uplink_priv *uplink_priv;
-       struct mlx5e_rep_priv *uplink_rpriv;
        struct tunnel_match_key tunnel_key;
        struct mlx5_eswitch *esw;
 
        esw = priv->mdev->priv.eswitch;
-       uplink_rpriv = mlx5_eswitch_get_uplink_priv(esw, REP_ETH);
-       uplink_priv = &uplink_rpriv->uplink_priv;
+       uplink_priv = mlx5e_rep_uplink_priv(esw);
 
        mlx5e_make_tunnel_match_key(f, filter_dev, &tunnel_key);
        return mapping_find_by_data(uplink_priv->tunnel_mapping, &tunnel_key, 
tun_id);
@@ -1984,12 +1976,10 @@ static void mlx5e_put_flow_tunnel_id(struct 
mlx5e_tc_flow *flow)
        u32 enc_opts_id = flow->tunnel_id & ENC_OPTS_BITS_MASK;
        u32 tun_id = flow->tunnel_id >> ENC_OPTS_BITS;
        struct mlx5_rep_uplink_priv *uplink_priv;
-       struct mlx5e_rep_priv *uplink_rpriv;
        struct mlx5_eswitch *esw;
 
        esw = flow->priv->mdev->priv.eswitch;
-       uplink_rpriv = mlx5_eswitch_get_uplink_priv(esw, REP_ETH);
-       uplink_priv = &uplink_rpriv->uplink_priv;
+       uplink_priv = mlx5e_rep_uplink_priv(esw);
 
        if (tun_id)
                mapping_remove(uplink_priv->tunnel_mapping, tun_id);
@@ -4853,7 +4843,6 @@ static bool mlx5e_restore_tunnel(struct mlx5e_priv *priv, 
struct sk_buff *skb,
        struct mlx5_eswitch *esw = priv->mdev->priv.eswitch;
        struct tunnel_match_enc_opts enc_opts = {};
        struct mlx5_rep_uplink_priv *uplink_priv;
-       struct mlx5e_rep_priv *uplink_rpriv;
        struct metadata_dst *tun_dst;
        struct tunnel_match_key key;
        u32 tun_id, enc_opts_id;
@@ -4866,9 +4855,7 @@ static bool mlx5e_restore_tunnel(struct mlx5e_priv *priv, 
struct sk_buff *skb,
        if (!tun_id)
                return true;
 
-       uplink_rpriv = mlx5_eswitch_get_uplink_priv(esw, REP_ETH);
-       uplink_priv = &uplink_rpriv->uplink_priv;
-
+       uplink_priv = mlx5e_rep_uplink_priv(esw);
        err = mapping_find(uplink_priv->tunnel_mapping, tun_id, &key);
        if (err) {
                WARN_ON_ONCE(true);
@@ -4934,7 +4921,6 @@ bool mlx5e_tc_rep_update_skb(struct mlx5_cqe64 *cqe,
 #if IS_ENABLED(CONFIG_NET_TC_SKB_EXT)
        u32 chain = 0, reg_c0, reg_c1, tunnel_id, tuple_id;
        struct mlx5_rep_uplink_priv *uplink_priv;
-       struct mlx5e_rep_priv *uplink_rpriv;
        struct tc_skb_ext *tc_skb_ext;
        struct mlx5_eswitch *esw;
        struct mlx5e_priv *priv;
@@ -4970,9 +4956,7 @@ bool mlx5e_tc_rep_update_skb(struct mlx5_cqe64 *cqe,
                tc_skb_ext->chain = chain;
 
                tuple_id = reg_c1 & TUPLE_ID_MAX;
-
-               uplink_rpriv = mlx5_eswitch_get_uplink_priv(esw, REP_ETH);
-               uplink_priv = &uplink_rpriv->uplink_priv;
+               uplink_priv = mlx5e_rep_uplink_priv(esw);
                if (!mlx5e_tc_ct_restore_flow(uplink_priv, skb, tuple_id))
                        return false;
        }
-- 
1.8.3.1

Reply via email to