-
Notifications
You must be signed in to change notification settings - Fork 543
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
[Dynamic Buffer Calc] Enhance the logic to check maximum headroom exceeding to cover corner scenarios #2763
Conversation
All test cases are failed due to the following error which should be fixed by sonic-net/sonic-utilities#2830
|
cherry-pickable to 202211 based on the lastest commit |
/azp run Azure.sonic-swss |
Azure Pipelines successfully started running 1 pipeline(s). |
The same error as before
|
1. Take the pending PG keys into consideration when calculating the maximum headroom 2. Pass the PG to the Lua plugin when refreshing PGs for a port Signed-off-by: Stephen Sun <stephens@nvidia.com>
Signed-off-by: Stephen Sun <stephens@nvidia.com>
Signed-off-by: Stephen Sun <stephens@nvidia.com>
5b9dd0f
to
f1b589e
Compare
@stephenxs maybe this PR can help to unblock the checker? #2767 |
thanks, @keboliu but I have already done it in the morning and the test failed in my case. checking. |
…seconds Signed-off-by: Stephen Sun <stephens@nvidia.com>
/azpw run |
/AzurePipelines run |
Azure Pipelines successfully started running 1 pipeline(s). |
Signed-off-by: Stephen Sun <stephens@nvidia.com>
Signed-off-by: Stephen Sun <stephens@nvidia.com>
It turns out to be that the test failed on the Azure pipeline because the config_db updates were received in a different order in which they were received in my local vs testbed. |
Signed-off-by: Stephen Sun <stephens@nvidia.com>
Signed-off-by: Stephen Sun <stephens@nvidia.com>
Signed-off-by: Stephen Sun <stephens@nvidia.com>
This reverts commit c12a9e5.
/azpw run |
/AzurePipelines run |
Azure Pipelines successfully started running 1 pipeline(s). |
Failed due to irrelevant test cases. Retriggered
|
Signed-off-by: Stephen Sun <stephens@nvidia.com>
@StormLiangMS could you please cherry-pick the PR to 202211? thanks. |
…eeding to cover corner scenarios (#2763) What I did Enhance the logic to check maximum headroom exceeding to cover corner scenarios Currently, the logic to check the maximum headroom exceeding works well when a user changes any buffer configuration in the dynamic buffer model, preventing all problematic configurations from being applied to the ASIC. However, it can fail when a problematic configuration is config_db.json and config reload is executed. To cover this scenario, the following actions need to be done: Take the pending PG keys and buffer profiles into account when calculating the maximum headroom Existing buffer PGs and buffer profiles can be in the pending queue since there are a large number of notifications needed to be handled during system initialization, which takes time. Take the lossy PG into account when calculating the maximum headroom. Non-default lossy PG can be added by the user in config_db.json Pass the PG to the Lua plugin when refreshing PGs for a port Signed-off-by: Stephen Sun stephens@nvidia.com Why I did it Cover corner scenarios. How I verified it Manual test, vs test, regression test (dynamic buffer)
What I did
Enhance the logic to check maximum headroom exceeding to cover corner scenarios
Currently, the logic to check the maximum headroom exceeding works well when a user changes any buffer configuration in the dynamic buffer model, preventing all problematic configurations from being applied to the ASIC.
However, it can fail when a problematic configuration is
config_db.json
andconfig reload
is executed. To cover this scenario, the following actions need to be done:config_db.json
Signed-off-by: Stephen Sun stephens@nvidia.com
Why I did it
Cover corner scenarios.
How I verified it
Manual test, vs test, regression test (dynamic buffer)
Details if related