-
Notifications
You must be signed in to change notification settings - Fork 558
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
[Chassis][LAG_ID] Address the same lagid been used in two different LCs issue #3303
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
arlakshm
reviewed
Sep 30, 2024
can you update the UT as well. |
80f2a59
to
e9938d5
Compare
UT has been updated. |
8 tasks
judyjoseph
reviewed
Oct 8, 2024
9cd19a2
to
395e8c7
Compare
arlakshm
previously approved these changes
Nov 13, 2024
/Azp Azure.sonic-swss |
Command 'Azure.sonic-swss' is not supported by Azure Pipelines. Supported commands
See additional documentation. |
@mlok-nokia , branch is out-of-date |
0c1697c
to
dac0e95
Compare
Fixed, Thanks |
39bce94
to
e087f40
Compare
@arlakshm @judyjoseph PR has been update. Please merge it. |
@prsunny please help merge this PR |
…Cs issue. Signed-off-by: mlok <[email protected]>
Signed-off-by: mlok <[email protected]>
Signed-off-by: mlok <[email protected]>
mssonicbld
pushed a commit
to mssonicbld/sonic-swss
that referenced
this pull request
Nov 30, 2024
…Cs issue (sonic-net#3303) What I did Create SYSTEM_LAG_IDS_FREE_LIST for assign lagId for all portchannel creation. Portchannel creation a) If Portchannel is created with a valid plagid * check if plagid is in free list, use plagid and remove it from SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info * If plagid is not in the FREE_LIST, lpop and use the first lagid from the SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info b) If Portchannel is created with invalid plagid or without any lagid lpop and use the first lagid from the SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info Portchannel delection Append the lagid to the end of SYSTEM_LAG_IDS_FREE_LIST. Also remove it from SYSTEM_LAG_ID_SET.
Cherry-pick PR to 202405: #3404 |
mssonicbld
pushed a commit
to sonic-net/sonic-platform-daemons
that referenced
this pull request
Nov 30, 2024
When LC is absent for 30 minutes, the database cleanup kicks in. When LagId is released, it needs to be appended to the SYSTEM_LAG_IDS_FREE_LIST This PR works with the following 2 PRs: sonic-net/sonic-swss#3303 sonic-net/sonic-buildimage#20369 Signed-off-by: mlok <[email protected]>
mssonicbld
pushed a commit
that referenced
this pull request
Nov 30, 2024
…Cs issue (#3303) What I did Create SYSTEM_LAG_IDS_FREE_LIST for assign lagId for all portchannel creation. Portchannel creation a) If Portchannel is created with a valid plagid * check if plagid is in free list, use plagid and remove it from SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info * If plagid is not in the FREE_LIST, lpop and use the first lagid from the SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info b) If Portchannel is created with invalid plagid or without any lagid lpop and use the first lagid from the SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info Portchannel delection Append the lagid to the end of SYSTEM_LAG_IDS_FREE_LIST. Also remove it from SYSTEM_LAG_ID_SET.
bradh352
pushed a commit
to bradh352/sonic-swss
that referenced
this pull request
Dec 4, 2024
…Cs issue (sonic-net#3303) What I did Create SYSTEM_LAG_IDS_FREE_LIST for assign lagId for all portchannel creation. Portchannel creation a) If Portchannel is created with a valid plagid * check if plagid is in free list, use plagid and remove it from SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info * If plagid is not in the FREE_LIST, lpop and use the first lagid from the SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info b) If Portchannel is created with invalid plagid or without any lagid lpop and use the first lagid from the SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info Portchannel delection Append the lagid to the end of SYSTEM_LAG_IDS_FREE_LIST. Also remove it from SYSTEM_LAG_ID_SET.
bradh352
pushed a commit
to bradh352/sonic-swss
that referenced
this pull request
Dec 4, 2024
…Cs issue (sonic-net#3303) What I did Create SYSTEM_LAG_IDS_FREE_LIST for assign lagId for all portchannel creation. Portchannel creation a) If Portchannel is created with a valid plagid * check if plagid is in free list, use plagid and remove it from SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info * If plagid is not in the FREE_LIST, lpop and use the first lagid from the SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info b) If Portchannel is created with invalid plagid or without any lagid lpop and use the first lagid from the SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info Portchannel delection Append the lagid to the end of SYSTEM_LAG_IDS_FREE_LIST. Also remove it from SYSTEM_LAG_ID_SET.
arista-nwolfe
added a commit
to arista-nwolfe/sonic-buildimage
that referenced
this pull request
Dec 9, 2024
The following PRs made 1024 incorrect: sonic-net#20369 sonic-net/sonic-swss#3303 This fixes: sonic-net#21096
1 task
rlhui
pushed a commit
to sonic-net/sonic-buildimage
that referenced
this pull request
Dec 10, 2024
The following PRs made 1024 incorrect: #20369 sonic-net/sonic-swss#3303 This fixes: #21096
mssonicbld
pushed a commit
to mssonicbld/sonic-buildimage
that referenced
this pull request
Dec 10, 2024
The following PRs made 1024 incorrect: sonic-net#20369 sonic-net/sonic-swss#3303 This fixes: sonic-net#21096
mssonicbld
pushed a commit
to mssonicbld/sonic-buildimage
that referenced
this pull request
Dec 10, 2024
The following PRs made 1024 incorrect: sonic-net#20369 sonic-net/sonic-swss#3303 This fixes: sonic-net#21096
mssonicbld
pushed a commit
to sonic-net/sonic-buildimage
that referenced
this pull request
Dec 11, 2024
The following PRs made 1024 incorrect: #20369 sonic-net/sonic-swss#3303 This fixes: #21096
divyachandralekha
pushed a commit
to divyachandralekha/sonic-swss
that referenced
this pull request
Dec 12, 2024
…Cs issue (sonic-net#3303) What I did Create SYSTEM_LAG_IDS_FREE_LIST for assign lagId for all portchannel creation. Portchannel creation a) If Portchannel is created with a valid plagid * check if plagid is in free list, use plagid and remove it from SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info * If plagid is not in the FREE_LIST, lpop and use the first lagid from the SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info b) If Portchannel is created with invalid plagid or without any lagid lpop and use the first lagid from the SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info Portchannel delection Append the lagid to the end of SYSTEM_LAG_IDS_FREE_LIST. Also remove it from SYSTEM_LAG_ID_SET.
divyachandralekha
pushed a commit
to divyachandralekha/sonic-swss
that referenced
this pull request
Dec 12, 2024
…Cs issue (sonic-net#3303) What I did Create SYSTEM_LAG_IDS_FREE_LIST for assign lagId for all portchannel creation. Portchannel creation a) If Portchannel is created with a valid plagid * check if plagid is in free list, use plagid and remove it from SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info * If plagid is not in the FREE_LIST, lpop and use the first lagid from the SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info b) If Portchannel is created with invalid plagid or without any lagid lpop and use the first lagid from the SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info Portchannel delection Append the lagid to the end of SYSTEM_LAG_IDS_FREE_LIST. Also remove it from SYSTEM_LAG_ID_SET.
8 tasks
vvolam
pushed a commit
to vvolam/sonic-platform-daemons
that referenced
this pull request
Jan 3, 2025
…net#542) When LC is absent for 30 minutes, the database cleanup kicks in. When LagId is released, it needs to be appended to the SYSTEM_LAG_IDS_FREE_LIST This PR works with the following 2 PRs: sonic-net/sonic-swss#3303 sonic-net/sonic-buildimage#20369 Signed-off-by: mlok <[email protected]>
@arlakshm curious if we want to backport the fix to 202205? |
mssonicbld
added a commit
to sonic-net/sonic-buildimage
that referenced
this pull request
Jan 16, 2025
The following PRs made 1024 incorrect: #20369 sonic-net/sonic-swss#3303 This fixes: #21096
VladimirKuk
pushed a commit
to Marvell-switching/sonic-buildimage
that referenced
this pull request
Jan 21, 2025
The following PRs made 1024 incorrect: sonic-net#20369 sonic-net/sonic-swss#3303 This fixes: sonic-net#21096
stepanblyschak
pushed a commit
to stepanblyschak/sonic-swss
that referenced
this pull request
Jan 27, 2025
…Cs issue (sonic-net#3303) What I did Create SYSTEM_LAG_IDS_FREE_LIST for assign lagId for all portchannel creation. Portchannel creation a) If Portchannel is created with a valid plagid * check if plagid is in free list, use plagid and remove it from SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info * If plagid is not in the FREE_LIST, lpop and use the first lagid from the SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info b) If Portchannel is created with invalid plagid or without any lagid lpop and use the first lagid from the SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info Portchannel delection Append the lagid to the end of SYSTEM_LAG_IDS_FREE_LIST. Also remove it from SYSTEM_LAG_ID_SET.
prgeor
pushed a commit
to sonic-net/sonic-platform-daemons
that referenced
this pull request
Feb 6, 2025
…evice is in detaching mode (#546) * Skip logging the warning, if device is in detaching mode * Add detach_info table and unittests * Fix unit tests * Increase code coverage * Remove unused header import * Fix dict get values * Increase code coverage * Increase test coverage * [SmartSwitch] Extend implementation of the DPU chassis daemon. (#563) * Addition of DPU Chassis for thermalctld (#564) * [stormond] Added new dynamic field 'last_sync_time' to STATE_DB (#535) * Added new dynamic field 'last_sync_time' that shows when STORAGE_INFO for disk was last synced to STATE_DB * Moved 'start' message to actual starting point of the daemon * Added functions for formatted and epoch time for user friendly time display * Made changes per prgeor review comments * Pivot to SysLogger for all logging * Increased log level so that they are seen in syslogs * Code coverage improvement * [lag_id] Add lagid to free_list when LC absent for 30 minutes (#542) When LC is absent for 30 minutes, the database cleanup kicks in. When LagId is released, it needs to be appended to the SYSTEM_LAG_IDS_FREE_LIST This PR works with the following 2 PRs: sonic-net/sonic-swss#3303 sonic-net/sonic-buildimage#20369 Signed-off-by: mlok <[email protected]> * Fixed bug in chassisd causing incorrect number of ASICs in CHASSIS_STATE_DB (#560) Fixed the bug in chassisd due to which incorrect number of ASICs were being pushed to CHASSIS_STATE_DB. * thermalctld: Add support for fans on non-CPU modules (#555) * thermalctld: Add support for fans on non-CPU modules * Add module fan to unit tests * Advanced Azure pipeline to Bookworm (#572) Description This PR advances the azure pipeline on sonic_platform_daemons from bullseye to bookworm. This fixes the issue where sonic-platform-daemons azp is having some issues due to upgrade to bookworm. See Pipelines - Run 20241210.8 logs for details. * Take non-CMIS xcvrs out of lpmode in SFF Manager (#565) Description Fix non-CMIS transceivers in down state by bringing them out of low power mode in the SFF Manager Task. This is intended to work together with the change in sonic-net/sonic-buildimage#20886. Motivation and Context Non-CMIS transceivers were not functioning correctly when put into Low Power mode. So XCVRD now brings them out of lpmode. How Has This Been Tested? Loaded an image containing this change alongside the change from sonic-net/sonic-buildimage#20886 on an Arista chassis containing a Clearwater2 linecard. Verified that without this image some interfaces were in a down state but with the image all interfaces came up as expected. * Added SmartSwitch support in chassisd and enabling chassisd (#467) Added SmartSwitch support in chassisd and enabling chassisd * [chassis][psud] Move the PSU parent information generation to the loop run function from the initialization function (#576) Description Move the PSU parent information generation to the loop run function from the initialization function Motivation and Context Fixes #575 How Has This Been Tested? Tested on Cisco chassis, the PHYSICAL_ENTITY_INFO|PSU * can be re-inserted after thermalctld restart. And monitored the stated db for memory for hours, works well: * [chassisd] Address the chassisd crash issue and add UT for it (#573) Description On Nokia platform, slot name of Supervisor is string "A" instead of a number. Using "int" to convert it could cause issue backtrace. We should use slot value to any checking without any conversion. This will fixes sonic-net/sonic-buildimage#21131 Motivation and Context Modify the _get_module_info not to convert "slot" to a string value. And also modify the code not to convert slot value to an to do any checking. Just directly use the returned value of get_slot(). Also add UT test_moduleupdater_check_slot_string() to valid it. How Has This Been Tested? Tested on 202405 branch Signed-off-by: mlok <[email protected]> * Fix a comment --------- Signed-off-by: mlok <[email protected]> Co-authored-by: Oleksandr Ivantsiv <[email protected]> Co-authored-by: Gagan Punathil Ellath <[email protected]> Co-authored-by: Ashwin Srinivasan <[email protected]> Co-authored-by: Marty Y. Lok <[email protected]> Co-authored-by: Vivek Verma <[email protected]> Co-authored-by: Patrick MacArthur <[email protected]> Co-authored-by: Peter Bailey <[email protected]> Co-authored-by: rameshraghupathy <[email protected]> Co-authored-by: Jianquan Ye <[email protected]>
shiraez
pushed a commit
to Marvell-switching/sonic-swss
that referenced
this pull request
Feb 17, 2025
…Cs issue (sonic-net#3303) What I did Create SYSTEM_LAG_IDS_FREE_LIST for assign lagId for all portchannel creation. Portchannel creation a) If Portchannel is created with a valid plagid * check if plagid is in free list, use plagid and remove it from SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info * If plagid is not in the FREE_LIST, lpop and use the first lagid from the SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info b) If Portchannel is created with invalid plagid or without any lagid lpop and use the first lagid from the SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info Portchannel delection Append the lagid to the end of SYSTEM_LAG_IDS_FREE_LIST. Also remove it from SYSTEM_LAG_ID_SET.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What I did
Create SYSTEM_LAG_IDS_FREE_LIST for assign lagId for all portchannel creation.
a) If Portchannel is created with a valid plagid
* check if plagid is in free list, use plagid and remove it from SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info
* If plagid is not in the FREE_LIST, lpop and use the first lagid from the SYSTEM_LAG_IDS_FREE_LIST. Add this lagid to the SYSTEM_LAG_ID_SET for debug info
b) If Portchannel is created with invalid plagid or without any lagid
This PR works with the following 2 PRs:
sonic-net/sonic-platform-daemons#542
sonic-net/sonic-buildimage#20369
Based on the dependency, the below order to merge these 3 PRs can help to avoid breaking the image run:
First: PR sonic-net/sonic-buildimage#20369
second: PR #3303 (This PR)
Third: PR sonic-net/sonic-platform-daemons#542
Why I did it
To address the issue of the same lagid could be used by two Portchannels in two different linecards. This issue occurs when reboot many Linecards together with 20 seconds delay in each LC reboot.
How I verified it
Details if related