Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix for interface link-state going out-of-sync between agent and host-os
The VifListener module tracks the link-state for a tap interface by listening to Netlink messages from host-os. When it identifies transition of link-state, it enqueues RESYNC operation on interface to re-evaluate the ACTIVE state of interface. Bug: There is a corner case where Interface object may not have right state. 1. Tap interface gets created in down state 2. Agent adds interface to oper-db in down state 3. Agent adds the interface-object in notify queue 4. When interface is in notify-queue, - VifListener gets notification of link going to UP state - VifListener ignore the link transition since it is not notified of the interface yet 5. VifListener module gets interface notification In (5), VifListener should enqueue RESYNC operation on interface. But, its not doing it currently. Fix: - Modify case (5) above to enqueue RESYNC operation on interface - Modify VifListener to notify all Netlink messages to interface independent of whether state is transitioned or not Change-Id: I4472d9396387d75c53a0c3cd53f30d87de565799 Closes-Bug: #1466935
- Loading branch information