rdma_transport.h 916 B

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