aboutsummaryrefslogtreecommitdiffstats
path: root/net/rds/send.c
diff options
context:
space:
mode:
authorAndy Grover <andy.grover@oracle.com>2010-03-29 19:20:18 -0400
committerAndy Grover <andy.grover@oracle.com>2010-09-08 21:12:15 -0400
commita7d3a281483684f77e350b045af7f80a149fc4c7 (patch)
treed15beb494e7d7cf0691adec8ffebe098608c6620 /net/rds/send.c
parent2ad8099b58f274dc23bc866ca259d7e5db87fa1a (diff)
RDS: Call rds_send_xmit() directly from sendmsg()
rds_sendmsg() is calling the send worker function to send the just-queued datagrams, presumably because it wants the behavior where anything not sent will re-call the send worker. We now ensure all queued datagrams are sent by retrying from the send completion handler, so this isn't needed any more. Signed-off-by: Andy Grover <andy.grover@oracle.com>
Diffstat (limited to 'net/rds/send.c')
-rw-r--r--net/rds/send.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/rds/send.c b/net/rds/send.c
index 624a3dc7f060..15b715a85fd5 100644
--- a/net/rds/send.c
+++ b/net/rds/send.c
@@ -1073,7 +1073,7 @@ int rds_sendmsg(struct kiocb *iocb, struct socket *sock, struct msghdr *msg,
1073 rds_stats_inc(s_send_queued); 1073 rds_stats_inc(s_send_queued);
1074 1074
1075 if (!test_bit(RDS_LL_SEND_FULL, &conn->c_flags)) 1075 if (!test_bit(RDS_LL_SEND_FULL, &conn->c_flags))
1076 rds_send_worker(&conn->c_send_w.work); 1076 rds_send_xmit(conn);
1077 1077
1078 rds_message_put(rm); 1078 rds_message_put(rm);
1079 return payload_len; 1079 return payload_len;