]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
RDMA/mana_ib: Access remote atomic for MRs
authorKonstantin Taranov <kotaranov@microsoft.com>
Mon, 14 Apr 2025 09:00:32 +0000 (02:00 -0700)
committerLeon Romanovsky <leon@kernel.org>
Sun, 20 Apr 2025 10:32:35 +0000 (06:32 -0400)
Add IB_ACCESS_REMOTE_ATOMIC to the valid flags for MRs and use
the corresponding flag bit during MR creation in the HW.

Signed-off-by: Konstantin Taranov <kotaranov@microsoft.com>
Link: https://patch.msgid.link/1744621234-26114-2-git-send-email-kotaranov@linux.microsoft.com
Reviewed-by: Long Li <longli@microsoft.com>
Signed-off-by: Leon Romanovsky <leon@kernel.org>
drivers/infiniband/hw/mana/mr.c

index f99557ec77678132e394fc4df63b5e3d450e3160..e4a9f537a6d094023cd74b2f03b3dfce1f493568 100644 (file)
@@ -5,8 +5,8 @@
 
 #include "mana_ib.h"
 
-#define VALID_MR_FLAGS                                                         \
-       (IB_ACCESS_LOCAL_WRITE | IB_ACCESS_REMOTE_WRITE | IB_ACCESS_REMOTE_READ)
+#define VALID_MR_FLAGS (IB_ACCESS_LOCAL_WRITE | IB_ACCESS_REMOTE_WRITE | IB_ACCESS_REMOTE_READ |\
+                       IB_ACCESS_REMOTE_ATOMIC)
 
 #define VALID_DMA_MR_FLAGS (IB_ACCESS_LOCAL_WRITE)
 
@@ -24,6 +24,9 @@ mana_ib_verbs_to_gdma_access_flags(int access_flags)
        if (access_flags & IB_ACCESS_REMOTE_READ)
                flags |= GDMA_ACCESS_FLAG_REMOTE_READ;
 
+       if (access_flags & IB_ACCESS_REMOTE_ATOMIC)
+               flags |= GDMA_ACCESS_FLAG_REMOTE_ATOMIC;
+
        return flags;
 }