-
Notifications
You must be signed in to change notification settings - Fork 670
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
Fix multi-asic behaviour for ecnconfig #3062
Fix multi-asic behaviour for ecnconfig #3062
Conversation
51125da
to
32b5505
Compare
please re-base the PR to latest |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
please share command and it's output from multi asic platform. Also, please make sure it still works for ToR.
@@ -197,5 +197,16 @@ | |||
"holdtime": "0", | |||
"asn": "65100", | |||
"keepalive": "0" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this profile should be for lossless not lossy
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comment is outdated, but to address it, the test vectors are added as a dummy to validate the functionality.
yellow_drop_probability 5 | ||
red_drop_probability 5 | ||
----------------------- ------- | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
there shouldn't be wred on lossy. please fix this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@vmittal-msft WRED has been removed from lossy.
32b5505
to
acfd7f4
Compare
acfd7f4
to
067731e
Compare
"wred_yellow_enable":"true", | ||
"red_max_threshold":"32760", | ||
"red_min_threshold":"4095", | ||
"yellow_max_threshold":"32760", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
please remove wred on lossy
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@vmittal-msft WRED has been removed from lossy.
@bktsim-arista |
/Azp run Azure.sonic-utilities |
Azure Pipelines successfully started running 1 pipeline(s). |
Previously, ecnconfig -l was not behaving correctly on multi-asic devices, as the '-n' namespace option was not available, and correct namespaces were not traversed on multi-asic devices to retrieve correct results for ecnconfig. This change fixes multi-asic behaviour of CLI commands that rely on ecnconfig.
693686c
to
f59a2c8
Compare
- Removed unix socket and fixed failing unit test - Replace argparse with click - Add multi-asic support for get and set queue - Add multi-asic support for set threshold and prob - Modify test framework to support multi-asic - Use multi_asic decorators - Resolve precommit errors
f59a2c8
to
f995b3b
Compare
@arlakshm @vmittal-msft @wenyiz2021 this PR is ready for review. All tests have passed with the latest updates. It will be easier to review with whitespace difference disabled because the new static checks requires reformatting (e.g. spacing) of touched Python files. |
Here are the snapshots obtained after running it on a multi-asic devise:
|
Yes, behaviour on single asic devices is preserved and when no namespace is given, it will show/set for all |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am assuming this is verified on T0/T1 device as well to make sure it is fine.
No, it has not been tested on T0/T1 devices yet. I will update the PR once I have tested it on the same. |
* Fixes multi-asic behaviour for ecnconfig. Previously, ecnconfig -l was not behaving correctly on multi-asic devices, as the '-n' namespace option was not available, and correct namespaces were not traversed on multi-asic devices to retrieve correct results for ecnconfig. This change fixes multi-asic behaviour of CLI commands that rely on ecnconfig. * tests cleanup * Remove wred on lossy * Addendum to previous commit regarding wred lossy * Enhancements to multi-asic support in ecnconfig - Removed unix socket and fixed failing unit test - Replace argparse with click - Add multi-asic support for get and set queue - Add multi-asic support for set threshold and prob - Modify test framework to support multi-asic - Use multi_asic decorators - Resolve precommit errors --------- Co-authored-by: rdjeric <rdjeric@arista.com> Co-authored-by: arista-hpandya <hpandya@arista.com>
Cherry-pick PR to 202405: #3636 |
* Fixes multi-asic behaviour for ecnconfig. Previously, ecnconfig -l was not behaving correctly on multi-asic devices, as the '-n' namespace option was not available, and correct namespaces were not traversed on multi-asic devices to retrieve correct results for ecnconfig. This change fixes multi-asic behaviour of CLI commands that rely on ecnconfig. * tests cleanup * Remove wred on lossy * Addendum to previous commit regarding wred lossy * Enhancements to multi-asic support in ecnconfig - Removed unix socket and fixed failing unit test - Replace argparse with click - Add multi-asic support for get and set queue - Add multi-asic support for set threshold and prob - Modify test framework to support multi-asic - Use multi_asic decorators - Resolve precommit errors --------- Co-authored-by: rdjeric <rdjeric@arista.com> Co-authored-by: arista-hpandya <hpandya@arista.com>
What I did
Previously, ecnconfig -l was not behaving correctly on multi-asic devices, as the '-n' namespace option was not available, and correct namespaces were not traversed on multi-asic devices to retrieve correct results for ecnconfig. This change fixes multi-asic behaviour of CLI commands that rely on ecnconfig.
This is a part of the set of changes being pushed for sonic-net/sonic-buildimage#15148
This change relies on helpers added in sonic-net/sonic-buildimage#17243
How I did it
Added namespace option -n and used multi_asic library to implement multi_asic behaviour. Added relevant unit tests to ensure functionality.
How to verify it
Run unit tests, or ecnconfig commands with option
-n
.