diff options
author | Andy Grover <andy.grover@oracle.com> | 2009-08-21 08:28:31 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-08-23 22:13:02 -0400 |
commit | 70041088e3b976627ba9a183b812f39ef8a9ba0e (patch) | |
tree | bad7b11763d7b02b185bd705fe5ed292397cbc7a /include/linux/rds.h | |
parent | 7d6fd5e7e97a2188d56441e4e96494c21c5994a7 (diff) |
RDS: Add TCP transport to RDS
This code allows RDS to be tunneled over a TCP connection.
RDMA operations are disabled when using TCP transport,
but this frees RDS from the IB/RDMA stack dependency, and allows
it to be used with standard Ethernet adapters, or in a VM.
Signed-off-by: Andy Grover <andy.grover@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/rds.h')
-rw-r--r-- | include/linux/rds.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/include/linux/rds.h b/include/linux/rds.h index d91dc91f5443..89d46e1afbb1 100644 --- a/include/linux/rds.h +++ b/include/linux/rds.h | |||
@@ -147,6 +147,18 @@ struct rds_info_socket { | |||
147 | u_int64_t inum; | 147 | u_int64_t inum; |
148 | } __attribute__((packed)); | 148 | } __attribute__((packed)); |
149 | 149 | ||
150 | struct rds_info_tcp_socket { | ||
151 | __be32 local_addr; | ||
152 | __be16 local_port; | ||
153 | __be32 peer_addr; | ||
154 | __be16 peer_port; | ||
155 | u_int64_t hdr_rem; | ||
156 | u_int64_t data_rem; | ||
157 | u_int32_t last_sent_nxt; | ||
158 | u_int32_t last_expected_una; | ||
159 | u_int32_t last_seen_una; | ||
160 | } __attribute__((packed)); | ||
161 | |||
150 | #define RDS_IB_GID_LEN 16 | 162 | #define RDS_IB_GID_LEN 16 |
151 | struct rds_info_rdma_connection { | 163 | struct rds_info_rdma_connection { |
152 | __be32 src_addr; | 164 | __be32 src_addr; |