-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
[Reclaim buffer][202012] Reclaim unused buffers by applying zero buffer profiles #9063
Merged
liat-grozovik
merged 12 commits into
sonic-net:202012
from
stephenxs:zero-profile-202012
Dec 9, 2021
Merged
[Reclaim buffer][202012] Reclaim unused buffers by applying zero buffer profiles #9063
liat-grozovik
merged 12 commits into
sonic-net:202012
from
stephenxs:zero-profile-202012
Dec 9, 2021
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
1. Add buffer profiles and pool definition for zero buffer profiles - If buffer model is static: - Apply normal buffer profiles to admin-up ports - Apply zero buffer profiles to admin-down ports - If buffer model is dynamic: - Apply normal buffer profiles to all ports - buffer manager will take care when a port is shutdown 2. To make code clean and reduce redundant code, extract common macros from buffer_defaults_t{0,1}.j2 of all SKUs to two common files: - one in Mellanox-SN2700 for single ingress pool mode - the other in ACS-MSN2700 for double ingress pool mode Those files of all other SKUs will be symbol link to the above files 3. Adjust example output file of json template for unit test Signed-off-by: Stephen Sun <[email protected]>
Signed-off-by: Stephen Sun <[email protected]>
Signed-off-by: Stephen Sun <[email protected]>
Signed-off-by: Stephen Sun <[email protected]>
Signed-off-by: Stephen Sun <[email protected]>
Signed-off-by: Stephen Sun <[email protected]>
neethajohn
approved these changes
Dec 6, 2021
…template test Do not use pytest fixture in the test since it is not compatible with unittest which is used by all of other testcases. Signed-off-by: Stephen Sun <[email protected]>
…_render_template test" This reverts commit 837df68.
- buffer template files for all Mellanox SKUs - update test case output files Signed-off-by: Stephen Sun <[email protected]>
Signed-off-by: Stephen Sun <[email protected]>
Signed-off-by: stephens <[email protected]>
/azpw run Azure.sonic-buildimage |
/AzurePipelines run Azure.sonic-buildimage |
Azure Pipelines successfully started running 1 pipeline(s). |
neethajohn
approved these changes
Dec 8, 2021
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is to backport community PR #8768 to 202012 branch
Why I did it
Support zero buffer profiles
INACTIVE PORTS
dynamic buffer manager
to load zero pools and profiles from a JSON fileSigned-off-by: Stephen Sun [email protected]
How I did it
Add buffer profiles and pool definition for zero buffer profiles
Update
buffers_config.j2
to supportINACTIVE PORTS
by extending the existing macros to generate the various buffer objects, including PGs, queues, ingress/egress profile listsEnable
buffer manager
to load zero pools and profiles from a JSON file:platform/<vendor>
folder to/usr/share/sonic/temlates
folder in compiling time and rendered when the swss container is being created.To make code clean and reduce redundant code, extract common macros from buffer_defaults_t{0,1}.j2 of all SKUs to two common files:
Those files of all other SKUs will be symbol link to the above files
Update
sonic-cfggen
test accordingly:How to verify it
Run regression test and manually test.
Which release branch to backport (provide reason below if selected)
Description for the changelog
A picture of a cute animal (not mandatory but encouraged)