Skip to content

Check low power mode before vdm handling#653

Merged
prgeor merged 6 commits intosonic-net:masterfrom
az-pz:ariz/fix-vdm-handling-when-module-is-in-low-power-mode
Aug 29, 2025
Merged

Check low power mode before vdm handling#653
prgeor merged 6 commits intosonic-net:masterfrom
az-pz:ariz/fix-vdm-handling-when-module-is-in-low-power-mode

Conversation

@az-pz
Copy link
Contributor

@az-pz az-pz commented Jul 31, 2025

Description

Skip VDM handling when the interface low power mode is on.

Motivation and Context

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.

Additional Information (Optional)

ADO: 32013738

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@az-pz az-pz marked this pull request as ready for review August 5, 2025 17:36
@prgeor prgeor requested a review from mihirpat1 August 5, 2025 17:42
@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@az-pz az-pz requested review from mihirpat1 and prgeor August 15, 2025 17:37
@prgeor
Copy link
Collaborator

prgeor commented Aug 29, 2025

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

Copy link
Collaborator

@prgeor prgeor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The module in low power mode can also support VDM but due to the current limitation of the code we don't do separate VDM polling for module vs datapath, this PR for the time being is ok. @mihirpat1 FYI

@prgeor prgeor merged commit f507630 into sonic-net:master Aug 29, 2025
5 checks passed
@mihirpat1
Copy link
Contributor

mihirpat1 commented Aug 29, 2025

@r12f @arlakshm @yejianquan - Can you please help to cherry pick this to 202412, 202503 and 202505?
MSFT ADO - 32013738

@mssonicbld
Copy link
Collaborator

Cherry-pick PR to 202505: #670

@mssonicbld
Copy link
Collaborator

Cherry-pick PR to msft-202503: Azure/sonic-platform-daemons.msft#43

@mssonicbld
Copy link
Collaborator

Cherry-pick PR to msft-202412: Azure/sonic-platform-daemons.msft#48

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.

7 participants