[PATCH 06/14] RDS: check for congestion updates during rds_send_xmit
Ensure we don't keep sending the data if the link is congested. Reviewed-by: Ajaykumar Hotchandani Signed-off-by: Santosh Shilimkar Signed-off-by: Santosh Shilimkar --- net/rds/send.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/rds/send.c b/net/rds/send.c index e9430f5..dbdf907 100644 --- a/net/rds/send.c +++ b/net/rds/send.c @@ -411,7 +411,8 @@ over_batch: */ if (ret == 0) { smp_mb(); - if (!list_empty(>c_send_queue) && + if ((test_bit(0, >c_map_queued) || +!list_empty(>c_send_queue)) && send_gen == conn->c_send_gen) { rds_stats_inc(s_send_lock_queue_raced); goto restart; -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH 06/14] RDS: check for congestion updates during rds_send_xmit
Ensure we don't keep sending the data if the link is congested. Reviewed-by: Ajaykumar Hotchandani ajaykumar.hotchand...@oracle.com Signed-off-by: Santosh Shilimkar ssant...@kernel.org Signed-off-by: Santosh Shilimkar santosh.shilim...@oracle.com --- net/rds/send.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/rds/send.c b/net/rds/send.c index e9430f5..dbdf907 100644 --- a/net/rds/send.c +++ b/net/rds/send.c @@ -411,7 +411,8 @@ over_batch: */ if (ret == 0) { smp_mb(); - if (!list_empty(conn-c_send_queue) + if ((test_bit(0, conn-c_map_queued) || +!list_empty(conn-c_send_queue)) send_gen == conn-c_send_gen) { rds_stats_inc(s_send_lock_queue_raced); goto restart; -- 1.9.1 -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/