avoid possible deadlock while enable and disable bearer
Subsystems (2)
cover avoid possible deadlock while enable and disable bearer
It will occur two deadlock warming When run the command such as:
tipc-config -netid=1234 -addr=1.1.3 -be=eth:eth0
tipc-config -netid=1234 -addr=1.1.3 -bd=eth:eth0
The reason is that the tipc_link_delete() will cancel the link_timeout() and disc_timeout() when disable the bearer, the xxx_timeout() will require b_ptr->lock, but the b_ptr->lock is already hold, so the deadlock will occur.
We need to unlock the b_ptr->lock when calling xxx_timeout().
Ding Tianhong (1):
tipc: avoid possible deadlock while remove link_timeout()
Wang Weidong (1):
tipc: avoid possible deadlock while remove disc_timeout()
net/tipc/bearer.c | 14 ++++++++++---- net/tipc/link.c | 2 ++ 2 files changed, 12 insertions(+), 4 deletions(-)
Signature · 1 line
1.8.2.1