summaryrefslogtreecommitdiff
path: root/net/rds/cong.c
diff options
context:
space:
mode:
authorAndy Grover <andy.grover@oracle.com>2009-10-30 08:51:56 (GMT)
committerDavid S. Miller <davem@davemloft.net>2009-10-30 22:06:39 (GMT)
commit0514f8a9c0cbd26afa70dc56406cc0ee1e134dcf (patch)
tree24b34f38a3e9c1f5903a9556b9ac0086f2f7a93c /net/rds/cong.c
parent433d308dd85e506bb6529177cc0f997627d87ed6 (diff)
downloadlinux-0514f8a9c0cbd26afa70dc56406cc0ee1e134dcf.tar.xz
RDS: Do not send congestion updates to loopback connections
This issue was discovered by HP's Pradeep and fixed in OFED 1.3, but not fixed in later versions, since the fix's implementation was not immediately applyable to the later code. This patch should do the trick for 1.4+ codebases. Signed-off-by: Andy Grover <andy.grover@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/rds/cong.c')
-rw-r--r--net/rds/cong.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/net/rds/cong.c b/net/rds/cong.c
index dd2711d..6d06cac 100644
--- a/net/rds/cong.c
+++ b/net/rds/cong.c
@@ -218,6 +218,8 @@ void rds_cong_queue_updates(struct rds_cong_map *map)
spin_lock_irqsave(&rds_cong_lock, flags);
list_for_each_entry(conn, &map->m_conn_list, c_map_item) {
+ if (conn->c_loopback)
+ continue;
if (!test_and_set_bit(0, &conn->c_map_queued)) {
rds_stats_inc(s_cong_update_queued);
queue_delayed_work(rds_wq, &conn->c_send_w, 0);