Skip to content

Skip TUNNEL_DECAP conf during warm boot for marvell-teralynx#25016

Merged
lihuay merged 4 commits intosonic-net:masterfrom
Gnanapriya27:tunnel-decap
Feb 24, 2026
Merged

Skip TUNNEL_DECAP conf during warm boot for marvell-teralynx#25016
lihuay merged 4 commits intosonic-net:masterfrom
Gnanapriya27:tunnel-decap

Conversation

@Gnanapriya27
Copy link
Copy Markdown
Contributor

Summary:
During SWSS warm restart, the script swssconfig.sh replays only the TUNNEL_DECAP_TABLE subset from ipinip.json. This replay must not run on platforms that already recover IPinIP decap state from APP_DB. The current logic skipped replay only for Broadcom platform. This patch extends the skip behavior to marvell-teralynx ASICs.

Type of change:
Bug Fix - Adapting skipping of TUNNEL_DECAP replay in case of marvell-teralynx ASIC

How did you do it?
Updated warm-boot logic to skip applying ipinip.json for: marvell-teralynx similar to broadcom Apply the filtered subset for all other ASICs.
This prevents duplicate tunnel-decap create operations during warm restart on Teralynx platforms.

How did you verify/test it?
Verified the behavior on Marvell-teralynx platform.

Any platform specific information?
YES, marvell-teralynx

Why I did it

Work item tracking
  • Microsoft ADO (number only):

How I did it

How to verify it

Which release branch to backport (provide reason below if selected)

  • 202305
  • 202311
  • 202405
  • 202411
  • 202505
  • 202511

Tested branch (Please provide the tested image version)

Description for the changelog

Link to config_db schema for YANG module changes

A picture of a cute animal (not mandatory but encouraged)

Summary:
During SWSS warm restart, the script swssconfig.sh replays only the TUNNEL_DECAP_TABLE subset from ipinip.json. This replay must not run on platforms that already recover IPinIP decap state from APP_DB. The current logic skipped replay only for Broadcom platform. This patch extends the skip behavior to marvell-teralynx ASICs.

Type of change:
Bug Fix - Adapting skipping of TUNNEL_DECAP replay in case of marvell-teralynx ASIC

How did you do it?
Updated warm-boot logic to skip applying ipinip.json for: marvell-teralynx similar to broadcom
Apply the filtered subset for all other ASICs.
This prevents duplicate tunnel-decap create operations during warm restart on Teralynx platforms.

How did you verify/test it?
Verified the behavior on Marvell-teralynx platform.

Any platform specific information?
YES, marvell-teralynx

Signed-off-by: Gnanapriya Sethuramarajan <[email protected]>
@Gnanapriya27 Gnanapriya27 requested a review from lguohan as a code owner January 9, 2026 09:11
@mssonicbld
Copy link
Copy Markdown
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

@lihuay lihuay requested a review from Copilot February 18, 2026 18:18
@mssonicbld
Copy link
Copy Markdown
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR fixes a bug in the warm boot logic for the marvell-teralynx ASIC platform. During SWSS warm restart, the system was incorrectly replaying the TUNNEL_DECAP_TABLE configuration from ipinip.json, causing duplicate tunnel-decap create operations. The fix extends the existing skip behavior (already implemented for Broadcom) to also cover marvell-teralynx ASICs, which similarly recover IPinIP decap state from APP_DB during warm boot.

Changes:

  • Modified warm boot conditional logic in swssconfig.sh to skip TUNNEL_DECAP replay for marvell-teralynx ASICs (in addition to existing broadcom skip)
  • Inverted the condition from checking != "broadcom" to checking == "broadcom" || == "marvell-teralynx" for better clarity
  • Updated echo messages to be more informative by including the actual ASIC type in the output

@mssonicbld
Copy link
Copy Markdown
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Copy Markdown
Collaborator

/azp run Azure.sonic-buildimage

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

@lihuay lihuay merged commit 5eb8184 into sonic-net:master Feb 24, 2026
26 checks passed
FengPan-Frank pushed a commit to FengPan-Frank/sonic-buildimage that referenced this pull request Mar 6, 2026
…et#25016)

Summary:
During SWSS warm restart, the script swssconfig.sh replays only the TUNNEL_DECAP_TABLE subset from ipinip.json. This replay must not run on platforms that already recover IPinIP decap state from APP_DB. The current logic skipped replay only for Broadcom platform. This patch extends the skip behavior to marvell-teralynx ASICs.

Type of change:
Bug Fix - Adapting skipping of TUNNEL_DECAP replay in case of marvell-teralynx ASIC

How did you do it?
Updated warm-boot logic to skip applying ipinip.json for: marvell-teralynx similar to broadcom
Apply the filtered subset for all other ASICs.
This prevents duplicate tunnel-decap create operations during warm restart on Teralynx platforms.

How did you verify/test it?
Verified the behavior on Marvell-teralynx platform.

Any platform specific information?
YES, marvell-teralynx

Signed-off-by: Gnanapriya Sethuramarajan <[email protected]>
Co-authored-by: Lihua Yuan <[email protected]>
Signed-off-by: Feng Pan <[email protected]>
@mssonicbld
Copy link
Copy Markdown
Collaborator

Cherry-pick PR to 202511: #26171

dprital pushed a commit that referenced this pull request Mar 19, 2026
Summary:
During SWSS warm restart, the script swssconfig.sh replays only the TUNNEL_DECAP_TABLE subset from ipinip.json. This replay must not run on platforms that already recover IPinIP decap state from APP_DB. The current logic skipped replay only for Broadcom platform. This patch extends the skip behavior to marvell-teralynx ASICs.

Type of change:
Bug Fix - Adapting skipping of TUNNEL_DECAP replay in case of marvell-teralynx ASIC

How did you do it?
Updated warm-boot logic to skip applying ipinip.json for: marvell-teralynx similar to broadcom
Apply the filtered subset for all other ASICs.
This prevents duplicate tunnel-decap create operations during warm restart on Teralynx platforms.

How did you verify/test it?
Verified the behavior on Marvell-teralynx platform.

Any platform specific information?
YES, marvell-teralynx

Signed-off-by: Gnanapriya Sethuramarajan <[email protected]>
Co-authored-by: Lihua Yuan <[email protected]>
Signed-off-by: dprital <[email protected]>
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.

5 participants