summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--net/rds/send.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/net/rds/send.c b/net/rds/send.c
index 663fd60b40cf..8e3fd9981c2e 100644
--- a/net/rds/send.c
+++ b/net/rds/send.c
@@ -353,15 +353,14 @@ restart:
/*
* Other senders will see we have c_send_lock and exit. We
* need to recheck the send queue and race again for c_send_lock
- * to make sure messages don't just sit on the send queue.
+ * to make sure messages don't just sit on the send queue, if
+ * somebody hasn't already beat us into the loop.
*
* If the transport cannot continue (i.e ret != 0), then it must
* call us when more room is available, such as from the tx
* completion handler.
*/
if (ret == 0) {
- /* A simple bit test would be way faster than taking the
- * spin lock */
smp_mb();
if (!list_empty(&conn->c_send_queue)) {
rds_stats_inc(s_send_lock_queue_raced);