sonic-mgmt
sonic-mgmt copied to clipboard
Skip check for Rx PFC count if multiple lossy TC bits are set
Description of PR
Skip check for Rx PFC counter if multiple lossy TC bits are set. This is a cisco-8000 specific check. Rx counter is incremented only if a single lossy TC bit is set.
Type of change
- [x] Bug fix
- [ ] Testbed and Framework(new/improvement)
- [ ] Test case(new/improvement)
Back port request
- [ ] 202012
- [ ] 202205
- [ ] 202305
- [ ] 202311
- [x] 202405
Approach
What is the motivation for this PR?
How did you do it?
How did you verify/test it?
Ran snappi tests for lossy/lossless to confirm:
=============================================== short test summary info ================================================
PASSED snappi_tests/pfc/test_pfc_pause_lossy_with_snappi.py::test_pfc_pause_single_lossy_prio[aaa14-ixia-m64|0]
PASSED snappi_tests/pfc/test_pfc_pause_lossy_with_snappi.py::test_pfc_pause_single_lossy_prio[aaa14-ixia-m64|1]
PASSED snappi_tests/pfc/test_pfc_pause_lossy_with_snappi.py::test_pfc_pause_single_lossy_prio[aaa14-ixia-m64|2]
PASSED snappi_tests/pfc/test_pfc_pause_lossy_with_snappi.py::test_pfc_pause_single_lossy_prio[aaa14-ixia-m64|5]
PASSED snappi_tests/pfc/test_pfc_pause_lossy_with_snappi.py::test_pfc_pause_single_lossy_prio[aaa14-ixia-m64|6]
PASSED snappi_tests/pfc/test_pfc_pause_lossy_with_snappi.py::test_pfc_pause_multi_lossy_prio
PASSED snappi_tests/pfc/test_pfc_pause_lossy_with_snappi.py::test_pfc_pause_single_lossy_prio_reboot[cold]
PASSED snappi_tests/pfc/test_pfc_pause_lossy_with_snappi.py::test_pfc_pause_multi_lossy_prio_reboot[cold]
SKIPPED [2] common/helpers/assertions.py:16: Reboot type warm is not supported on cisco-8000 switches
SKIPPED [2] common/helpers/assertions.py:16: Reboot type fast is not supported on cisco-8000 switches
================================ 8 passed, 4 skipped, 12 warnings in 2715.22s (0:45:15) ================================
============================================== short test summary info ===============================================
PASSED snappi_tests/pfc/test_pfc_pause_lossless_with_snappi.py::test_pfc_pause_single_lossless_prio[aaa14-ixia-m64|3]
PASSED snappi_tests/pfc/test_pfc_pause_lossless_with_snappi.py::test_pfc_pause_single_lossless_prio[aaa14-ixia-m64|4]
PASSED snappi_tests/pfc/test_pfc_pause_lossless_with_snappi.py::test_pfc_pause_counter_check[aaa14-ixia-m64|3]
PASSED snappi_tests/pfc/test_pfc_pause_lossless_with_snappi.py::test_pfc_pause_counter_check[aaa14-ixia-m64|4]
PASSED snappi_tests/pfc/test_pfc_pause_lossless_with_snappi.py::test_pfc_pause_multi_lossless_prio
PASSED snappi_tests/pfc/test_pfc_pause_lossless_with_snappi.py::test_pfc_pause_single_lossless_prio_reboot[cold]
PASSED snappi_tests/pfc/test_pfc_pause_lossless_with_snappi.py::test_pfc_pause_multi_lossless_prio_reboot[cold]
SKIPPED [2] common/helpers/assertions.py:16: Reboot type warm is not supported on cisco-8000 switches
SKIPPED [2] common/helpers/assertions.py:16: Reboot type fast is not supported on cisco-8000 switches
=============================== 7 passed, 4 skipped, 11 warnings in 2275.18s (0:37:55) ===============================
Any platform specific information?
Applicable for all cisco-8000 platforms.
Supported testbed topology if it's a new test case?
Documentation
FYI: @kevinwangsk @sdszhang @rraghav-cisco @rbpittman
@sdszhang : We need this for multidut as well.
@sdszhang : We need this for multidut as well.
Thanks @rraghav-cisco. can you port this to multidut?
@sdszhang : We need this for multidut as well.
Thanks @rraghav-cisco. can you port this to multidut?
@sdszhang , I meant this PR is needed to be tracked in our xls sheet in the t2-ixia community meeting.. It takes care of multidut as well.
@alpeshspatel could you clear out the reason why we need to skip checking the rx pfc counter if multiple tc bit is set?
@alpeshspatel could you clear out the reason why we need to skip checking the rx pfc counter if multiple tc bit is set?
@kevinskwang The ASIC does not count if multiple lossy TC bits are set. Only if a single bit is set.
Cherry-pick PR to 202405: https://github.com/sonic-net/sonic-mgmt/pull/15382