From: Santosh Shilimkar Date: Thu, 15 Sep 2016 02:03:30 +0000 (-0700) Subject: RDS: don't modify conn state directly in rds_connect_complete X-Git-Tag: v4.1.12-92~67^2~5 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=e47c44f023ce8c20eec4e8fffe8104571e3b0b28;p=users%2Fjedix%2Flinux-maple.git RDS: don't modify conn state directly in rds_connect_complete Avoid modifying the conn state directly and let the APIs handle it to be consistent across. Orabug: 22347191 Tested-by: Michael Nowak Tested-by: Rafael Alejandro Peralez Tested-by: Liwen Huang Tested-by: Hong Liu Reviewed-by: Mukesh Kacker Signed-off-by: Santosh Shilimkar --- diff --git a/net/rds/threads.c b/net/rds/threads.c index c59be62e9804..04e9127a1dbb 100644 --- a/net/rds/threads.c +++ b/net/rds/threads.c @@ -80,12 +80,10 @@ EXPORT_SYMBOL_GPL(rds_local_wq); void rds_connect_path_complete(struct rds_connection *conn, int curr) { if (!rds_conn_transition(conn, curr, RDS_CONN_UP)) { - printk(KERN_WARNING "%s: Cannot transition to state UP" - ", current state is %d\n", - __func__, - atomic_read(&conn->c_state)); - atomic_set(&conn->c_state, RDS_CONN_ERROR); - queue_work(conn->c_wq, &conn->c_down_w); + pr_warn("RDS: Cannot transition conn <%pI4,%pI4,%d> to state UP, current state is %d\n", + &conn->c_laddr, &conn->c_faddr, conn->c_tos, + atomic_read(&conn->c_state)); + rds_conn_drop(conn, DR_IB_NOT_CONNECTING_STATE); return; }