1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _RDMA_TRANSPORT_H
3 #define _RDMA_TRANSPORT_H
5 #include <rdma/ib_verbs.h>
6 #include <rdma/rdma_cm.h>
9 /* RDMA_CM also uses 16385 as the listener port. */
10 #define RDS_CM_PORT 16385
12 #define RDS_RDMA_RESOLVE_TIMEOUT_MS 5000
14 /* Below reject reason is for legacy interoperability issue with non-linux
15 * RDS endpoints where older version incompatibility is conveyed via value 1.
16 * For future version(s), proper encoded reject reason should be used.
18 #define RDS_RDMA_REJ_INCOMPAT 1
20 int rds_rdma_conn_connect(struct rds_connection *conn);
21 int rds_rdma_cm_event_handler(struct rdma_cm_id *cm_id,
22 struct rdma_cm_event *event);
23 int rds6_rdma_cm_event_handler(struct rdma_cm_id *cm_id,
24 struct rdma_cm_event *event);
27 extern struct rds_transport rds_ib_transport;
28 int rds_ib_init(void);
29 void rds_ib_exit(void);