[rds-commits] zab commits r123 - trunk/linux/net/rds
svn-commits@oss.oracle.com
svn-commits at oss.oracle.com
Mon Jul 3 19:17:27 CDT 2006
Author: zab
Date: 2006-07-03 19:17:26 -0500 (Mon, 03 Jul 2006)
New Revision: 123
Modified:
trunk/linux/net/rds/ib_send.c
trunk/linux/net/rds/recv.c
Log:
Set the IB_SEND_SIGNALED flag so we get send completion events.
And update some debugging output.
Modified: trunk/linux/net/rds/ib_send.c
===================================================================
--- trunk/linux/net/rds/ib_send.c 2006-07-03 23:18:08 UTC (rev 122)
+++ trunk/linux/net/rds/ib_send.c 2006-07-04 00:17:26 UTC (rev 123)
@@ -85,7 +85,7 @@
ih->ih_wr.sg_list = &ih->ih_sge;
ih->ih_wr.num_sge = 1;
ih->ih_wr.opcode = IB_WR_SEND;
- ih->ih_wr.send_flags = 0; /* XXX what could these be? */
+ ih->ih_wr.send_flags = IB_SEND_SIGNALED;
ih->ih_wr.imm_data = 0;
/*
@@ -96,6 +96,7 @@
* is too high.
*/
ret = ib_post_send(ic->i_cm_id->qp, &ih->ih_wr, &failed_wr);
+ rdsdebug("ic %p ih %p ret %d wr %p\n", ic, ih, ret, failed_wr);
if (ret == 0)
ret = sizeof(struct rds_header);
/* XXX disconnect and reconnect on error? */
@@ -194,7 +195,7 @@
wr->sg_list = sge;
wr->num_sge = 1;
wr->opcode = IB_WR_SEND;
- wr->send_flags = 0;
+ wr->send_flags = IB_SEND_SIGNALED;
wr->imm_data = 0;
}
out:
Modified: trunk/linux/net/rds/recv.c
===================================================================
--- trunk/linux/net/rds/recv.c 2006-07-03 23:18:08 UTC (rev 122)
+++ trunk/linux/net/rds/recv.c 2006-07-04 00:17:26 UTC (rev 123)
@@ -83,6 +83,15 @@
inc->i_conn = conn;
+ rdsdebug("conn %p next %llu inc %p seq %llu len %u sport %u dport %u "
+ "flags 0x%x\n", conn, (unsigned long long)conn->c_next_rx_seq,
+ inc,
+ (unsigned long long)be64_to_cpu(inc->i_hdr.h_sequence),
+ be32_to_cpu(inc->i_hdr.h_len),
+ be16_to_cpu(inc->i_hdr.h_sport),
+ be16_to_cpu(inc->i_hdr.h_dport),
+ inc->i_hdr.h_flags);
+
if (inc->i_hdr.h_flags & RDS_HEAD_FLAG_ACK) {
rds_ack_recv(conn, inc);
goto out;
@@ -108,8 +117,6 @@
* XXX we could spend more on the wire to get more robust failure
* detection, arguably worth it to avoid data corruption.
*/
- rdsdebug("inc %p seq %llu next %llu\n", inc,
- be64_to_cpu(inc->i_hdr.h_sequence), conn->c_next_rx_seq);
if (be64_to_cpu(inc->i_hdr.h_sequence) < conn->c_next_rx_seq) {
ack = 1;
rds_stats_inc(s_recv_drop_old_seq);
More information about the rds-commits
mailing list