-
Notifications
You must be signed in to change notification settings - Fork 543
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix warmboot issue PR##8367 #1866
Conversation
@Praveen-Brcm I also raised the same fix here - #1863 However, @lguohan suggested to rather revert the below PRs, as this issue should have gotten caught in unit tests. We might need a new PR with below changes along with missing tests in a new PR. |
@vaibhavhd : We had an email conversation with @lguohan today morning and he suggested to push the fix. |
Thanks! LGTM then :) |
@vaibhavhd, @prsunny Can you pleashe help rerun the tests.Failures are not related the fix made. Thanks. |
/azp run |
Azure Pipelines successfully started running 1 pipeline(s). |
@prsunny , can you check the test failure? are they expected, can we merge this pr? |
|
Update sonic-swss submodule to include the latest changes: Add autoconf-archive package to lgtm sonic-net/sonic-swss#1868 [cfgmgr] Update Makefile.am to consume lib zmq sonic-net/sonic-swss#1864 Fix warmboot issue PR##8367 sonic-net/sonic-swss#1866
During the WB when the MAC addresses are added via refillToSync(&m_fdbStateTable) , the attribute SAI_FDB_ENTRY_ATTR_ALLOW_MAC_MOVE is set wrongly for dynamic MAC as well. Fix is to set SAI_FDB_ENTRY_ATTR_ALLOW_MAC_MOVE only for the case of VXLAN or MCLAG for fdb_type dyamic.
During the WB when the MAC addresses are added via refillToSync(&m_fdbStateTable) , the attribute SAI_FDB_ENTRY_ATTR_ALLOW_MAC_MOVE is set wrongly for dynamic MAC as well. Fix is to set SAI_FDB_ENTRY_ATTR_ALLOW_MAC_MOVE only for the case of VXLAN or MCLAG for fdb_type dyamic.
The race condition is caused by a blocking Redis call which gets the contents of the FDB entry from ASIC DB. Since it has been implemented as a simple loop, there is no guarantee that entry will be present in DB when the contents are being read. - What I did Fixed: [fdb] 'show mac' command failed with t0-56-po2vlan topology sonic-net#1866 - How I did it Removed blocking calls from fdbshow - How to verify it Run FDB test - Previous command output (if the output of a command-line utility has changed) root@sonic:/home/admin# show mac Key 'ASIC_STATE:SAI_OBJECT_TYPE_FDB_ENTRY:{"bvid":"oid:0x260000000009cc","mac":"02:11:22:33:20:00","switch_id":"oid:0x21000000000000"}' unavailable in database '1' - New command output (if the output of a command-line utility has changed) root@sonic:/home/admin# show mac No. Vlan MacAddress Port Type ----- ------ ------------ ------ ------ Total number of entries 0 Signed-off-by: Nazarii Hnydyn <nazariig@nvidia.com>
What I did
FIx the warmboot issue PR##8367, caused by the changes made as part of the PR#1331
Fixes sonic-net/sonic-buildimage#8367
Why I did it
During the WB when the MAC addresses are added via refillToSync(&m_fdbStateTable) , the attribute SAI_FDB_ENTRY_ATTR_ALLOW_MAC_MOVE is set wrongly for dynamic MAC as well.
Fix is to set SAI_FDB_ENTRY_ATTR_ALLOW_MAC_MOVE only for the case of VXLAN or MCLAG for fdb_type dyamic.