X-Git-Url: http://nv-tegra.nvidia.com/gitweb/?p=linux-2.6.git;a=blobdiff_plain;f=net%2Frds%2Fconnection.c;h=87df15b9f8e4b1072120f252520371f5e8c66146;hp=9c249f394f29f03a08a00fa376f8943aed98e229;hb=abf454398c2ebafc629ebb8b149f5a752c79e919;hpb=c9e65383a20d9a656db70efbf67e57f8115ad776 diff --git a/net/rds/connection.c b/net/rds/connection.c index 9c249f3..87df15b 100644 --- a/net/rds/connection.c +++ b/net/rds/connection.c @@ -321,7 +321,10 @@ void rds_conn_destroy(struct rds_connection *conn) "%pI4\n", conn, &conn->c_laddr, &conn->c_faddr); + /* Ensure conn will not be scheduled for reconnect */ + spin_lock_irq(&rds_conn_lock); hlist_del_init(&conn->c_hash_node); + spin_unlock_irq(&rds_conn_lock); /* wait for the rds thread to shut it down */ atomic_set(&conn->c_state, RDS_CONN_ERROR);