tipc: fix sleeping in tipc accept routine
authorHoang Le <hoang.h.le@dektech.com.au>
Fri, 23 Jul 2021 02:25:34 +0000 (09:25 +0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 4 Aug 2021 09:58:03 +0000 (11:58 +0200)
commita1d2c2ed0650ad924d9007dc2931020c47c41394
tree991f8b922933ae92c1fc3b14d8149616502687ad
parent2e3301b484bc593f59da2be15454625f41caa518
tipc: fix sleeping in tipc accept routine

[ Upstream commit d237a7f11719ff9320721be5818352e48071aab6 ]

The release_sock() is blocking function, it would change the state
after sleeping. In order to evaluate the stated condition outside
the socket lock context, switch to use wait_woken() instead.

Fixes: 6398e23cdb1d8 ("tipc: standardize accept routine")
Acked-by: Jon Maloy <jmaloy@redhat.com>
Signed-off-by: Hoang Le <hoang.h.le@dektech.com.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/tipc/socket.c