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 10:27:39 +0000 (12:27 +0200)
commit851946a681362d2e5a4df122909c85ec3eb93e97
tree7926b4f390514507dc7af61cadaf1cbda6568660
parent194b71d28b26042160b6139b22c9f58d12ee60ee
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