aboutsummaryrefslogtreecommitdiffstats
path: root/net/tipc/socket.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/tipc/socket.c')
-rw-r--r--net/tipc/socket.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/net/tipc/socket.c b/net/tipc/socket.c
index 101e3597338f..d50edd6e0019 100644
--- a/net/tipc/socket.c
+++ b/net/tipc/socket.c
@@ -2255,8 +2255,8 @@ void tipc_sk_reinit(struct net *net)
2255 2255
2256 do { 2256 do {
2257 tsk = ERR_PTR(rhashtable_walk_start(&iter)); 2257 tsk = ERR_PTR(rhashtable_walk_start(&iter));
2258 if (tsk) 2258 if (IS_ERR(tsk))
2259 continue; 2259 goto walk_stop;
2260 2260
2261 while ((tsk = rhashtable_walk_next(&iter)) && !IS_ERR(tsk)) { 2261 while ((tsk = rhashtable_walk_next(&iter)) && !IS_ERR(tsk)) {
2262 spin_lock_bh(&tsk->sk.sk_lock.slock); 2262 spin_lock_bh(&tsk->sk.sk_lock.slock);
@@ -2265,7 +2265,7 @@ void tipc_sk_reinit(struct net *net)
2265 msg_set_orignode(msg, tn->own_addr); 2265 msg_set_orignode(msg, tn->own_addr);
2266 spin_unlock_bh(&tsk->sk.sk_lock.slock); 2266 spin_unlock_bh(&tsk->sk.sk_lock.slock);
2267 } 2267 }
2268 2268walk_stop:
2269 rhashtable_walk_stop(&iter); 2269 rhashtable_walk_stop(&iter);
2270 } while (tsk == ERR_PTR(-EAGAIN)); 2270 } while (tsk == ERR_PTR(-EAGAIN));
2271} 2271}