Skip to contentSkip to conversation

avoid possible deadlock while enable and disable bearer

PATCH Superseded Ding Tianhong 1 participant 1 message Aug 8, 2013

Subsystems (2)

v1 of 2 Superseded Latest is v2 →

lore
Share & tools
lore
#0 lore raw

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