]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
RDMA/rxe: Fix mismatched type declarations
authorDaisuke Matsuda <matsuda-daisuke@fujitsu.com>
Wed, 9 Apr 2025 10:27:01 +0000 (19:27 +0900)
committerLeon Romanovsky <leon@kernel.org>
Fri, 11 Apr 2025 17:45:07 +0000 (13:45 -0400)
Some functions return int values while they are defined as enum resp_states
variables. This patch resolves the mismatches in rxe.

Signed-off-by: Daisuke Matsuda <matsuda-daisuke@fujitsu.com>
Link: https://patch.msgid.link/20250409102701.1275265-1-matsuda-daisuke@fujitsu.com
Reviewed-by: Zhu Yanjun <yanjun.zhu@linux.dev>
Signed-off-by: Leon Romanovsky <leon@kernel.org>
drivers/infiniband/sw/rxe/rxe_loc.h
drivers/infiniband/sw/rxe/rxe_mr.c
drivers/infiniband/sw/rxe/rxe_odp.c

index 6389d829b06a5387828ef7519b431a26c73b91b3..30fa83c9c84649aabbb3d867ba8f52bd021d4b09 100644 (file)
@@ -70,9 +70,9 @@ int copy_data(struct rxe_pd *pd, int access, struct rxe_dma_info *dma,
              void *addr, int length, enum rxe_mr_copy_dir dir);
 int rxe_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg,
                  int sg_nents, unsigned int *sg_offset);
-int rxe_mr_do_atomic_op(struct rxe_mr *mr, u64 iova, int opcode,
-                       u64 compare, u64 swap_add, u64 *orig_val);
-int rxe_mr_do_atomic_write(struct rxe_mr *mr, u64 iova, u64 value);
+enum resp_states rxe_mr_do_atomic_op(struct rxe_mr *mr, u64 iova, int opcode,
+                                    u64 compare, u64 swap_add, u64 *orig_val);
+enum resp_states rxe_mr_do_atomic_write(struct rxe_mr *mr, u64 iova, u64 value);
 struct rxe_mr *lookup_mr(struct rxe_pd *pd, int access, u32 key,
                         enum rxe_mr_lookup_type type);
 int mr_check_range(struct rxe_mr *mr, u64 iova, size_t length);
@@ -192,8 +192,8 @@ int rxe_odp_mr_init_user(struct rxe_dev *rxe, u64 start, u64 length,
                         u64 iova, int access_flags, struct rxe_mr *mr);
 int rxe_odp_mr_copy(struct rxe_mr *mr, u64 iova, void *addr, int length,
                    enum rxe_mr_copy_dir dir);
-int rxe_odp_atomic_op(struct rxe_mr *mr, u64 iova, int opcode,
-                        u64 compare, u64 swap_add, u64 *orig_val);
+enum resp_states rxe_odp_atomic_op(struct rxe_mr *mr, u64 iova, int opcode,
+                                  u64 compare, u64 swap_add, u64 *orig_val);
 int rxe_odp_flush_pmem_iova(struct rxe_mr *mr, u64 iova,
                            unsigned int length);
 #else /* CONFIG_INFINIBAND_ON_DEMAND_PAGING */
@@ -208,9 +208,9 @@ static inline int rxe_odp_mr_copy(struct rxe_mr *mr, u64 iova, void *addr,
 {
        return -EOPNOTSUPP;
 }
-static inline int
+static inline enum resp_states
 rxe_odp_atomic_op(struct rxe_mr *mr, u64 iova, int opcode,
-                    u64 compare, u64 swap_add, u64 *orig_val)
+                 u64 compare, u64 swap_add, u64 *orig_val)
 {
        return RESPST_ERR_UNSUPPORTED_OPCODE;
 }
index d40fbe10633f327c12696502c7b1cbca74fdf846..1a74013a14abcf1ce72ef746aa35f8a95057476c 100644 (file)
@@ -483,8 +483,8 @@ int rxe_flush_pmem_iova(struct rxe_mr *mr, u64 start, unsigned int length)
 /* Guarantee atomicity of atomic operations at the machine level. */
 DEFINE_SPINLOCK(atomic_ops_lock);
 
-int rxe_mr_do_atomic_op(struct rxe_mr *mr, u64 iova, int opcode,
-                       u64 compare, u64 swap_add, u64 *orig_val)
+enum resp_states rxe_mr_do_atomic_op(struct rxe_mr *mr, u64 iova, int opcode,
+                                    u64 compare, u64 swap_add, u64 *orig_val)
 {
        unsigned int page_offset;
        struct page *page;
@@ -536,12 +536,12 @@ int rxe_mr_do_atomic_op(struct rxe_mr *mr, u64 iova, int opcode,
 
        kunmap_local(va);
 
-       return 0;
+       return RESPST_NONE;
 }
 
 #if defined CONFIG_64BIT
 /* only implemented or called for 64 bit architectures */
-int rxe_mr_do_atomic_write(struct rxe_mr *mr, u64 iova, u64 value)
+enum resp_states rxe_mr_do_atomic_write(struct rxe_mr *mr, u64 iova, u64 value)
 {
        unsigned int page_offset;
        struct page *page;
@@ -578,10 +578,10 @@ int rxe_mr_do_atomic_write(struct rxe_mr *mr, u64 iova, u64 value)
        smp_store_release(&va[page_offset >> 3], value);
        kunmap_local(va);
 
-       return 0;
+       return RESPST_NONE;
 }
 #else
-int rxe_mr_do_atomic_write(struct rxe_mr *mr, u64 iova, u64 value)
+enum resp_states rxe_mr_do_atomic_write(struct rxe_mr *mr, u64 iova, u64 value)
 {
        return RESPST_ERR_UNSUPPORTED_OPCODE;
 }
index 02de05d759c61fb95e14d72f53bd7221d24444d2..fa5e8f5017ccbb946636658ed95679c27c1c8a4e 100644 (file)
@@ -266,8 +266,9 @@ int rxe_odp_mr_copy(struct rxe_mr *mr, u64 iova, void *addr, int length,
        return err;
 }
 
-static int rxe_odp_do_atomic_op(struct rxe_mr *mr, u64 iova, int opcode,
-                               u64 compare, u64 swap_add, u64 *orig_val)
+static enum resp_states rxe_odp_do_atomic_op(struct rxe_mr *mr, u64 iova,
+                                            int opcode, u64 compare,
+                                            u64 swap_add, u64 *orig_val)
 {
        struct ib_umem_odp *umem_odp = to_ib_umem_odp(mr->umem);
        unsigned int page_offset;
@@ -315,11 +316,11 @@ static int rxe_odp_do_atomic_op(struct rxe_mr *mr, u64 iova, int opcode,
 
        kunmap_local(va);
 
-       return 0;
+       return RESPST_NONE;
 }
 
-int rxe_odp_atomic_op(struct rxe_mr *mr, u64 iova, int opcode,
-                        u64 compare, u64 swap_add, u64 *orig_val)
+enum resp_states rxe_odp_atomic_op(struct rxe_mr *mr, u64 iova, int opcode,
+                                  u64 compare, u64 swap_add, u64 *orig_val)
 {
        struct ib_umem_odp *umem_odp = to_ib_umem_odp(mr->umem);
        int err;