]> git.hungrycats.org Git - linux/commitdiff
RDMA/mlx5: Adding remote atomic access flag to updatable flags
authorOr Har-Toov <ohartoov@nvidia.com>
Wed, 3 Apr 2024 10:36:01 +0000 (13:36 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 30 May 2024 07:49:42 +0000 (09:49 +0200)
[ Upstream commit 2ca7e93bc963d9ec2f5c24d117176851454967af ]

Currently IB_ACCESS_REMOTE_ATOMIC is blocked from being updated via UMR
although in some cases it should be possible. These cases are checked in
mlx5r_umr_can_reconfig function.

Fixes: ef3642c4f54d ("RDMA/mlx5: Fix error unwinds for rereg_mr")
Signed-off-by: Or Har-Toov <ohartoov@nvidia.com>
Link: https://lore.kernel.org/r/24dac73e2fa48cb806f33a932d97f3e402a5ea2c.1712140377.git.leon@kernel.org
Signed-off-by: Leon Romanovsky <leon@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/infiniband/hw/mlx5/mr.c

index 7f7b1f59b5f0572dd9945070d4fb2d2b15ae0ffd..ecc111ed5d86eaf70b9ecd49968249a48b665cd9 100644 (file)
@@ -1572,7 +1572,8 @@ static bool can_use_umr_rereg_access(struct mlx5_ib_dev *dev,
        unsigned int diffs = current_access_flags ^ target_access_flags;
 
        if (diffs & ~(IB_ACCESS_LOCAL_WRITE | IB_ACCESS_REMOTE_WRITE |
-                     IB_ACCESS_REMOTE_READ | IB_ACCESS_RELAXED_ORDERING))
+                     IB_ACCESS_REMOTE_READ | IB_ACCESS_RELAXED_ORDERING |
+                     IB_ACCESS_REMOTE_ATOMIC))
                return false;
        return mlx5r_umr_can_reconfig(dev, current_access_flags,
                                      target_access_flags);