[Multi-ASIC] Added fast-reboot support for multi-asic - #804
Merged
Conversation
Signed-off-by: Yair Raviv <yraviv@nvidia.com>
Signed-off-by: Yair Raviv <yraviv@nvidia.com>
Collaborator
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
YairRaviv
approved these changes
Apr 29, 2026
YairRaviv
previously approved these changes
Apr 29, 2026
YairRaviv
requested review from
saiarcot895 and
vaibhavhd
and removed request for
saiarcot895
June 30, 2026 07:49
Collaborator
|
@vaibhavhd kindly reminder to provide your feedback. if you wish to assing someone else on your behalf please do. |
|
@Ryangwaite please review |
Ryangwaite
requested changes
Jul 17, 2026
Contributor
|
@abelamit please add details of testing multi-asic and single asic fast-reboot to the description. |
Signed-off-by: Yair Raviv <yraviv@nvidia.com>
Collaborator
|
/azp run |
|
Azure Pipelines: Successfully started running 1 pipeline(s). |
YairRaviv
self-requested a review
August 3, 2026 07:49
YairRaviv
previously approved these changes
Aug 3, 2026
Contributor
@Ryangwaite Done |
Ryangwaite
previously approved these changes
Aug 4, 2026
prgeor
reviewed
Aug 4, 2026
Contributor
There was a problem hiding this comment.
Pull request overview
This PR updates the sonic-xcvrd transceiver daemon to support multi-ASIC fast reboot behavior by tracking warm/fast-reboot state per ASIC/namespace and suppressing media-setting notifications accordingly.
Changes:
- Add per-namespace warm/fast-reboot status caching and gate
notify_media_setting()per logical port inSfpStateUpdateTask. - Update CMIS manager logic to check fast-reboot status per logical port/ASIC instead of globally.
- Extend
common.is_fast_reboot_enabled()with anamespaceparameter and add/adjust unit tests for the new per-lport behaviors.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| sonic-xcvrd/xcvrd/xcvrd.py | Cache warm/fast-reboot status per namespace and skip media setting notifications per port during warm/fast reboot. |
| sonic-xcvrd/xcvrd/xcvrd_utilities/common.py | Add namespace argument to is_fast_reboot_enabled() and switch implementation to DB read (vs shell). |
| sonic-xcvrd/xcvrd/cmis/cmis_manager_task.py | Cache fast-reboot status per namespace and use it per logical port. |
| sonic-xcvrd/tests/test_xcvrd.py | Add unit tests for new per-lport fast reboot and warm/fast reboot notification gating logic. |
Signed-off-by: Yair Raviv <yraviv@nvidia.com>
Collaborator
|
/azp run |
|
Azure Pipelines: Successfully started running 1 pipeline(s). |
YairRaviv
self-requested a review
August 4, 2026 10:55
YairRaviv
previously approved these changes
Aug 4, 2026
Signed-off-by: Yair Raviv <yraviv@nvidia.com>
Collaborator
|
/azp run |
|
Azure Pipelines: Successfully started running 1 pipeline(s). |
YairRaviv
self-requested a review
August 4, 2026 12:05
YairRaviv
approved these changes
Aug 4, 2026
This file contains hidden or 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
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.
Description
Add fast-reboot support for multi-asic devices, according to this HLD - [Multi-ASIC] Added fast-reboot support for multi-asic
Motivation and Context
The main changes in transceiver daemon are related to checking the fast-reboot state per ASIC instead of globally.
How Has This Been Tested?
Single ASIC:
Tested fast-reboot tests, including upgrade scenarios to make sure no degradation.
Multi-ASIC
Tested manually on Multi-ASIC simulation to test that all required functionality works as expected
Additional Information (Optional)