aboutsummaryrefslogtreecommitdiffstats
path: root/net/rds
diff options
context:
space:
mode:
Diffstat (limited to 'net/rds')
-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:
353 /* 353 /*
354 * Other senders will see we have c_send_lock and exit. We 354 * Other senders will see we have c_send_lock and exit. We
355 * need to recheck the send queue and race again for c_send_lock 355 * need to recheck the send queue and race again for c_send_lock
356 * to make sure messages don't just sit on the send queue. 356 * to make sure messages don't just sit on the send queue, if
357 * somebody hasn't already beat us into the loop.
357 * 358 *
358 * If the transport cannot continue (i.e ret != 0), then it must 359 * If the transport cannot continue (i.e ret != 0), then it must
359 * call us when more room is available, such as from the tx 360 * call us when more room is available, such as from the tx
360 * completion handler. 361 * completion handler.
361 */ 362 */
362 if (ret == 0) { 363 if (ret == 0) {
363 /* A simple bit test would be way faster than taking the
364 * spin lock */
365 smp_mb(); 364 smp_mb();
366 if (!list_empty(&conn->c_send_queue)) { 365 if (!list_empty(&conn->c_send_queue)) {
367 rds_stats_inc(s_send_lock_queue_raced); 366 rds_stats_inc(s_send_lock_queue_raced);