Skip to content

[code sync] Merge code from sonic-net/sonic-swss:202511 to 202511_azd#226

Merged
mssonicbld merged 6 commits into
Azure:202511_azdfrom
mssonicbld:sonicbld/202511_azd-merge
Jun 3, 2026
Merged

[code sync] Merge code from sonic-net/sonic-swss:202511 to 202511_azd#226
mssonicbld merged 6 commits into
Azure:202511_azdfrom
mssonicbld:sonicbld/202511_azd-merge

Conversation

@mssonicbld
Copy link
Copy Markdown
Collaborator

* 138d1fdb - (origin/202511) [countersyncd]: resolve labels via object ids (#4636) (2026-06-03) [mssonicbld]
* 28cc0c35 - [HFT] Remove redundant per-direction port stats SAI attributes (#4634) (2026-06-03) [mssonicbld]
* 67a3daef - [icmporch] use query attribute capability for stats mode and set explicitly supported value (#4633) (2026-06-03) [mssonicbld]
* 259fa9d1 - [SmartSwitch-HA] Support peer_ip update in ha set. (#4632) (2026-06-03) [mssonicbld]
* ae2a9970 - [AclOrch] Updates Mirror and MirrorV6 Ingress Stage to Accept Egress Action (#4352) (2026-06-02) [Andoni Sanguesa]<br>```

AndoniSanguesa and others added 6 commits June 2, 2026 13:31
…Action (#4352)

* added egress action to ingress mirror table

Signed-off-by: Andoni Sanguesa <andoniesanguesa@gmail.com>

* adds unit tests

Signed-off-by: Andoni Sanguesa <andoniesanguesa@gmail.com>

* adds misisng ut case

Signed-off-by: Andoni Sanguesa <andoniesanguesa@gmail.com>

---------

Signed-off-by: Andoni Sanguesa <andoniesanguesa@gmail.com>
<!--
Please make sure you have read and understood the contribution guildlines:
https://github.com/Azure/SONiC/blob/gh-pages/CONTRIBUTING.md

1. Make sure your commit includes a signature generted with `git commit -s`
2. Make sure your commit title follows the correct format: [component]: description
3. Make sure your commit message contains enough details about the change and related tests
4. Make sure your pull request adds related reviewers, asignees, labels

Please also provide the following information in this pull request:
-->

**What I did**
Supporting update to peer ip in ha set config.

**Why I did it**
In repairing process peer ip needs to be updated to the new DPU to be paired with.

**How I verified it**
Manually tested repairing process on HA topo.

**Details if related**

Signed-off-by: Sonic Build Admin <sonicbld@microsoft.com>
…icitly supported value (#4633)

<!--
Please make sure you have read and understood the contribution guildlines:
https://github.com/Azure/SONiC/blob/gh-pages/CONTRIBUTING.md

1. Make sure your commit includes a signature generted with `git commit -s`
2. Make sure your commit title follows the correct format: [component]: description
3. Make sure your commit message contains enough details about the change and related tests
4. Make sure your pull request adds related reviewers, asignees, labels

Please also provide the following information in this pull request:
-->
Depend on PR: sonic-net/sonic-sairedis#1756
It should fix PR failure

**What I did**
use query attribute capability for stats mode and set an explicitly supported value.
If stats mode is not set or not supported then log WARN messages and rely on internal SAI logic during session creation

**Why I did it**
need to check if some SAI capabilities are supported before using them.
Currently there are few possible stats count mode:
- SAI_STATS_COUNT_MODE_PACKET_AND_BYTE,
- SAI_STATS_COUNT_MODE_PACKET
- SAI_STATS_COUNT_MODE_BYTE
- SAI_STATS_COUNT_MODE_NONE

Preffered mode:
1) PACKET_AND_BYTE, 2) PACKET only, 3)BYTE only, 4) none

**How I verified it**
UT test added

**Details if related**

Signed-off-by: Sonic Build Admin <sonicbld@microsoft.com>
**What I did**
Remove redundant per-direction port stats SAI attributes

**Why I did it**
SAI_TAM_TEL_TYPE_ATTR_SWITCH_ENABLE_PORT_STATS already covers both ingress and egress, making the explicit
SAI_TAM_TEL_TYPE_ATTR_SWITCH_ENABLE_PORT_STATS_EGRESS and SAI_TAM_TEL_TYPE_ATTR_SWITCH_ENABLE_PORT_STATS_INGRESS attributes redundant. In SINGLE mode only one attribute can be set to true at a time, so setting all three caused a conflict.

**How I verified it**
Run HFT tests

**Details if related**

Signed-off-by: Sonic Build Admin <sonicbld@microsoft.com>
## What I did
- pass `object_ids` through `SwssActor -> IPFixTemplatesMessage -> IpfixActor`
- store `object_ids` alongside `object_names` per session key
- resolve IPFIX labels via `label -> object_id -> object_name`
- keep the legacy positional fallback only when `object_ids` are unavailable
- update unit/integration tests for the new message shape

## Why
`object_ids` and `object_names` are positional pairs, while the IPFIX label matches the object ID rather than the 1-based index into `object_names`. The old logic incorrectly assumed:

`label -> object_names[label - 1]`

The correct logic is:

`label -> find matching object_id -> use the object_name at the same position`

## Validation
Ran in CI-like `sonic-slave-bookworm` container with Azure Pipelines deb artifacts installed:
- `cargo test --locked --manifest-path crates/countersyncd/Cargo.toml test_sai_stat_from_ipfix_uses_object_ids_mapping -- --nocapture`
- `cargo test --locked --manifest-path crates/countersyncd/Cargo.toml test_session_update_with_object_names -- --nocapture`
- `cargo test --locked --manifest-path crates/countersyncd/Cargo.toml test_session_update_without_object_names -- --nocapture`
- `cargo test --locked --manifest-path crates/countersyncd/Cargo.toml test_object_names_follow_template_id -- --nocapture`

Signed-off-by: Sonic Build Admin <sonicbld@microsoft.com>
@mssonicbld mssonicbld merged commit b210432 into Azure:202511_azd Jun 3, 2026
2 checks passed
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.

2 participants