Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for headroom pool watermark #1453

Merged
merged 7 commits into from
Dec 9, 2020

Conversation

neethajohn
Copy link
Contributor

@neethajohn neethajohn commented Sep 30, 2020

What I did
Added 'SAI_BUFFER_POOL_STAT_XOFF_ROOM_WATERMARK_BYTES' in the interested counters to be queried
Updated the the buffer lua script to update the headroom pool watermark counters
Updated watermark orch to act on headroom pool clear request

Why I did it
To expose the headroom pool watermark counters in SONiC

How I verified it
On platforms with headroom pool support, verified that headroom pool watermark counters are getting updated as expected

admin@sonic:~$ show headroom-pool persistent-watermark 
Headroom pool maximum occupancy:
                 Pool    Bytes
---------------------  -------
ingress_lossless_pool   863616

On platforms without headroom pool support, headroom pool watermark counters show as N/A

admin@sonic:~$ show headroom-pool persistent-watermark 
Headroom pool maximum occupancy:
                 Pool    Bytes
---------------------  -------
ingress_lossless_pool      N/A

New sonic mgmt test added and it passed. sonic-net/sonic-mgmt#2614

orchagent/watermarkorch.cpp Outdated Show resolved Hide resolved
Signed-off-by: Neetha John <[email protected]>
@neethajohn
Copy link
Contributor Author

retest this please

2 similar comments
@neethajohn
Copy link
Contributor Author

retest this please

@neethajohn
Copy link
Contributor Author

retest this please

@neethajohn
Copy link
Contributor Author

retest this please

@neethajohn
Copy link
Contributor Author

retest vs please

@neethajohn
Copy link
Contributor Author

retest this please

@neethajohn
Copy link
Contributor Author

retest vs please

@neethajohn neethajohn merged commit 599ed41 into sonic-net:master Dec 9, 2020
neethajohn added a commit to sonic-net/sonic-utilities that referenced this pull request Dec 9, 2020
Depends on sonic-net/sonic-swss#1453

- What I did
Added support to query and clear headroom pool watermark counters
Added unit test for the headroom pool watermark counters

- How I did it
Modified watermarkstat script to query/clear headroom pool watermark counters
Added show and clear commands

- How to verify it
Send traffic such that it treks into the headroom pool and check for the headroom pool usage using the show command below
Set polling interval to 30s and issue clear commands mentioned below and verify that counters are cleared

- New command output (if the output of a command-line utility has changed)
Show commands
admin@sonic:~$ show headroom-pool watermark 
Headroom pool maximum occupancy:
                 Pool    Bytes
---------------------  -------
ingress_lossless_pool    12480

admin@sonic:~$ show headroom-pool persistent-watermark 
Headroom pool maximum occupancy:
                 Pool    Bytes
---------------------  -------
ingress_lossless_pool    12480

Clear commands
admin@sonic:~$ sudo sonic-clear headroom-pool watermark 
admin@sonic:~$ sudo sonic-clear headroom-pool persistent-watermark 

Signed-off-by: Neetha John <[email protected]>
arlakshm pushed a commit to arlakshm/sonic-swss that referenced this pull request Dec 15, 2020
What I did
Added 'SAI_BUFFER_POOL_STAT_XOFF_ROOM_WATERMARK_BYTES' in the interested counters to be queried
Updated the the buffer lua script to update the headroom pool watermark counters
Updated watermark orch to act on headroom pool clear request

Why I did it
To expose the headroom pool watermark counters in SONiC

How I verified it
On platforms with headroom pool support, verified that headroom pool watermark counters are getting updated as expected
On platforms without headroom pool support, headroom pool watermark counters show as N/A
New sonic mgmt test added and it passed. sonic-net/sonic-mgmt#2614

Signed-off-by: Neetha John <[email protected]>
Signed-off-by: Arvindsrinivasan Lakshmi Narasimhan <[email protected]>
lguohan added a commit that referenced this pull request Dec 22, 2020
neethajohn added a commit that referenced this pull request Dec 23, 2020
Signed-off-by: Neetha John <[email protected]>

Includes all the changes in #1453 along with fix for error msgs seen in syslog - Got invalid response type from redis 5
The error msg was due to incorrect return type in lua script.

What I did
Added 'SAI_BUFFER_POOL_STAT_XOFF_ROOM_WATERMARK_BYTES' in the interested counters to be queried
Updated the the buffer lua script to update the headroom pool watermark counters
Updated watermark orch to act on headroom pool clear request

Why I did it
To expose the headroom pool watermark counters in SONiC

How I verified it
On platforms with headroom pool support, verified that headroom pool watermark counters are getting updated as expected

admin@sonic:~$ show headroom-pool persistent-watermark 
Headroom pool maximum occupancy:
                 Pool    Bytes
---------------------  -------
ingress_lossless_pool   863616
On platforms without headroom pool support, headroom pool watermark counters show as N/A

admin@sonic:~$ show headroom-pool persistent-watermark 
Headroom pool maximum occupancy:
                 Pool    Bytes
---------------------  -------
ingress_lossless_pool      N/A
New sonic mgmt test added and it passed. sonic-net/sonic-mgmt#2614

Verified the error msg seen in syslog by enabling buffer pool watermark on vs docker. With the fix, build a new vs docker and verified that the msgs are no longer seen when buffer pool watermark is enabled.
anand-kumar-subramanian pushed a commit to anand-kumar-subramanian/sonic-utilities that referenced this pull request Mar 2, 2021
Depends on sonic-net/sonic-swss#1453

- What I did
Added support to query and clear headroom pool watermark counters
Added unit test for the headroom pool watermark counters

- How I did it
Modified watermarkstat script to query/clear headroom pool watermark counters
Added show and clear commands

- How to verify it
Send traffic such that it treks into the headroom pool and check for the headroom pool usage using the show command below
Set polling interval to 30s and issue clear commands mentioned below and verify that counters are cleared

- New command output (if the output of a command-line utility has changed)
Show commands
admin@sonic:~$ show headroom-pool watermark 
Headroom pool maximum occupancy:
                 Pool    Bytes
---------------------  -------
ingress_lossless_pool    12480

admin@sonic:~$ show headroom-pool persistent-watermark 
Headroom pool maximum occupancy:
                 Pool    Bytes
---------------------  -------
ingress_lossless_pool    12480

Clear commands
admin@sonic:~$ sudo sonic-clear headroom-pool watermark 
admin@sonic:~$ sudo sonic-clear headroom-pool persistent-watermark 

Signed-off-by: Neetha John <[email protected]>
EdenGri pushed a commit to EdenGri/sonic-swss that referenced this pull request Feb 28, 2022
What I did
Add a new reboot named as soft-reboot which can be performed by "kexec -e"

How I did it
Replace the platform reboot with "kexec -e" for the cold reboot case.

How to verify it
Verified the reboot on DUT and check the reboot-cause
EdenGri pushed a commit to EdenGri/sonic-swss that referenced this pull request Feb 28, 2022
* mclagsyncd enhancements as per HLD at sonic-net/SONiC#596

* addressed LGTM alert

* UT Fix unique IP configuration

* modified ip address validate function for mclag config verication

* Add soft-reboot reboot type (sonic-net#1453)

What I did
Add a new reboot named as soft-reboot which can be performed by "kexec -e"

How I did it
Replace the platform reboot with "kexec -e" for the cold reboot case.

How to verify it
Verified the reboot on DUT and check the reboot-cause

* [warm-reboot] Check if warm restart flag is set when issuing a warm-reboot (sonic-net#1460)

Check if any warm restart flag is set when issuing a warm-reboot. This check avoids starting a warm reboot while another warm restart is in progress. In the scenario where a warm reboot is issued with another warm restart in progress, the warm restart flag may be reset and part of the components have a risk of doing cold reboot.

* Added mclag config commands

* removed unwanted imports

* added mclag tests

* fixed build issue

* corrected mclag test

* corrected mclag test

* corrected mclag test case

* updated testcase for mclag

* updated mclag config

* updated mclag test cases

* updated mclag test case

* updated mclag test cases

* fixed alert

* updated mclag test cases

* updated mclag test cases

* updated mclag config

* modified mclag test cases

* updated mclag test case

* updated mclag test case

* updated mclag test cases

* updated mclag test cases

* updated mclag test cases

* updated mclag test case

* updated mclag test case

* updated mclag test cases

* updated mclag test cases

* updated mclag test cases

* updated mclag test cases

* updated mclag test case

* updated mclag test cases

* updated mclag test cases

* updated mclag test cases

* updated mclag test cases

* updated mclag test cases

* updated mclag test cases

* updated mclag test cases

* updated mclag test cases

* updated mclag test case

* updated mclag test cases

* updated mclag test case

* updated mclag config to use swsscommon instead of swssdk

* updated mclag config to use swsscommon

* updated mclag config script file

* fixed mclag test cases to verify config db

* updated mclag test case with config db verify function

* fixed build issue

* updated test case

* updated mclag test case

* addressed review comments

Co-authored-by: Tapash Das <[email protected]>
Co-authored-by: Tapash Das <[email protected]>
Co-authored-by: Sujin Kang <[email protected]>
Co-authored-by: Shi Su <[email protected]>
malletvapid23 added a commit to malletvapid23/Sonic-Utility that referenced this pull request Aug 3, 2023
Depends on sonic-net/sonic-swss#1453

- What I did
Added support to query and clear headroom pool watermark counters
Added unit test for the headroom pool watermark counters

- How I did it
Modified watermarkstat script to query/clear headroom pool watermark counters
Added show and clear commands

- How to verify it
Send traffic such that it treks into the headroom pool and check for the headroom pool usage using the show command below
Set polling interval to 30s and issue clear commands mentioned below and verify that counters are cleared

- New command output (if the output of a command-line utility has changed)
Show commands
admin@sonic:~$ show headroom-pool watermark 
Headroom pool maximum occupancy:
                 Pool    Bytes
---------------------  -------
ingress_lossless_pool    12480

admin@sonic:~$ show headroom-pool persistent-watermark 
Headroom pool maximum occupancy:
                 Pool    Bytes
---------------------  -------
ingress_lossless_pool    12480

Clear commands
admin@sonic:~$ sudo sonic-clear headroom-pool watermark 
admin@sonic:~$ sudo sonic-clear headroom-pool persistent-watermark 

Signed-off-by: Neetha John <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants