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

[bufferpool] Unable to configure buffer pools for DNX based devices #7497

Closed
vganesan-nokia opened this issue Apr 30, 2021 · 1 comment
Closed
Labels
Triaged this issue has been triaged

Comments

@vganesan-nokia
Copy link
Contributor

vganesan-nokia commented Apr 30, 2021

Description

BUFFER_POOL configuration is not successful in platforms using DNX devices.

Steps to reproduce the issue:

  1. Have the buffer pool configuration similar to the following in the config_db.json
"BUFFER_POOL": {
        "lossless_pool1": {
            "size": "12766208",
            "type": "ingress",
            "mode": "dynamic"
        },
       "lossless_pool2": {
            "size": "12766208",
            "type": "egress",
            "mode": "dynamic"
        }
 }
  1. Apply this configurations from config_db.json

Describe the results you received:

  • The syncd logs indicates failure status with invalid parameter for the attribute SAI_BUFFER_POOL_ATTR_TYPE. This indicates no creation of buffer pool for type "ingress" and "egress"

Describe the results you expected:

  • Success status in syncd logs and successful buffer pool creation.

Additional information you deem important (e.g. issue happens only occasionally):

  • Investigation of this problem indicates that SAI ONLY supports buffer pool type both for DNX devices. But when the configuration is adjusted to mention type = "both" we get "Unknown pool type specificed" error log.
  • This issue is fixed by sonic-swss PR [bufferpool] Support for buffer pool type both sonic-swss#1735
neethajohn pushed a commit to sonic-net/sonic-swss that referenced this issue Jun 15, 2021
This PR is fix for the issue sonic-net/sonic-buildimage#7497

Signed-off-by: vedganes <vedavinayagam.ganesan@nokia.com>

What I did

Changes done to allow orchagent accepting "both" type for buffer pool
configuration.

Why I did it

Currently sonic supports only 'ingress' and 'egress' types of buffer pools.
Since some devices like DNX based switches only support buffer pool
type 'both', we are unable to create buffer pools for these devices.
This patch fixes this problem by enhancing buffer pool configuration to
accept "both" type.

How I verified it

In a switch that uses DNX arch based chips (like VOQ chassis using line cards with Jerico family of switches), the following configuration is applied

"BUFFER_POOL": {
        "lossless_pool": {
            "size": "12766208",
            "type": "both",
            "mode": "dynamic"
        }
 }
when the switch became operational, it was observed, there are no error logs indicating invalid parameter or failure of buffer pool creation.
@zhangyanzhao zhangyanzhao added the Triaged this issue has been triaged label Jul 21, 2021
@vganesan-nokia
Copy link
Contributor Author

Fixed by PR sonic-net/sonic-swss#1735

raphaelt-nvidia pushed a commit to raphaelt-nvidia/sonic-swss that referenced this issue Oct 5, 2021
This PR is fix for the issue sonic-net/sonic-buildimage#7497

Signed-off-by: vedganes <vedavinayagam.ganesan@nokia.com>

What I did

Changes done to allow orchagent accepting "both" type for buffer pool
configuration.

Why I did it

Currently sonic supports only 'ingress' and 'egress' types of buffer pools.
Since some devices like DNX based switches only support buffer pool
type 'both', we are unable to create buffer pools for these devices.
This patch fixes this problem by enhancing buffer pool configuration to
accept "both" type.

How I verified it

In a switch that uses DNX arch based chips (like VOQ chassis using line cards with Jerico family of switches), the following configuration is applied

"BUFFER_POOL": {
        "lossless_pool": {
            "size": "12766208",
            "type": "both",
            "mode": "dynamic"
        }
 }
when the switch became operational, it was observed, there are no error logs indicating invalid parameter or failure of buffer pool creation.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Triaged this issue has been triaged
Projects
None yet
Development

No branches or pull requests

2 participants