You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add retry reading/setting mux status to simulated y-cable driver (#221)
Description
Add retry reading/setting mux status to simulated y-cable driver
Motivation and Context
When DUT is rebooted, xcvrd may call the simulated y-cable driver to get mux
direction before the mgmt interface is up. The simulated y-cable driver needs
to send HTTP request to mux simulator server to read mux status. It has
dependency on the mgmt interface. So, this could result in below error:
Oct 16 03:15:44.029933 sonic-dut ERR pmon#xcvrd[34]: y_cable_port 1: GET http://192.168.1.33:8082/mux/vms21-6/0 for physical_port 1 failed with URLError(OSError(113, 'No route to host'))
Oct 16 03:15:44.030306 sonic-dut ERR pmon#xcvrd[34]: Error: Could not establish the active side for Y cable port Ethernet0 to perform read_y_cable update state db
This would cause other problem and may result in same interface on both upper
tor and lower tor remains in "standby" state.
The fix is to add retry to the simulated y-cable driver for reading or setting
mux status. The retry interval is 1 second. Retry timeout is 30 seconds.
How Has This Been Tested?
* The issue can be reliably reproduced on a 7260 dualtor testbed after run the test_acl::TestAclWithReboot cases.
With this fix, the issue cannot be reproduced.
* Tested the config mux mode active command with or without icmp responder.
* Tested updating mux status by call mux simulator API to see if the new status is reflected to DUTs.
Signed-off-by: Xin Wang <[email protected]>
0 commit comments