-
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][202106] Reclaim unused buffers by applying zero buffer profiles #9062
Conversation
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 <stephens@nvidia.com> Conflicts: device/mellanox/x86_64-mlnx_msn4600c-r0/Mellanox-SN4600C-C64/buffers_defaults_t0.j2 device/mellanox/x86_64-mlnx_msn4600c-r0/Mellanox-SN4600C-C64/buffers_defaults_t1.j2
Signed-off-by: Stephen Sun <stephens@nvidia.com>
Signed-off-by: Stephen Sun <stephens@nvidia.com>
Signed-off-by: Stephen Sun <stephens@nvidia.com>
Signed-off-by: Stephen Sun <stephens@nvidia.com>
1d43dbb
to
3998724
Compare
Signed-off-by: Stephen Sun <stephens@nvidia.com>
…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 <stephens@nvidia.com>
…_render_template test" This reverts commit 762fd42.
@neethajohn There are new commits after you approval. Could you check again? |
There is still ci failures that look like related to the PR. I am still investigating. |
- buffer template files for all Mellanox SKUs - update test case output files Signed-off-by: Stephen Sun <stephens@nvidia.com>
…onic-buildimage into zero-profiles-202106
Signed-off-by: Stephen Sun <stephens@nvidia.com>
All ci checkers passed. @neethajohn can you please review it? thanks |
This is to backport community PR #8768 to 202106 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 stephens@nvidia.com
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)