Skip to content

[code sync] Merge code from sonic-net/sonic-platform-daemons:202412 to 202503#49

Merged
mssonicbld merged 2 commits intoAzure:202503from
mssonicbld:sonicbld/202503-merge
Sep 10, 2025
Merged

[code sync] Merge code from sonic-net/sonic-platform-daemons:202412 to 202503#49
mssonicbld merged 2 commits intoAzure:202503from
mssonicbld:sonicbld/202503-merge

Conversation

@mssonicbld
Copy link
Collaborator

* c5b86da - (base/202412) Check low power mode before vdm handling (#48) (2025-09-09) [mssonicbld]<br>```

mssonicbld and others added 2 commits September 9, 2025 21:12
<!-- Provide a general summary of your changes in the Title above -->

#### Description
<!--
 Describe your changes in detail
-->
Skip VDM handling when the interface low power mode is on.
#### Motivation and Context
<!--
 Why is this change required? What problem does it solve?
 If this pull request closes/resolves an open Issue, make sure you
 include the text "fixes #xxxx", "closes #xxxx" or "resolves #xxxx" here
-->
When the interface low power mode is on, we see following errors in the syslog:
ERR pmon#xcvrd[76]: Failed to confirm VDM unfreeze status for port 63
ERR pmon#xcvrd[76]: Failed to unfreeze VDM stats in contextmanager for port 63
ERR pmon#xcvrd[76]: Failed to confirm VDM freeze status for port 63
ERR pmon#xcvrd[76]: Failed to freeze VDM stats in contextmanager for port 63
ERR pmon#xcvrd[76]: DOM-INFO-UPDATE: Failed to freeze VDM stats for port 63
ERR pmon#xcvrd[76]: Failed to confirm VDM unfreeze status for port 63
ERR pmon#xcvrd[76]: Failed to unfreeze VDM stats in contextmanager for port 63

To avoid the errors, we are skipping VDM handling when low power mode is on. To achieve this, a helper method is added to check for VDM status which is called before the VDM handling code block.

#### How Has This Been Tested?
1. Turn on interface lpmode.
2. Verify that syslog has the above-mentioned errors for the interface.
3. Make the code changes in the pmon container.
4. Restart the xcvrd.
5. Once the interfaces are initialized, turn off and turn on the lpmode of the interface.
6. Check the syslog. Above-mentioned errors should not appear for the interface.
7. Check TRANSCEIVER_VDM_REAL_VALUE table of the interface. It should not update while the lpmode is on.
8. For 400ZR optics, TRANSCEIVER_PM table should not update while the lpmode is on.
9. Turn off lpmode of the interface.
10. See that TRANSCEIVER_VDM_REAL_VALUE and TRANSCEIVER_PM gets updated.

This PR has been tested on 100G OSFP 8X Pluggable Transceiver and 400ZR QSFP-DD Double Density 8X Pluggable Transceiver.

<!--
 Please describe in detail how you tested your changes.
 Include details of your testing environment, and the tests you ran to
 see how your change affects other areas of the code, etc.
-->

#### Additional Information (Optional)
ADO: 32013738
@mssonicbld mssonicbld merged commit ec79b8d into Azure:202503 Sep 10, 2025
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant