]> www.infradead.org Git - users/hch/misc.git/commitdiff
net/mlx5: Remove unused 'offset' field from mlx5_sq_bfreg
authorCosmin Ratiu <cratiu@nvidia.com>
Tue, 16 Sep 2025 14:11:36 +0000 (17:11 +0300)
committerJakub Kicinski <kuba@kernel.org>
Thu, 18 Sep 2025 01:30:25 +0000 (18:30 -0700)
The 'offset' field was introduced in the original commit [1] and never
used until commit [2], which added an unnecessary use.

Remove the field and refactor the write-combining test to use a local
variable instead.

[1] commit a6d51b68611e ("net/mlx5: Introduce blue flame register
allocator")
[2] commit d98995b4bf98 ("net/mlx5: Reimplement write combining test")
Signed-off-by: Cosmin Ratiu <cratiu@nvidia.com>
Reviewed-by: Dragos Tatulea <dtatulea@nvidia.com>
Signed-off-by: Tariq Toukan <tariqt@nvidia.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/mellanox/mlx5/core/wc.c
include/linux/mlx5/driver.h

index 2f0316616fa40b3a13fdf9d3d5817d99df454c79..276594586404de30ecc6f3f0e37f69c52795d4b0 100644 (file)
@@ -255,7 +255,8 @@ static void mlx5_wc_destroy_sq(struct mlx5_wc_sq *sq)
        mlx5_wq_destroy(&sq->wq_ctrl);
 }
 
-static void mlx5_wc_post_nop(struct mlx5_wc_sq *sq, bool signaled)
+static void mlx5_wc_post_nop(struct mlx5_wc_sq *sq, unsigned int *offset,
+                            bool signaled)
 {
        int buf_size = (1 << MLX5_CAP_GEN(sq->cq.mdev, log_bf_reg_size)) / 2;
        struct mlx5_wqe_ctrl_seg *ctrl;
@@ -288,10 +289,10 @@ static void mlx5_wc_post_nop(struct mlx5_wc_sq *sq, bool signaled)
         */
        wmb();
 
-       __iowrite64_copy(sq->bfreg.map + sq->bfreg.offset, mmio_wqe,
+       __iowrite64_copy(sq->bfreg.map + *offset, mmio_wqe,
                         sizeof(mmio_wqe) / 8);
 
-       sq->bfreg.offset ^= buf_size;
+       *offset ^= buf_size;
 }
 
 static int mlx5_wc_poll_cq(struct mlx5_wc_sq *sq)
@@ -332,6 +333,7 @@ static int mlx5_wc_poll_cq(struct mlx5_wc_sq *sq)
 
 static void mlx5_core_test_wc(struct mlx5_core_dev *mdev)
 {
+       unsigned int offset = 0;
        unsigned long expires;
        struct mlx5_wc_sq *sq;
        int i, err;
@@ -358,9 +360,9 @@ static void mlx5_core_test_wc(struct mlx5_core_dev *mdev)
                goto err_create_sq;
 
        for (i = 0; i < TEST_WC_NUM_WQES - 1; i++)
-               mlx5_wc_post_nop(sq, false);
+               mlx5_wc_post_nop(sq, &offset, false);
 
-       mlx5_wc_post_nop(sq, true);
+       mlx5_wc_post_nop(sq, &offset, true);
 
        expires = jiffies + TEST_WC_POLLING_MAX_TIME_JIFFIES;
        do {
index fcfc18bfeba9fd9e00b3f78a50c1f1f9d8cf02f3..5a85b6d91ba3373d4f422274e187c6ec088e8c25 100644 (file)
@@ -434,7 +434,6 @@ struct mlx5_sq_bfreg {
        struct mlx5_uars_page  *up;
        bool                    wc;
        u32                     index;
-       unsigned int            offset;
 };
 
 struct mlx5_core_health {