]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
net/mlx5: Remove unused mlx5dr_domain_sync
authorDr. David Alan Gilbert <linux@treblig.org>
Mon, 3 Feb 2025 18:59:58 +0000 (18:59 +0000)
committerJakub Kicinski <kuba@kernel.org>
Tue, 4 Feb 2025 22:05:29 +0000 (14:05 -0800)
mlx5dr_domain_sync() was added in 2019 by
commit 70605ea545e8 ("net/mlx5: DR, Expose APIs for direct rule managing")
but hasn't been used.

Remove it.

mlx5dr_domain_sync() was the only user of
mlx5dr_send_ring_force_drain().
Remove it.

Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org>
Reviewed-by: Tariq Toukan <tariqt@nvidia.com>
Reviewed-by: Kalesh AP <kalesh-anakkur.purayil@broadcom.com>
Link: https://patch.msgid.link/20250203185958.204794-1-linux@treblig.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/mellanox/mlx5/core/steering/sws/dr_domain.c
drivers/net/ethernet/mellanox/mlx5/core/steering/sws/dr_send.c
drivers/net/ethernet/mellanox/mlx5/core/steering/sws/dr_types.h
drivers/net/ethernet/mellanox/mlx5/core/steering/sws/mlx5dr.h

index 60cb4527588a5340a5b4dbbd88fd7de69653802e..65740bb68b09b5772788b8592c2df7fd5fd62e34 100644 (file)
@@ -516,30 +516,6 @@ def_xa_destroy:
        return NULL;
 }
 
-/* Assure synchronization of the device steering tables with updates made by SW
- * insertion.
- */
-int mlx5dr_domain_sync(struct mlx5dr_domain *dmn, u32 flags)
-{
-       int ret = 0;
-
-       if (flags & MLX5DR_DOMAIN_SYNC_FLAGS_SW) {
-               mlx5dr_domain_lock(dmn);
-               ret = mlx5dr_send_ring_force_drain(dmn);
-               mlx5dr_domain_unlock(dmn);
-               if (ret) {
-                       mlx5dr_err(dmn, "Force drain failed flags: %d, ret: %d\n",
-                                  flags, ret);
-                       return ret;
-               }
-       }
-
-       if (flags & MLX5DR_DOMAIN_SYNC_FLAGS_HW)
-               ret = mlx5dr_cmd_sync_steering(dmn->mdev);
-
-       return ret;
-}
-
 int mlx5dr_domain_destroy(struct mlx5dr_domain *dmn)
 {
        if (WARN_ON_ONCE(refcount_read(&dmn->refcount) > 1))
index f57c84e5128bc710f04d6e21b0462916a4b2fda2..4fd4e8483382cc80579d19f599153d3f0b1040bb 100644 (file)
@@ -1331,36 +1331,3 @@ void mlx5dr_send_ring_free(struct mlx5dr_domain *dmn,
        kfree(send_ring->sync_buff);
        kfree(send_ring);
 }
-
-int mlx5dr_send_ring_force_drain(struct mlx5dr_domain *dmn)
-{
-       struct mlx5dr_send_ring *send_ring = dmn->send_ring;
-       struct postsend_info send_info = {};
-       u8 data[DR_STE_SIZE];
-       int num_of_sends_req;
-       int ret;
-       int i;
-
-       /* Sending this amount of requests makes sure we will get drain */
-       num_of_sends_req = send_ring->signal_th * TH_NUMS_TO_DRAIN / 2;
-
-       /* Send fake requests forcing the last to be signaled */
-       send_info.write.addr = (uintptr_t)data;
-       send_info.write.length = DR_STE_SIZE;
-       send_info.write.lkey = 0;
-       /* Using the sync_mr in order to write/read */
-       send_info.remote_addr = (uintptr_t)send_ring->sync_mr->addr;
-       send_info.rkey = send_ring->sync_mr->mkey;
-
-       for (i = 0; i < num_of_sends_req; i++) {
-               ret = dr_postsend_icm_data(dmn, &send_info);
-               if (ret)
-                       return ret;
-       }
-
-       spin_lock(&send_ring->lock);
-       ret = dr_handle_pending_wc(dmn, send_ring);
-       spin_unlock(&send_ring->lock);
-
-       return ret;
-}
index 7618c6147f8665c28d2b0b17735df721565371ae..cc328292bf84a74333579d73462d45e02365e288 100644 (file)
@@ -1473,7 +1473,6 @@ struct mlx5dr_send_ring {
 int mlx5dr_send_ring_alloc(struct mlx5dr_domain *dmn);
 void mlx5dr_send_ring_free(struct mlx5dr_domain *dmn,
                           struct mlx5dr_send_ring *send_ring);
-int mlx5dr_send_ring_force_drain(struct mlx5dr_domain *dmn);
 int mlx5dr_send_postsend_ste(struct mlx5dr_domain *dmn,
                             struct mlx5dr_ste *ste,
                             u8 *data,
index 0bb3724c10c26ca08534da12c72e5fba0f6acbfc..fc8a2169d1a13284d5640a6245bdc0308357a238 100644 (file)
@@ -45,8 +45,6 @@ mlx5dr_domain_create(struct mlx5_core_dev *mdev, enum mlx5dr_domain_type type);
 
 int mlx5dr_domain_destroy(struct mlx5dr_domain *domain);
 
-int mlx5dr_domain_sync(struct mlx5dr_domain *domain, u32 flags);
-
 void mlx5dr_domain_set_peer(struct mlx5dr_domain *dmn,
                            struct mlx5dr_domain *peer_dmn,
                            u16 peer_vhca_id);