diff options
author | Andy Grover <andy.grover@oracle.com> | 2009-02-24 15:30:37 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-02-26 23:39:33 -0800 |
commit | 55b7ed0b582f9ff4bf3b9b44969cddda8c6763ea (patch) | |
tree | d8c1883c1ba00e9b99888757e86368498b622981 /net/rds/rdma_transport.h | |
parent | fcd8b7c0ecf792dd824b2edcd63cb2c08563c340 (diff) | |
download | op-kernel-dev-55b7ed0b582f9ff4bf3b9b44969cddda8c6763ea.zip op-kernel-dev-55b7ed0b582f9ff4bf3b9b44969cddda8c6763ea.tar.gz |
RDS: Common RDMA transport code
Although most of IB and iWARP are separated from each other,
there is some common code required to handle their shared
CM listen port. This code listens for CM events and then
dispatches the event to the appropriate transport, either
IB or iWARP.
Signed-off-by: Andy Grover <andy.grover@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/rds/rdma_transport.h')
-rw-r--r-- | net/rds/rdma_transport.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/net/rds/rdma_transport.h b/net/rds/rdma_transport.h new file mode 100644 index 0000000..2f2c7d9 --- /dev/null +++ b/net/rds/rdma_transport.h @@ -0,0 +1,28 @@ +#ifndef _RDMA_TRANSPORT_H +#define _RDMA_TRANSPORT_H + +#include <rdma/ib_verbs.h> +#include <rdma/rdma_cm.h> +#include "rds.h" + +#define RDS_RDMA_RESOLVE_TIMEOUT_MS 5000 + +int rds_rdma_conn_connect(struct rds_connection *conn); +int rds_rdma_cm_event_handler(struct rdma_cm_id *cm_id, + struct rdma_cm_event *event); + +/* from rdma_transport.c */ +int rds_rdma_init(void); +void rds_rdma_exit(void); + +/* from ib.c */ +extern struct rds_transport rds_ib_transport; +int rds_ib_init(void); +void rds_ib_exit(void); + +/* from iw.c */ +extern struct rds_transport rds_iw_transport; +int rds_iw_init(void); +void rds_iw_exit(void); + +#endif |