Skip to content

Generate PFC storm using PFC backpressure on additional Arista devices#18033

Merged
StormLiangMS merged 9 commits intosonic-net:masterfrom
andywongarista:pfc_gen_backpressure_th_th2
Apr 24, 2025
Merged

Generate PFC storm using PFC backpressure on additional Arista devices#18033
StormLiangMS merged 9 commits intosonic-net:masterfrom
andywongarista:pfc_gen_backpressure_th_th2

Conversation

@andywongarista
Copy link
Contributor

Description of PR

NOTE: This is a duplicate of #17971, as @veronica-arista is away.

Add a pfc_gen script for Arista fanout devices to generate pfc pause frames by setting PFC backpressure status in hardware. Enable the storm generation to use this script on interfaces that are connected to Arista fanout devices running EOS or Sonic. Currently supports the following Arista devices:
Arista-7060X6
Arista-7060DX5
Arista-7060PX5
Arista-7060CX
Arista-7260CX3
Arista-7260QX3

This is implemented on top of PR #15594

Summary:
Fixes # (issue)

Type of change

  • Bug fix
  • Testbed and Framework(new/improvement)
  • New Test case
    • Skipped for non-supported platforms
  • Test case improvement

Back port request

  • 202012
  • 202205
  • 202305
  • 202311
  • 202405
  • 202411

Approach

What is the motivation for this PR?

Adds more reliable PFC storm generation for interfaces connected to Arista fanout devices

How did you do it?

How did you verify/test it?

Ran sonic-mgmt pfcwd tests on testbed with Arista fanout switches of the listed SKUs running EOS.
Ran the pfc_gen script manually on Arista switches running Sonic.

Any platform specific information?

Supported testbed topology if it's a new test case?

Documentation

veronica-arista and others added 8 commits November 15, 2024 20:59
Add a pfc_gen script that generates storm by directly setting PFC
backpressure status in hardware (using broadcom shell commands) and
modify pfc_storm to use this new script if the port is connected to th5
MPC. Intended to upstream for MSFT.
@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).

Copy link
Contributor

@lipxu lipxu left a comment

Choose a reason for hiding this comment

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

LGTM

@lipxu
Copy link
Contributor

lipxu commented Apr 21, 2025

Thanks @andywongarista , If you have a chance to verify this enhancement with the case "test_pfcwd_timer_accuracy"? If yes, could you please provide the "sorted all detect time" value with this enhancement, thanks a lot

Copy link
Contributor

@XuChen-MSFT XuChen-MSFT left a comment

Choose a reason for hiding this comment

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

ʟɢᴛᴍ

@andywongarista
Copy link
Contributor Author

Thanks @andywongarista , If you have a chance to verify this enhancement with the case "test_pfcwd_timer_accuracy"? If yes, could you please provide the "sorted all detect time" value with this enhancement, thanks a lot

From a 7260 testbed:
sorted all detect time [400, 428, 447, 478, 485, 500, 512, 514, 517, 553, 570, 579, 646, 738, 750, 764, 775, 795, 796]

Copy link
Collaborator

@StormLiangMS StormLiangMS left a comment

Choose a reason for hiding this comment

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

LGTM

@mssonicbld
Copy link
Collaborator

Cherry-pick PR to msft-202412: Azure/sonic-mgmt.msft#222

mssonicbld pushed a commit to mssonicbld/sonic-mgmt that referenced this pull request May 8, 2025
sonic-net#18033)

What is the motivation for this PR?
Adds more reliable PFC storm generation for interfaces connected to Arista fanout devices

How did you do it?
How did you verify/test it?
Ran sonic-mgmt pfcwd tests on testbed with Arista fanout switches of the listed SKUs running EOS.
Ran the pfc_gen script manually on Arista switches running Sonic.
@mssonicbld
Copy link
Collaborator

Cherry-pick PR to 202411: #18285

opcoder0 pushed a commit to opcoder0/sonic-mgmt that referenced this pull request Dec 8, 2025
sonic-net#18033)

What is the motivation for this PR?
Adds more reliable PFC storm generation for interfaces connected to Arista fanout devices

How did you do it?
How did you verify/test it?
Ran sonic-mgmt pfcwd tests on testbed with Arista fanout switches of the listed SKUs running EOS.
Ran the pfc_gen script manually on Arista switches running Sonic.

Signed-off-by: opcoder0 <110003254+opcoder0@users.noreply.github.com>
AharonMalkin pushed a commit to AharonMalkin/sonic-mgmt that referenced this pull request Dec 16, 2025
sonic-net#18033)

What is the motivation for this PR?
Adds more reliable PFC storm generation for interfaces connected to Arista fanout devices

How did you do it?
How did you verify/test it?
Ran sonic-mgmt pfcwd tests on testbed with Arista fanout switches of the listed SKUs running EOS.
Ran the pfc_gen script manually on Arista switches running Sonic.

Signed-off-by: Aharon Malkin <amalkin@nvidia.com>
gshemesh2 pushed a commit to gshemesh2/sonic-mgmt that referenced this pull request Dec 21, 2025
sonic-net#18033)

What is the motivation for this PR?
Adds more reliable PFC storm generation for interfaces connected to Arista fanout devices

How did you do it?
How did you verify/test it?
Ran sonic-mgmt pfcwd tests on testbed with Arista fanout switches of the listed SKUs running EOS.
Ran the pfc_gen script manually on Arista switches running Sonic.

Signed-off-by: Guy Shemesh <gshemesh@nvidia.com>
gshemesh2 pushed a commit to gshemesh2/sonic-mgmt that referenced this pull request Jan 26, 2026
sonic-net#18033)

What is the motivation for this PR?
Adds more reliable PFC storm generation for interfaces connected to Arista fanout devices

How did you do it?
How did you verify/test it?
Ran sonic-mgmt pfcwd tests on testbed with Arista fanout switches of the listed SKUs running EOS.
Ran the pfc_gen script manually on Arista switches running Sonic.

Signed-off-by: Guy Shemesh <gshemesh@nvidia.com>
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.

6 participants