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

[buffermgr] Support maximum port headroom checking #1607

Merged
merged 2 commits into from
Feb 7, 2021

Conversation

stephenxs
Copy link
Collaborator

@stephenxs stephenxs commented Jan 25, 2021

What I did
Check the accumulative port headroom against the port's maximum headroom

On Mellanox platform, this PR depends on PR #6566 to be merged. In that PR the required SAI attribute is supported.
On other platforms, there is no dependency.

Signed-off-by: Stephen Sun [email protected]

Why I did it
On some platforms, the SAI will notify orchagent shut down if a headroom size that causes the accumulative port headroom to exceed its limit is programmed to SAI.
To avoid that, we need to check this before programming it to SAI.

How I verified it
Run the regression test.

Details if related

  • Fetch the maximum port headroom via fetching the port attribute SAI_PORT_ATTR_QOS_MAXIMUM_HEADROOM_SIZE when the orchagent starts and push the data into STATE_DB
  • Check the accumulative port headroom against the maximum headroom in buffer_check_headroom_.lua

- Which release branch to backport (provide reason below if selected)

  • 201811
  • 201911
  • 202006
  • 202012

- Fetch the maximum port headroom when the orchagent starts and push the data into STATE_DB
- Check the accumulative port headroom against the maximum headroom in buffer_check_headroom_<vendor>.lua

Signed-off-by: Stephen Sun <[email protected]>
@liat-grozovik
Copy link
Collaborator

@stephenxs I believe this need to be merged only after Mellanox SAI 1.18.1.0 is merged. If so, can you please connect it to the PR?

@liat-grozovik
Copy link
Collaborator

@neethajohn can you please review?

orchagent/portsorch.cpp Outdated Show resolved Hide resolved
Signed-off-by: Stephen Sun <[email protected]>
@stephenxs
Copy link
Collaborator Author

@stephenxs I believe this need to be merged only after Mellanox SAI 1.18.1.0 is merged. If so, can you please connect it to the PR?

Done

@neethajohn neethajohn merged commit 189a964 into sonic-net:master Feb 7, 2021
@stephenxs stephenxs deleted the exceed-headroom-limit branch February 7, 2021 23:33
@liat-grozovik
Copy link
Collaborator

@daall can you please add 202012 label?

yxieca pushed a commit that referenced this pull request Feb 23, 2021
* Support maximum port headroom checking

- Fetch the maximum port headroom via fetching the port attribute SAI_PORT_ATTR_QOS_MAXIMUM_HEADROOM_SIZE when the orchagent starts and push the data into STATE_DB
- Check the accumulative port headroom against the maximum headroom in buffer_check_headroom_<vendor>.lua

On Mellanox platform, this PR depends on PR #6566 to be merged. In that PR the required SAI attribute is supported.
On other platforms, there is no dependency.

Signed-off-by: Stephen Sun [email protected]

Why I did it
On some platforms, the SAI will notify orchagent shut down if a headroom size that causes the accumulative port headroom to exceed its limit is programmed to SAI.
To avoid that, we need to check this before programming it to SAI.

How I verified it
Run the regression test.
DavidZagury pushed a commit to DavidZagury/sonic-swss that referenced this pull request Mar 4, 2021
* Support maximum port headroom checking

- Fetch the maximum port headroom via fetching the port attribute SAI_PORT_ATTR_QOS_MAXIMUM_HEADROOM_SIZE when the orchagent starts and push the data into STATE_DB
- Check the accumulative port headroom against the maximum headroom in buffer_check_headroom_<vendor>.lua

On Mellanox platform, this PR depends on PR #6566 to be merged. In that PR the required SAI attribute is supported.
On other platforms, there is no dependency.

Signed-off-by: Stephen Sun [email protected]

Why I did it
On some platforms, the SAI will notify orchagent shut down if a headroom size that causes the accumulative port headroom to exceed its limit is programmed to SAI.
To avoid that, we need to check this before programming it to SAI.

How I verified it
Run the regression test.
prsunny added a commit that referenced this pull request Mar 19, 2021
prsunny added a commit that referenced this pull request Mar 21, 2021
daall pushed a commit that referenced this pull request Mar 22, 2021
prsunny added a commit that referenced this pull request Mar 25, 2021
prsunny added a commit that referenced this pull request Mar 26, 2021
yxieca pushed a commit that referenced this pull request Mar 26, 2021
raphaelt-nvidia pushed a commit to raphaelt-nvidia/sonic-swss that referenced this pull request Oct 5, 2021
* Support maximum port headroom checking

- Fetch the maximum port headroom via fetching the port attribute SAI_PORT_ATTR_QOS_MAXIMUM_HEADROOM_SIZE when the orchagent starts and push the data into STATE_DB
- Check the accumulative port headroom against the maximum headroom in buffer_check_headroom_<vendor>.lua

On Mellanox platform, this PR depends on PR #6566 to be merged. In that PR the required SAI attribute is supported.
On other platforms, there is no dependency.

Signed-off-by: Stephen Sun [email protected]

Why I did it
On some platforms, the SAI will notify orchagent shut down if a headroom size that causes the accumulative port headroom to exceed its limit is programmed to SAI.
To avoid that, we need to check this before programming it to SAI.

How I verified it
Run the regression test.
raphaelt-nvidia pushed a commit to raphaelt-nvidia/sonic-swss that referenced this pull request Oct 5, 2021
raphaelt-nvidia pushed a commit to raphaelt-nvidia/sonic-swss that referenced this pull request Oct 5, 2021
EdenGri pushed a commit to EdenGri/sonic-swss that referenced this pull request Feb 28, 2022
…forms (sonic-net#1607)

What I did
Skip sonic package migration on aboot platform.

How I did it
Added a warning and skip the migration.

How to verify it
I changed AbootBootloader to OnieInstallerBootloader to test on my Onie device. I don't have Aboot device.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants