• Jon Paul Maloy's avatar
    tipc: delay delete of link when failover is needed · 7d33939f
    Jon Paul Maloy authored
    When a bearer is disabled, all its attached links are deleted.
    Ideally, we should do link failover to redundant links on other bearers,
    if there are any, in such cases. This would be consistent with current
    behavior when a link is reset, but not deleted. However, due to the
    complexity involved, and the (wrongly) perceived low demand for this
    feature, it was never implemented until now.
    
    We mark the doomed link for deletion with a new flag, but wait until the
    failover process is finished before we actually delete it. With the
    improved link tunnelling/failover code introduced earlier in this commit
    series, it is now easy to identify a spot in the code where the failover
    is finished and it is safe to delete the marked link. Moreover, the test
    for the flag and the deletion can be done synchronously, and outside the
    most time critical data path.
    Signed-off-by: default avatarJon Maloy <jon.maloy@ericsson.com>
    Reviewed-by: default avatarYing Xue <ying.xue@windriver.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    7d33939f
bearer.c 16 KB