From: Parthasarathy Bhuvaragan <redacted>
Date: Tue, 21 Mar 2017 10:47:49 +0100
From: Ying Xue <redacted>
Until now, tipc_nametbl_unsubscribe() is called at subscriptions
reference count cleanup. Usually the subscriptions cleanup is
called at subscription timeout or at subscription cancel or at
subscriber delete.
We have ignored the possibility of this being called from other
locations, which causes deadlock as we try to grab the
tn->nametbl_lock while holding it already.
...
In this commit, we advance the calling of tipc_nametbl_unsubscribe()
from the refcount cleanup to the intended callers.
Fixes: d094c4d5f5c7 ("tipc: add subscription refcount to avoid invalid delete")
Reported-by: John Thompson <redacted>
Acked-by: Jon Maloy <redacted>
Signed-off-by: Ying Xue <redacted>
Signed-off-by: Parthasarathy Bhuvaragan <redacted>
Applied, thank you.