[action] [PR:3385] Capability query for MACSEC ACL attribute#3511
Merged
mssonicbld merged 1 commit intosonic-net:202411from Feb 11, 2025
Merged
[action] [PR:3385] Capability query for MACSEC ACL attribute#3511mssonicbld merged 1 commit intosonic-net:202411from
mssonicbld merged 1 commit intosonic-net:202411from
Conversation
What I did -Modified the MACsec orchestration logic to conditionally include or exclude the ability to match the SCI in ACL configurations based on the ASIC's capabilities. -Implemented a capability check in SONiC to determine whether the SAI_ACL_TABLE_ATTR_FIELD_MACSEC_SCI attribute is supported by the ASIC, thus ensuring that neither SAI_ACL_TABLE_ATTR_FIELD_MACSEC_SCI nor SAI_ACL_ENTRY_ATTR_FIELD_MACSEC_SCI is used when unsupported. Why I did it The current implementation attempts to use the SAI_ACL_ENTRY_ATTR_FIELD_MACSEC_SCI attribute even when it's not supported by the underlying ASIC or driver, causing failures in the vendor's SAI/SDK code. The capability check prevents these errors, ensuring compatibility with different hardware. How I verified it Compiled the code successfully without errors. Conducted manual tests on Marvell platforms without support for the SAI_ACL_TABLE_ATTR_FIELD_MACSEC_SCI attribute to validate the conditional logic. Details if related Fixes the issue raised in sonic-net#3134
Collaborator
Author
|
/azp run |
Collaborator
Author
|
Original PR: #3385 |
|
Azure Pipelines successfully started running 1 pipeline(s). |
dgsudharsan
pushed a commit
that referenced
this pull request
Feb 25, 2025
```<br>* c93c0eec - (HEAD -> 202412) Merge branch '202411' of https://github.com/sonic-net/sonic-swss into 202412 (2025-02-12) [Sonic Automation] * 5031aad - (origin/202411) Capability query for MACSEC ACL attribute (#3511) (2025-02-12) [mssonicbld] * 4b357e5 - Fix VRF update handling for loopback interfaces in IntfsOrch (#3512) (2025-02-12) [mssonicbld] * fe98176 - Add a delay between killing teamd processes (#3510) (2025-02-11) [mssonicbld] * e967711 - Remove RIF from m_rifsToAdd before deleting it (#3499) (2025-02-07) [mssonicbld] * 337c9a1 - Optimize counter polling interval by making it more accurate (#3500) (2025-02-07) [mssonicbld]<br>```
dgsudharsan
pushed a commit
that referenced
this pull request
Feb 25, 2025
```<br>* 7532d469 - (HEAD -> 202412) Merge branch '202411' of https://github.com/sonic-net/sonic-swss into 202412 (2025-02-13) [Sonic Automation] * 5031aad - (origin/202411) Capability query for MACSEC ACL attribute (#3511) (2025-02-12) [mssonicbld] * 4b357e5 - Fix VRF update handling for loopback interfaces in IntfsOrch (#3512) (2025-02-12) [mssonicbld] * fe98176 - Add a delay between killing teamd processes (#3510) (2025-02-11) [mssonicbld] * e967711 - Remove RIF from m_rifsToAdd before deleting it (#3499) (2025-02-07) [mssonicbld] * 337c9a1 - Optimize counter polling interval by making it more accurate (#3500) (2025-02-07) [mssonicbld]<br>```
dgsudharsan
pushed a commit
that referenced
this pull request
Feb 25, 2025
```<br>* 44417f65 - (HEAD -> 202412) Merge branch '202411' of https://github.com/sonic-net/sonic-swss into 202412 (2025-02-14) [Sonic Automation] * 5031aad - (origin/202411) Capability query for MACSEC ACL attribute (#3511) (2025-02-12) [mssonicbld] * 4b357e5 - Fix VRF update handling for loopback interfaces in IntfsOrch (#3512) (2025-02-12) [mssonicbld] * fe98176 - Add a delay between killing teamd processes (#3510) (2025-02-11) [mssonicbld] * e967711 - Remove RIF from m_rifsToAdd before deleting it (#3499) (2025-02-07) [mssonicbld] * 337c9a1 - Optimize counter polling interval by making it more accurate (#3500) (2025-02-07) [mssonicbld]<br>```
dgsudharsan
pushed a commit
that referenced
this pull request
Feb 25, 2025
```<br>* aaf061fc - (HEAD -> 202412) Merge branch '202411' of https://github.com/sonic-net/sonic-swss into 202412 (2025-02-15) [Sonic Automation] * 5031aad - (origin/202411) Capability query for MACSEC ACL attribute (#3511) (2025-02-12) [mssonicbld] * 4b357e5 - Fix VRF update handling for loopback interfaces in IntfsOrch (#3512) (2025-02-12) [mssonicbld] * fe98176 - Add a delay between killing teamd processes (#3510) (2025-02-11) [mssonicbld] * e967711 - Remove RIF from m_rifsToAdd before deleting it (#3499) (2025-02-07) [mssonicbld] * 337c9a1 - Optimize counter polling interval by making it more accurate (#3500) (2025-02-07) [mssonicbld]<br>```
dgsudharsan
pushed a commit
that referenced
this pull request
Feb 25, 2025
```<br>* c97d84dd - (HEAD -> 202412) Merge branch '202411' of https://github.com/sonic-net/sonic-swss into 202412 (2025-02-16) [Sonic Automation] * 5031aad - (origin/202411) Capability query for MACSEC ACL attribute (#3511) (2025-02-12) [mssonicbld] * 4b357e5 - Fix VRF update handling for loopback interfaces in IntfsOrch (#3512) (2025-02-12) [mssonicbld] * fe98176 - Add a delay between killing teamd processes (#3510) (2025-02-11) [mssonicbld] * e967711 - Remove RIF from m_rifsToAdd before deleting it (#3499) (2025-02-07) [mssonicbld] * 337c9a1 - Optimize counter polling interval by making it more accurate (#3500) (2025-02-07) [mssonicbld]<br>```
dgsudharsan
pushed a commit
that referenced
this pull request
Feb 25, 2025
```<br>* f69aaaf1 - (HEAD -> 202412) Merge branch '202411' of https://github.com/sonic-net/sonic-swss into 202412 (2025-02-17) [Sonic Automation] * 5031aad - (origin/202411) Capability query for MACSEC ACL attribute (#3511) (2025-02-12) [mssonicbld] * 4b357e5 - Fix VRF update handling for loopback interfaces in IntfsOrch (#3512) (2025-02-12) [mssonicbld] * fe98176 - Add a delay between killing teamd processes (#3510) (2025-02-11) [mssonicbld] * e967711 - Remove RIF from m_rifsToAdd before deleting it (#3499) (2025-02-07) [mssonicbld] * 337c9a1 - Optimize counter polling interval by making it more accurate (#3500) (2025-02-07) [mssonicbld]<br>```
dgsudharsan
pushed a commit
that referenced
this pull request
Feb 25, 2025
```<br>* 22d8d147 - (HEAD -> 202412) Merge branch '202411' of https://github.com/sonic-net/sonic-swss into 202412 (2025-02-18) [Sonic Automation] * 5031aad - (origin/202411) Capability query for MACSEC ACL attribute (#3511) (2025-02-12) [mssonicbld] * 4b357e5 - Fix VRF update handling for loopback interfaces in IntfsOrch (#3512) (2025-02-12) [mssonicbld] * fe98176 - Add a delay between killing teamd processes (#3510) (2025-02-11) [mssonicbld] * e967711 - Remove RIF from m_rifsToAdd before deleting it (#3499) (2025-02-07) [mssonicbld] * 337c9a1 - Optimize counter polling interval by making it more accurate (#3500) (2025-02-07) [mssonicbld]<br>```
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What I did
-Modified the MACsec orchestration logic to conditionally include or exclude the ability to match the SCI in ACL configurations based on the ASIC's capabilities.
-Implemented a capability check in SONiC to determine whether the SAI_ACL_TABLE_ATTR_FIELD_MACSEC_SCI attribute is supported by the ASIC, thus ensuring that neither SAI_ACL_TABLE_ATTR_FIELD_MACSEC_SCI nor SAI_ACL_ENTRY_ATTR_FIELD_MACSEC_SCI is used when unsupported.
Why I did it
The current implementation attempts to use the SAI_ACL_ENTRY_ATTR_FIELD_MACSEC_SCI attribute even when it's not supported by the underlying ASIC or driver, causing failures in the vendor's SAI/SDK code.
The capability check prevents these errors, ensuring compatibility with different hardware.
How I verified it
Compiled the code successfully without errors.
Conducted manual tests on Marvell platforms without support for the SAI_ACL_TABLE_ATTR_FIELD_MACSEC_SCI attribute to validate the conditional logic.
Details if related
Fixes the issue raised in #3134