Skip to content

[code sync] Merge code from sonic-net/sonic-swss:202412 to 202503#85

Merged
mssonicbld merged 15 commits intoAzure:202503from
mssonicbld:sonicbld/202503-merge
May 26, 2025
Merged

[code sync] Merge code from sonic-net/sonic-swss:202412 to 202503#85
mssonicbld merged 15 commits intoAzure:202503from
mssonicbld:sonicbld/202503-merge

Conversation

@mssonicbld
Copy link
Copy Markdown
Collaborator

* 06b16c38 - (base/202412) [fpmsyncd]Fixing blackhole route to publish protocol field to APPL_DB (#83) (2025-05-23) [Sudharsan Dhamal Gopalarathnam]
* b801f2d9 - [202412] [SRv6] add MySID counters support (#82) (2025-05-19) [Yakiv Huryk]
*   a999b4d5 - Merge pull request #81 from r12f/code-sync-202412 (2025-05-17) [Dashuai Zhang]
|\  
| * fd87e1f5 - Merge remote-tracking branch 'base/202411' into code-sync-202412 (2025-05-16) [r12f]
|/| 
| *   623b0186 - (origin/202411)  [202411] Setting default nexthop weight to 1 in fpmsyncd (2025-05-15) [Kumaresh Perumal]
| |\  
| | * a99088e0 - Removed logging code. (2025-05-15) [Mahdi Ramezani]
| | * 5cdc78e7 - Fixed a compile error. (2025-05-15) [Mahdi Ramezani]
| | * a79b7e0f - Set default nexthop weight to 1. Added unit tests for 'getNextHopWt'. (2025-05-15) [Mahdi Ramezani]
| |/  
* | 2a0856b0 - Merge pull request #78 from nazariig/202412-trim-azure (2025-05-14) [Nazarii Hnydyn]
* | 2daf2079 - Enable FDB learning event after all ports removed from default 1Q bridge (#79) (2025-05-09) [mssonicbld]
* | 3b702926 - Move timestamps out of counter table to avoid update too frequently (#75) (2025-04-28) [mssonicbld]
* | 3fa0d723 - Merge pull request #74 from mssonicbld/sonicbld/202412-merge (2025-04-23) [mssonicbld]
* | be436dac - Merge branch '202411' of https://github.com/sonic-net/sonic-swss into 202412 (2025-04-23) [Sonic Automation]
|/  
* 79f04e32 - Initialize the last fec ber computed values if not found (#3621) (2025-04-22) [mssonicbld]<br>```

mssonicbld and others added 15 commits April 22, 2025 16:02
<!--
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**

`SAI_PORT_STAT_IF_FEC_CORRECTED_BITS_last` and `SAI_PORT_STAT_IF_FEC_NOT_CORRECTABLE_FARMES_last` counter values could be NOT present in redis, so initialize these values to ZERO

**Why I did it**
To prevent following error seen during warm boot

```
root@sonic:/# redis-cli --eval ./usr/share/swss/port_rates.lua oid:0x100000000000a , 2 COUNTERS 10
(error) ERR user_script:204: attempt to concatenate local 'fec_corr_bits_last' (a boolean value) script: b46cd0b446729aab6bbd20e0d4aa977e3da8f5f1, on @user_script:204.
root@sonic:/# redis-cli --eval ./usr/share/swss/port_rates.lua oid:0x100000000000a , 2 COUNTERS 10
(error) ERR user_script:204: attempt to concatenate local 'fec_corr_bits_last' (a boolean value) script: b46cd0b446729aab6bbd20e0d4aa977e3da8f5f1, on @user_script:204.
root@sonic:/# redis-cli --eval ./usr/share/swss/port_rates.lua oid:0x100000000000a , 2 COUNTERS 10
(error) ERR user_script:206: attempt to perform arithmetic on local 'fec_corr_bits_last' (a boolean value) script: cb98161ae9433f9bf8265cffd7d2eaaf6ac9282f, on @user_script:206.
root@sonic:/#
```

**How I verified it**
After fix the last computer FEC ber values are stored in redis DB

```
root@sonic:/# redis-cli --eval ./usr/share/swss/port_rates.lua oid:0x100000000000a , 2 COUNTERS 10
1) "0.18"
2) "0.82"
3) "10"
4) "DONE"
root@str2-7050cx3-acs-14:/# redis-cli -n 2 hgetall "RATES:oid:0x100000000000a"
 1) "SAI_PORT_STAT_IF_IN_UCAST_PKTS_last"
 2) "0"
 3) "SAI_PORT_STAT_IF_IN_NON_UCAST_PKTS_last"
 4) "0"
 5) "SAI_PORT_STAT_IF_OUT_UCAST_PKTS_last"
 6) "0"
 7) "SAI_PORT_STAT_IF_OUT_NON_UCAST_PKTS_last"
 8) "0"
 9) "SAI_PORT_STAT_IF_IN_OCTETS_last"
10) "0"
11) "SAI_PORT_STAT_IF_OUT_OCTETS_last"
12) "0"
13) "RX_BPS"
14) "0"
15) "RX_PPS"
16) "0"
17) "TX_BPS"
18) "0"
19) "TX_PPS"
20) "0"
21) "SAI_PORT_STAT_IF_FEC_CORRECTED_BITS_last"
22) "0"
23) "SAI_PORT_STAT_IF_FEC_NOT_CORRECTABLE_FARMES_last"
24) "0"
25) "FEC_PRE_BER"
26) "0"
27) "FEC_POST_BER"
28) "0"
root@str2-7050cx3-acs-14:/#
```

**Details if related**
```<br>* be436da - (HEAD -> 202412) Merge branch '202411' of https://github.com/sonic-net/sonic-swss into 202412 (2025-04-23) [Sonic Automation]
* 79f04e3 - (origin/202411) Initialize the last fec ber computed values if not found (#3621) (2025-04-22) [mssonicbld]<br>```
…zure#75)

<!--
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**

The timestamp of PFC watchdog polling is moved out of the COUNTER table. The PFC watchdog Lua plugin should be adjusted accordingly.

**Why I did it**

**How I verified it**

**Details if related**
…dge (Azure#79)

<!--
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**

This PR is to fix an orchagent crash issue. Error logs are as below.
```
2025 May 1 05:51:07.128331 str4-7060x6-64pe-7 ERR swss#orchagent: :- meta_generic_validation_remove: object 0x3a0000000000d7 reference count is 1, can't remove
2025 May 1 05:51:07.128331 str4-7060x6-64pe-7 ERR swss#orchagent: :- removeDefaultBridgePorts: Failed to remove bridge port, rv:-17
2025 May 1 05:51:07.128566 str4-7060x6-64pe-7 INFO swss#supervisord: orchagent terminate called after throwing an instance of 'std::runtime_error'
2025 May 1 05:51:07.128566 str4-7060x6-64pe-7 INFO swss#supervisord: orchagent what(): PortsOrch initialization failure
2025 May 1 05:51:07.815330 str4-7060x6-64pe-7 INFO swss#supervisord 2025-05-01 05:51:07,814 WARN exited: orchagent (terminated by SIGABRT (core dumped); not expected)
```
It's because FDB is learnt on the default bridge, which increased reference count for bridge port and caused port removal failure.

The issue is addressed by **not** setting `SAI_SWITCH_ATTR_FDB_EVENT_NOTIFY` when creating switch, and enable it after all ports being removed from default bridge.

**Why I did it**
This PR is to fix an orchagent crash issue.

**How I verified it**
1. The change is verified on multiple platforms. FDB learning can be done normally after this change.

**Broadcom**
```
admin@str4-7060x6-64pe-fan-4:~$ fdbshow
 No. Vlan MacAddress Port Type
----- ------ ----------------- ----------- -------
 1 1234 B6:2C:7E:FC:80:00 Ethernet496 Dynamic
 2 1234 D6:5E:2C:C0:B8:0B Ethernet496 Dynamic
 3 1235 CE:8F:2A:A1:00:01 Ethernet496 Dynamic
```
**Mellanox**
```
admin@str-msn2700-01:~$ fdbshow
 No. Vlan MacAddress Port Type
----- ------ ----------------- --------- -------
 1 1000 7C:FE:90:5E:60:01 Ethernet4 Dynamic
Total number of entries 1
```

**Cisco**
```
admin@str3-8101-03:~$ fdbshow
 No. Vlan MacAddress Port Type
----- ------ ----------------- ----------- -------
 1 1000 9C:09:8B:B6:E6:00 Ethernet240 Dynamic
Total number of entries 1
```

2. The existing VS test `test_fdb.py` can cover the change.

**Details if related**
[202412][trim]: Add Packet Trimming to OA
Signed-off-by: Mahdi Ramezani <mramezani@microsoft.com>
Signed-off-by: Mahdi Ramezani <mramezani@microsoft.com>
Signed-off-by: Mahdi Ramezani <mramezani@microsoft.com>
[202411] Setting default nexthop weight to 1 in `fpmsyncd`
[202412] Code sync sonic-net/sonic-swss:202411 => 202412
* SRv6: add MySID counters support

* query SAI capability to check if SRv6 MySID counter is supported
* support for SRv6 MySID counter utilizing flex counter infrastructure
* extend vs test test_flex_counters.py

* SRv6: increase log level for the counters state update

Signed-off-by: Yakiv Huryk <yhuryk@nvidia.com>

---------

Signed-off-by: Yakiv Huryk <yhuryk@nvidia.com>
…Azure#83)

Manual cherry-pick of PR sonic-net/sonic-swss#3655

<!--
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**
Fixing blackhole route flow to publish protocol field to APPL_DB. When suppress fib pending is enabled, the protocol field is mandatory and not setting it results in fpmsyncd exiting in the route response path. 

**Why I did it**
To fix fpmsyncd from exiting on programming blackhole routes with suppress fib pending enabled.

**How I verified it**
Added UT to verify. Manually added blackhole route and verified as well.

**Details if related**
@mssonicbld mssonicbld requested a review from neethajohn as a code owner May 26, 2025 08:41
@mssonicbld mssonicbld requested a review from prsunny as a code owner May 26, 2025 08:41
@mssonicbld mssonicbld merged commit d8c3d8c into Azure:202503 May 26, 2025
5 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.

8 participants