]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
RDMA/rxe: Move some code to rxe_loc.h in preparation for ODP
authorDaisuke Matsuda <matsuda-daisuke@fujitsu.com>
Fri, 20 Dec 2024 10:09:32 +0000 (19:09 +0900)
committerJason Gunthorpe <jgg@nvidia.com>
Fri, 21 Feb 2025 17:07:43 +0000 (13:07 -0400)
rxe_mr_init() and resp_states are going to be used in rxe_odp.c, which is
to be created in the subsequent patch.

Link: https://patch.msgid.link/r/20241220100936.2193541-2-matsuda-daisuke@fujitsu.com
Signed-off-by: Daisuke Matsuda <matsuda-daisuke@fujitsu.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/infiniband/sw/rxe/rxe.h
drivers/infiniband/sw/rxe/rxe_loc.h
drivers/infiniband/sw/rxe/rxe_mr.c
drivers/infiniband/sw/rxe/rxe_verbs.h

index 8db65731499d0699cbc8af37be2d416d3cda255a..ff8cd53f5f28f4593c337bffafc015de846e6b82 100644 (file)
 #define rxe_info_mw(mw, fmt, ...) ibdev_info_ratelimited((mw)->ibmw.device, \
                "mw#%d %s:  " fmt, (mw)->elem.index, __func__, ##__VA_ARGS__)
 
-/* responder states */
-enum resp_states {
-       RESPST_NONE,
-       RESPST_GET_REQ,
-       RESPST_CHK_PSN,
-       RESPST_CHK_OP_SEQ,
-       RESPST_CHK_OP_VALID,
-       RESPST_CHK_RESOURCE,
-       RESPST_CHK_LENGTH,
-       RESPST_CHK_RKEY,
-       RESPST_EXECUTE,
-       RESPST_READ_REPLY,
-       RESPST_ATOMIC_REPLY,
-       RESPST_ATOMIC_WRITE_REPLY,
-       RESPST_PROCESS_FLUSH,
-       RESPST_COMPLETE,
-       RESPST_ACKNOWLEDGE,
-       RESPST_CLEANUP,
-       RESPST_DUPLICATE_REQUEST,
-       RESPST_ERR_MALFORMED_WQE,
-       RESPST_ERR_UNSUPPORTED_OPCODE,
-       RESPST_ERR_MISALIGNED_ATOMIC,
-       RESPST_ERR_PSN_OUT_OF_SEQ,
-       RESPST_ERR_MISSING_OPCODE_FIRST,
-       RESPST_ERR_MISSING_OPCODE_LAST_C,
-       RESPST_ERR_MISSING_OPCODE_LAST_D1E,
-       RESPST_ERR_TOO_MANY_RDMA_ATM_REQ,
-       RESPST_ERR_RNR,
-       RESPST_ERR_RKEY_VIOLATION,
-       RESPST_ERR_INVALIDATE_RKEY,
-       RESPST_ERR_LENGTH,
-       RESPST_ERR_CQ_OVERFLOW,
-       RESPST_ERROR,
-       RESPST_DONE,
-       RESPST_EXIT,
-};
-
 void rxe_set_mtu(struct rxe_dev *rxe, unsigned int dev_mtu);
 
 int rxe_add(struct rxe_dev *rxe, unsigned int mtu, const char *ibdev_name,
index c57ab8975c5d153bb1daeaad60cee02c8e6adb5f..738d3bca8d4f10486e7ced7dda98ee80085c02cc 100644 (file)
@@ -58,6 +58,7 @@ int rxe_mmap(struct ib_ucontext *context, struct vm_area_struct *vma);
 
 /* rxe_mr.c */
 u8 rxe_get_next_key(u32 last_key);
+void rxe_mr_init(int access, struct rxe_mr *mr);
 void rxe_mr_init_dma(int access, struct rxe_mr *mr);
 int rxe_mr_init_user(struct rxe_dev *rxe, u64 start, u64 length,
                     int access, struct rxe_mr *mr);
index da3dee520876a3ab392637416524bf2c68450421..12cacc4f60f20845f2e68cb608d9cd84d05ee6fe 100644 (file)
@@ -45,7 +45,7 @@ int mr_check_range(struct rxe_mr *mr, u64 iova, size_t length)
        }
 }
 
-static void rxe_mr_init(int access, struct rxe_mr *mr)
+void rxe_mr_init(int access, struct rxe_mr *mr)
 {
        u32 key = mr->elem.index << 8 | rxe_get_next_key(-1);
 
index 3d0faab9a8f7f198571dddba842c33fe69c7646c..fd48075810dd1074d8e6915d156d70b724321568 100644 (file)
@@ -126,6 +126,43 @@ struct rxe_comp_info {
        u32                     rnr_retry;
 };
 
+/* responder states */
+enum resp_states {
+       RESPST_NONE,
+       RESPST_GET_REQ,
+       RESPST_CHK_PSN,
+       RESPST_CHK_OP_SEQ,
+       RESPST_CHK_OP_VALID,
+       RESPST_CHK_RESOURCE,
+       RESPST_CHK_LENGTH,
+       RESPST_CHK_RKEY,
+       RESPST_EXECUTE,
+       RESPST_READ_REPLY,
+       RESPST_ATOMIC_REPLY,
+       RESPST_ATOMIC_WRITE_REPLY,
+       RESPST_PROCESS_FLUSH,
+       RESPST_COMPLETE,
+       RESPST_ACKNOWLEDGE,
+       RESPST_CLEANUP,
+       RESPST_DUPLICATE_REQUEST,
+       RESPST_ERR_MALFORMED_WQE,
+       RESPST_ERR_UNSUPPORTED_OPCODE,
+       RESPST_ERR_MISALIGNED_ATOMIC,
+       RESPST_ERR_PSN_OUT_OF_SEQ,
+       RESPST_ERR_MISSING_OPCODE_FIRST,
+       RESPST_ERR_MISSING_OPCODE_LAST_C,
+       RESPST_ERR_MISSING_OPCODE_LAST_D1E,
+       RESPST_ERR_TOO_MANY_RDMA_ATM_REQ,
+       RESPST_ERR_RNR,
+       RESPST_ERR_RKEY_VIOLATION,
+       RESPST_ERR_INVALIDATE_RKEY,
+       RESPST_ERR_LENGTH,
+       RESPST_ERR_CQ_OVERFLOW,
+       RESPST_ERROR,
+       RESPST_DONE,
+       RESPST_EXIT,
+};
+
 enum rdatm_res_state {
        rdatm_res_state_next,
        rdatm_res_state_new,