155b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Grover#ifndef _RDMA_TRANSPORT_H 255b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Grover#define _RDMA_TRANSPORT_H 355b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Grover 455b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Grover#include <rdma/ib_verbs.h> 555b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Grover#include <rdma/rdma_cm.h> 655b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Grover#include "rds.h" 755b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Grover 855b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Grover#define RDS_RDMA_RESOLVE_TIMEOUT_MS 5000 955b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Grover 1055b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Groverint rds_rdma_conn_connect(struct rds_connection *conn); 1155b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Groverint rds_rdma_cm_event_handler(struct rdma_cm_id *cm_id, 1255b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Grover struct rdma_cm_event *event); 1355b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Grover 1455b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Grover/* from ib.c */ 1555b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Groverextern struct rds_transport rds_ib_transport; 1655b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Groverint rds_ib_init(void); 1755b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Grovervoid rds_ib_exit(void); 1855b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Grover 1955b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Grover/* from iw.c */ 2055b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Groverextern struct rds_transport rds_iw_transport; 2155b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Groverint rds_iw_init(void); 2255b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Grovervoid rds_iw_exit(void); 2355b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Grover 2455b7ed0b582f9ff4bf3b9b44969cddda8c6763eaAndy Grover#endif 25