]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
RDS: Make sure we do a signaled send at least once per large send
authorChris Mason <chris.mason@oracle.com>
Fri, 3 Feb 2012 16:08:50 +0000 (11:08 -0500)
committerMukesh Kacker <mukesh.kacker@oracle.com>
Tue, 7 Jul 2015 23:41:31 +0000 (16:41 -0700)
Signed-off-by: Chris Mason <chris.mason@oracle.com>
Signed-off-by: Bang Nguyen <bang.nguyen@oracle.com>
net/rds/ib_send.c

index e36720d736bcf21c3984362256e25a98343571bb..b7f55c556d8c15d0630eb55b844d40c68d3efcb0 100644 (file)
@@ -695,6 +695,11 @@ int rds_ib_xmit(struct rds_connection *conn, struct rds_message *rm,
        if (scat == &rm->data.op_sg[rm->data.op_count]) {
                prev->s_op = ic->i_data_op;
                prev->s_wr.send_flags |= IB_SEND_SOLICITED;
+               if (!(prev->s_wr.send_flags & IB_SEND_SIGNALED)) {
+                       ic->i_unsignaled_wrs = rds_ib_sysctl_max_unsig_wrs;
+                       prev->s_wr.send_flags |= IB_SEND_SIGNALED;
+                       nr_sig++;
+               }
                ic->i_data_op = NULL;
        }