tipc: make resetting of links non-atomic
In order to facilitate future improvements to the locking structure, we want to make resetting and establishing of links non-atomic. I.e., the functions tipc_node_link_up() and tipc_node_link_down() should be called from outside the node lock context, and grab/release the node lock themselves. This requires that we can freeze the link state from the moment it is set to RESETTING or PEER_RESET in one lock context until it is set to RESET or ESTABLISHING in a later context. The recently introduced link FSM makes this possible, so we are now ready to introduce the above change. This commit implements this. Tested-by: Ying Xue <ying.xue@windriver.com> Signed-off-by: Jon Maloy <jon.maloy@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
cf148816ac
commit
598411d70f
@@ -489,8 +489,8 @@ int tipc_link_timeout(struct tipc_link *l, struct sk_buff_head *xmitq)
|
||||
xmit = true;
|
||||
mtyp = ACTIVATE_MSG;
|
||||
break;
|
||||
case LINK_RESETTING:
|
||||
case LINK_PEER_RESET:
|
||||
case LINK_RESETTING:
|
||||
case LINK_FAILINGOVER:
|
||||
break;
|
||||
default:
|
||||
|
Reference in New Issue
Block a user