Update tcam profile#5504
Conversation
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request updates the TCAM (Ternary Content-Addressable Memory) profile definitions to support the new 'ngpr' profile for test PF-1.6. The changes involve restructuring the hardware configuration by removing outdated features and adding granular QoS and traffic-policy definitions, alongside new hardware counter tracking capabilities. Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize the Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counterproductive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request updates the aristaTcamProfileVrfSelectionExtended TCAM profile configuration in internal/cfgplugins/dut_initialize.go by renaming it to ngpr, removing several subinterface, VLAN, and PBR ACL features, and adding QoS, traffic-policy, and hardware counter features. Feedback highlights a critical conflict where the profile name ngpr is now defined in two different TCAM profiles with conflicting feature sets, which could lead to configuration overwrites or failures on Arista EOS. It is recommended to consolidate these definitions or use distinct profile names.
| action count drop mirror | ||
| packet ipv6 forwarding bridged | ||
| packet ipv6 forwarding routed | ||
| profile ngpr |
There was a problem hiding this comment.
Conflicting Definitions for Profile ngpr
Both aristaTcamProfileVrfSelectionExtended (modified here) and aristaNGPRTcamProfile (defined at line 400) now configure the same TCAM profile name ngpr (profile ngpr and system profile ngpr), but with different feature sets:
aristaTcamProfileVrfSelectionExtendedincludesvrf selectionandvrf selection extendedbut lackspbr mpls.aristaNGPRTcamProfileincludespbr mplsbut lacks thevrf selectionfeatures.
Since Arista EOS only supports a single active definition for a given profile name, having conflicting definitions for the same profile name across different feature types can lead to configuration overwrites, commit failures, or unexpected behavior if the switch is not fully rebooted between tests.
Recommendation:
Consider consolidating these into a single, unified ngpr profile definition that includes all required features (both vrf selection and pbr mpls), or use distinct profile names if the platform supports it.
Updating tcam profile for test PF-1.6