Commit Graph

7856 Commits

Author SHA1 Message Date
zitingguo-ms
1bc358ae8d
Fix device type and add cluster in DEVICE_NEIGHBOR_METADATA yang model (#17049) (#17109)
Why I did it
The current DEVICE_NEIGHBOR_METADATA yang model has two issues that would block GCU operation when it checks if the current config aligns with the YANG model:

Missing cluster field in YANG
Incomplete set of device type. The device type in YANG model doesn't include all the device type.
Work item tracking
Microsoft ADO (number only): 25577813
How I did it
Add cluster field in DEVICE_NEIGHBOR_METADATA YANG model.
Change device type to string.
Fix the UT test accordingly.
How to verify it
Build the image and verify the unit tests passed.

Signed-off-by: zitingguo-ms <zitingguo@microsoft.com>
2023-11-08 11:05:32 +08:00
mssonicbld
78cc6cfa22
[copp]: Enable rate limiting for bgp, lacp, dhcp, lldp, macsec and udld (#14859) (#17111) 2023-11-07 20:52:08 +08:00
Hua Liu
a11b33b6ca
Write error message to syslog when add user failed or connect to TACACS server failed. (#16240) (#17081)
Write error message to syslog when add user failed or connect to TACACS server failed.

Why I did it
With these messages, we can downgrade TACACS server with issue to lower priority.

Work item tracking
Microsoft ADO: 24667696
How I did it
Write error message to syslog when add user failed or connect to TACACS server failed.

How to verify it
Pass all UT.
Manually verify error message generated.
2023-11-06 23:07:10 +08:00
StormLiangMS
0e5bac9821
Cherry pick to 202305 - Enable fib suppress for leafrouter by default #17101
Why I did it
Cherry pick #17072

Work item tracking
Microsoft ADO (25564723):
How I did it
How to verify it
2023-11-06 23:05:31 +08:00
jhli-cisco
7117fed404
Update cisco-8000.ini (#17099)
Why I did it
Drop for 8111-32EH-O:

Fix for clear_trap_configuration errors
Fix OREDERED ECMP NHG drop when route is added before members are added
Fix port handling of empty ecmp group to drop packets
Fix for link_notification_handle error
Auto FPD upgrade support
Work item tracking
Microsoft ADO (number only):
How I did it
update platform to 202305.1.0.1
2023-11-06 12:18:30 +08:00
mssonicbld
80d9a9951a
[submodule] Update submodule sonic-gnmi to the latest HEAD automatically (#17082)
#### Why I did it
src/sonic-gnmi
```
* a49ca56 - (HEAD -> 202305, origin/202305) Merge pull request #167 from zbud-msft/cherry-pick-fix-panic-202305 (11 hours ago) [StormLiangMS]
* 6ba1125 - Merge branch '202305' into cherry-pick-fix-panic-202305 (2 weeks ago) [Zain Budhwani]
* 3a0fbb9 - Fix build error (2 weeks ago) [Zain Budhwani]
* 7fad847 - Recover from potential panic when doing map to JSON serialization (#161) (2 weeks ago) [Zain Budhwani]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-11-03 16:33:00 +08:00
mssonicbld
9ab60260a5
[submodule] Update submodule sonic-platform-common to the latest HEAD automatically (#17084)
#### Why I did it
src/sonic-platform-common
```
* e7325db - (HEAD -> 202305, origin/202305) Fix SSD health percentage issue for vendor Virtium (#407) (#408) (11 hours ago) [Stephen Sun]
* 87e33ab - [Credo][Ycable] Remove the thread locker protection from the thread-safe APIs (#388) (11 hours ago) [Xinyu Lin]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-11-03 16:32:53 +08:00
mssonicbld
b85f891472
[submodule] Update submodule sonic-sairedis to the latest HEAD automatically (#17085)
#### Why I did it
src/sonic-sairedis
```
* 5a052ed - (HEAD -> 202305, origin/202305) [warmboot] Add workaround for `INIT_VIEW` failure  (#1252) (11 hours ago) [Jing Zhang]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-11-03 16:32:49 +08:00
mssonicbld
eaca6ccde9
[submodule] Update submodule sonic-utilities to the latest HEAD automatically (#17088) 2023-11-03 15:38:14 +08:00
mssonicbld
8eb249827a
[submodule] Update submodule sonic-swss to the latest HEAD automatically (#17087) 2023-11-03 15:33:21 +08:00
Vadym Hlushko
28ecd068d4
[202305][buffers] Add 'create_only_config_db_buffers.json' file for the Mellanox devices (not MSFT SKU) (#17006)
Why I did it
Add the create_only_config_db_buffers attribute to the DEVICE_METADATA|localhost. If the "create_only_config_db_buffers" exists and is equal to "true" - the buffers will be created according to the config_db configuration (for example BUFFER_QUEUE|* table), otherwise the maximum available buffers (which are read from SAI) will be created, regardless of the CONFIG_DB buffers configuration.

Work item tracking
Microsoft ADO (number only):
How I did it
Add the create_only_config_db_buffers.json files for Mellanox devices (not MSFT SKU's), and inject the content to the CONFIG_DB during the swss docker container start.

How to verify it
Manual verification:

Install the image with this PR included on the not MSFT SKU switch
Check the show queue counters output and verify that only configured in CONFIG_DB buffers are created
root@sonic:/home/admin# show queue counters
     Port    TxQ    Counter/pkts    Counter/bytes    Drop/pkts    Drop/bytes
---------  -----  --------------  ---------------  -----------  ------------
Ethernet0    UC0               0                0            0           N/A
Ethernet0    UC1               0                0            0           N/A
Ethernet0    UC2               0                0            0           N/A
Ethernet0    UC3               0                0            0           N/A
Ethernet0    UC4               0                0            0           N/A
Ethernet0    UC5               0                0            0           N/A
Ethernet0    UC6               0                0            0           N/A
Open the /usr/share/sonic/device/$DEVICE/$SKU/create_only_config_db_buffers.json and change it to:
"create_only_config_db_buffers": "false"
Do config reload
Check the show queue counters output and verify that all available buffers are created
root@sonic:/home/admin# show queue counters
     Port    TxQ    Counter/pkts    Counter/bytes    Drop/pkts    Drop/bytes
---------  -----  --------------  ---------------  -----------  ------------
Ethernet0    UC0               0                0            0           N/A
Ethernet0    UC1               0                0            0           N/A
Ethernet0    UC2               0                0            0           N/A
Ethernet0    UC3               0                0            0           N/A
Ethernet0    UC4               0                0            0           N/A
Ethernet0    UC5               0                0            0           N/A
Ethernet0    UC6               0                0            0           N/A
Ethernet0    UC7              60            15346            0           N/A
Ethernet0    MC8             N/A              N/A          N/A           N/A
Ethernet0    MC9             N/A              N/A          N/A           N/A
Ethernet0   MC10             N/A              N/A          N/A           N/A
Ethernet0   MC11             N/A              N/A          N/A           N/A
Ethernet0   MC12             N/A              N/A          N/A           N/A
Ethernet0   MC13             N/A              N/A          N/A           N/A
Ethernet0   MC14             N/A              N/A          N/A           N/A
Ethernet0   MC15             N/A              N/A          N/A           N/A
2023-11-03 14:27:17 +08:00
mssonicbld
fbf30ec6a8
[tacacs]: Fix tcpdump report error when tacacs enabled (#16372) (#17077) 2023-11-03 04:31:18 +08:00
mssonicbld
feaa855346
Add special rsyslog filter for MSN2700 platform (#16684) (#17078) 2023-11-03 03:05:44 +08:00
Nazarii Hnydyn
7d54155f67
[ppi]: Enable global port late create for all Mellanox HWSKUs. (#16946)
Why I did it
To improve FAST reboot dataplane downtime
Work item tracking
N/A
How I did it
Updated SAI xml config file
How to verify it
Run sonic-mgmt tests of fastboot
2023-11-02 23:14:18 +08:00
mssonicbld
d814cc41d4
[eventd]: Disabling eventd tests (#17053) (#17061) 2023-11-01 23:39:49 +08:00
mssonicbld
530f756304
Upgrade XGS saibcm-modules to 8.4 (#16246) (#17024) 2023-10-27 00:13:26 +08:00
mssonicbld
fc8d645b87
[submodule] Update submodule sonic-swss to the latest HEAD automatically (#17017)
#### Why I did it
src/sonic-swss
```
* 5bee57a4 - (HEAD -> 202305, origin/202305) Fix data race in on_switch_shutdown_request() (#2931) (16 hours ago) [Yakiv Huryk]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-10-26 16:32:39 +08:00
mssonicbld
09cb711cd7
[submodule] Update submodule sonic-utilities to the latest HEAD automatically (#17018)
#### Why I did it
src/sonic-utilities
```
* 569beb19 - (HEAD -> 202305, origin/202305) Revert "Remove syslog service validator in GCU (#2991)" (#3015) (16 hours ago) [jingwenxie]
* ab7f03ea - [db_migrator] Fix the broken version chain (#3014) (16 hours ago) [Vivek]
* 0f17b8d5 - [fwutil] Fix python SyntaxWarning for 'is' with literals (#3013) (16 hours ago) [Kebo Liu]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-10-26 16:32:34 +08:00
Prince Sunny
8564be4344
[Submodule] Update for sonic-restapi (#16994)
Why I did it
Submodule update for sonic-restapi

ccad4a2 - 2023-10-17 : [Tunnel] Support co-existence of IPv4 and IPv6 tunnels (#147) [Prince Sunny]
c8fa96b - 2023-10-12 : Remove command to install libhiredis deb file (#146) [Saikrishna Arcot]

Work item tracking
Microsoft ADO 25072916:
How I did it
How to verify it
2023-10-26 09:30:24 +08:00
mssonicbld
8cc74240b0
Add yang model for PFC watchdog debug information (#16206) (#17008) 2023-10-26 01:26:05 +08:00
mssonicbld
da90d5624d
[Mellanox] Enhance the processing of Kconfig in the hw-mgmt integration (#16752) (#17009) 2023-10-26 00:46:54 +08:00
Samuel Angebault
7982c3a2a8 Add some config options to make gbsyncd optional (#16840)
Why I did it
In an effort to allow people to build a slim version of SONiC to fit on devices to small storage, there is a need to disable some unneeded features.
The docker-gbsyncd are only applicable to devices with external gearboxes and might not apply to devices that need a small image.
It is therefore desirable to have a knob to not include these gbsyncd containers.

Work item tracking
Microsoft ADO (number only):
How I did it
Add a new config INCLUDE_GBSYNCD which is enabled by default to retain the previous behavior.
Setting it to n will not include the platform/components/docker-gbsyncd-*.mk.

How to verify it
Set INCLUDE_GBSYNCD = n and witness that docker-gbsyncd images are not present in the final image.
2023-10-25 22:32:41 +08:00
Zain Budhwani
d48c272677 Add fix for deserializing XSUB/XPUB subscription message (#16598)
### Why I did it

##### Work item tracking
- Microsoft ADO **(number only)**:24851367

#### How I did it

Read subscription message when capture service starts, before reading cached events.

#### How to verify it

UT/Manual testing
2023-10-25 12:32:31 +08:00
mssonicbld
8cc1998e74
[submodule] Update submodule sonic-platform-common to the latest HEAD automatically (#16977) 2023-10-25 05:10:13 +08:00
mssonicbld
d050ac8c4d
[submodule] Update submodule sonic-swss to the latest HEAD automatically (#16987) 2023-10-25 03:48:40 +08:00
Samuel Angebault
274e929f11
Reduce SONiC image filesystem size (#16948)
Why I did it
Running SONiC releases past 202012 has become really challenging on system with small storage devices (4GB).
Some of these devices can also be limited by only having 4GB of RAM which complicates mitigations.
The main contributor to these issues is the SONiC image growth.
Being able to reduce it by some decent amount should allow these systems to run SONiC longer.
It would also reduce some impacts related to space savings mitigations.

Work item tracking
Microsoft ADO (number only):
How I did it
Add a build option to reduce the image size.
The image reduction process is affecting the builds in 2 ways:

change some packages that are installed in the rootfs
apply a rootfs reduction script
The script itself will perform a few steps:

remove file duplication by leveraging hardlinks
under /usr/share/sonic since the symlinks under the device folder are lost during the build.
under /var/lib/docker since the files there will only be mounted ro
remove some extra files (man, docs, licenses, ...)
some image specific space reduction (only for aboot images currently)
The script can later be improved but for now it's reducing the rootfs size by ~30%.

How to verify it
Compare the size of an image with this option enabled and this option enabled.
Expect the fully extracted content to be ~30% less.

Which release branch to backport (provide reason below if selected)
This is a backport of #16729

Description for the changelog
Add build option to reduce final image size
2023-10-24 21:08:38 +08:00
Vivek
34728958a1
[submodule] Update sonic-dhcp-relay submodule (#16942)
Why I did it
Update the submodule to include the following fixes

2b33d76 dhcpv6 per interface counter support 
6a6ce24 fix dhcpv6 relay dual tor source interface selection issue 
c36b8e3 [actions] Support Semgrep by Github Actions (#39)
Work item tracking
Microsoft ADO (number only):
How I did it
How to verify it
2023-10-24 09:55:46 +08:00
mssonicbld
9354980199
[submodule] Update submodule sonic-linux-kernel to the latest HEAD automatically (#16919) 2023-10-24 03:46:07 +08:00
Saikrishna Arcot
d554cd55d6
[202305] Update Linux kernel to 5.10.179 (#16958)
Why I did it
Update the kernel to 5.10.179 for the 202305 branch

Work item tracking
Microsoft ADO (number only): 24592132
How I did it
How to verify it
2023-10-23 22:37:30 +08:00
mssonicbld
bf605cf771
[ci/build]: Upgrade SONiC package versions (#16964) 2023-10-21 23:04:00 +08:00
mssonicbld
ad70614630
[submodule] Update submodule sonic-utilities to the latest HEAD automatically (#16922) 2023-10-21 16:47:48 +08:00
mssonicbld
0de27046bb
[submodule] Update submodule linkmgrd to the latest HEAD automatically (#16917) 2023-10-21 16:47:12 +08:00
mssonicbld
e607dbc6b6
[submodule] Update submodule sonic-snmpagent to the latest HEAD automatically (#16920) 2023-10-21 16:39:12 +08:00
mssonicbld
f057c9a160
[submodule] Update submodule sonic-gnmi to the latest HEAD automatically (#16918) 2023-10-21 16:36:36 +08:00
mssonicbld
10a1d2d829
[submodule] Update submodule sonic-swss to the latest HEAD automatically (#16921) 2023-10-21 16:32:27 +08:00
jcaiMR
0465d7fdf5 [dhcp-relay]: dhcp/dhcpv6 per interface counter support (#16377)
Why I did it
Support DHCP/DHCPv6 per-interface counter, code change in sonic-build image.

Work item tracking
Microsoft ADO (17271822):

How I did it
- Introduce libjsoncpp-dev in dhcpmon and dhcprelay repo
- Show CLI changes after counter format change

How to verify it
- Manually run show command
- dhcpmon, dhcprelay integration tests
2023-10-21 14:32:29 +08:00
Longxiang Lyu
dd20597e4d [snmp] Check intfmgrd running before start (#16588)
Add pre start check to ensure intfmgrd is running.
The check will run for 20 seconds at most.

Signed-off-by: Longxiang Lyu <lolv@microsoft.com>
2023-10-21 12:32:42 +08:00
Bob Chu
7af177b7b3 [Telemetry] enable default service config if no config from DB (#16683)
#### Why I did it
Fix issue #16533 , telemetry service exit in master and 202305 branches due to no telemetry configs in redis DB.

#### How I did it
Enable default config if no TELEMETRY configs from redis DB.

#### How to verify it
After the fix, telemetry service would work with the following two scenarios:
1. With TELEMETRY config in redis DB, load service configs from DB.
2. No TELEMETRY config in redis DB, use default service configs.
2023-10-21 12:32:37 +08:00
Stepan Blyshchak
eb1451301f [frr] fix default zebra config not inserted into empty zebra.conf (#16747)
Signed-off-by: Stepan Blyschak <stepanb@nvidia.com>
2023-10-21 12:32:25 +08:00
xumia
ba7aacd49e [Security] Upgrade the OpenSSL/OpenSSH to fix CVE alerts (#16902)
### Why I did it
[Security] Upgrade the OpenSSL/OpenSSH to fix CVE alerts

Upgrade OpenSSL to 1.1.1n-0+deb11u5
Fix CVEs:
      CVE-2023-0464 (Excessive Resource Usage Verifying X.509 Policy
      CVE-2023-0465 (Invalid certificate policies in leaf certificates are
      CVE-2023-0466 (Certificate policy check not enabled).
      CVE-2022-4304 (Timing Oracle in RSA Decryption).
      CVE-2023-2650 (Possible DoS translating ASN.1 object identifiers).

Upgrade OpenSSH to 8.4p1-5+deb11u2
Fix CVEs:
    CVE-2023-38408 (Lacks SSH agent restriction)

##### Work item tracking
- Microsoft ADO **(number only)**: 25506776

#### How I did it
Upgrade the OpenSSL/OpenSSH package version and fix the UT failure.

#### How to verify it
Verified by UTs with and without FIPS enabled.
2023-10-21 12:32:21 +08:00
Saikrishna Arcot
fb618b6e0b
[202305] Backport PRs to fix build (#16896, #16859, #16636) (#16934)
* Remove main deb installation for derived deb build (#16859)

* Don't install dependencies of derived debs

When "building" a derived deb package, don't install the dependencies of
the package into the container. It's not needed at this stage.

* Re-add openssh-client and openssh-sftp-server as derived debs

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>

---------

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
(cherry picked from commit 9ae77bc2dd)

* Re-add missing dependency for derived debs. (#16896)

* Re-add missing dependency for derived debs.

My previous changed removed the whole dependency on the main deb
existing, not just the installation of the main deb. Fix this by
readding a dependency on the main deb being built/pulled from cache.

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>

---------

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
(cherry picked from commit 963d40a77b)

* [build] Fix build issue in docker-ptf-sai caused by setuptools_scm new release (#16636)

docker-ptf-sai build fails on setuptools_scm's new release on 09/20/2023.
Use old version instead.

(cherry picked from commit bfa05c8349)

---------

Co-authored-by: Liu Shilong <shilongliu@microsoft.com>
2023-10-20 15:39:54 +08:00
Aman Singhal
f265c79541 [cisco]: Enable Kdump config by default for cisco-8000 (#16224)
Why I did it
Enabling kdump by default for cisco-8000 by setting crashkernel cmdline arg in device installer.conf.
After bootup, sonic-kdump-config wipes crashkernel arg from /host/grub/grub.cfg, and resets USE_KDUMP in /etc/default/kdump-tools, so kdump will not be enabled on subsequent reboot.

How I did it
Setting kdump enable config as part of init_cfg.json for cisco-8000 platforms.

How to verify it
Install SONiC image with kdump enabled by default (device/hwsku/installer.conf), then reboot.
Kdump config should persist on subsequent reboots and kdump loaded during bootup

Signed-off-by: Aman Singhal <amans@cisco.com>
2023-10-18 00:37:30 +08:00
Sudharsan Dhamal Gopalarathnam
eea4da346f [FRR] Adding patches for CVE-2023-41358 and CVE-2023-38802 (#16749)
Created patches to address two CVEs from FRR CVE-2023-41358 and CVE-2023-38802.

Patch	FRR commit	CVE fixed
0024-bgpd-Do-not-process-NLRIs-if-the-attribute-length-is.patch	FRRouting/frr@f291f1e	CVE-2023-41358
0025-bgpd-Use-treat-as-withdraw-for-tunnel-encapsulation-.patch	FRRouting/frr@8a4a88c	CVE-2023-38802
2023-10-18 00:37:22 +08:00
Ashwin Srinivasan
c31ccbaba8 Revert "Move /var/log to RAM for Mellanox SN2700, Nokia 7215 and Dell S6100 (#15077)" (#16775)
This reverts commit 05f326eed9.

Microsoft ADO 25355843:
2023-10-18 00:37:18 +08:00
Samuel Angebault
dbea038e96 Disable CPU C-States other than C1 (#16703)
Why I did it
Networking devices need to be responsive. Such responsiveness is harmed when the CPU change state.
There is a latency penalty when a CPU is idle (e.g C2) and need to exit this state to come back to C1 state.
To prevent this from happening the CPU should be forced to remain in C1 state.

How I did it
Generalize the cstate forcing to C1 to all Arista products.
This is done by adding processor.max_cstate=1 to the kernel cmdline for all CPUs.
Additionally Intel CPUs also need intel_idle.max_cstate=0 to fallback to the acpi_idle driver.

How to verify it
Check that processor.max_cstate=1 is present on the cmdline for AMD CPUs
Check that both processor.max_cstate=1 and intel_idle.max_cstate=0 are present on the cmdline for Intel CPUs
2023-10-17 20:49:07 +08:00
Samuel Angebault
a8b53e1452 [Arista] Remove pcie device monitoring for 7260CX3-64 (#12734)
On some products from this line one of the management NIC might be unpopulated.
On such products this leads to errors from pcied and pcie-check.sh

How I did it
Remove this PCIe device from pcie.yaml

How to verify it
Run pcieutil check on the 2 hardware variants and validate that it passes.
Restart pcied and make sure that there is no more error logs in the syslog.

ADO: 25447788
2023-10-17 20:49:02 +08:00
mssonicbld
e80b956502
[ci/build]: Upgrade SONiC package versions (#15617) 2023-10-17 20:48:25 +08:00
Saikrishna Arcot
39cdee57e1 [baseimage]: Update openssh to 1:8.4p1-5+deb11u2 (#16826)
Openssh in Debian Bullseye has been updated to 1:8.4p1-5+deb11u2 to fix CVE-2023-38408. 
Since we're building openssh with some patches, we need to update our version as well.

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2023-10-17 16:34:18 +08:00
abdosi
584c448b22 [chassisd]: Updated the API get_platform_info() to return running/detected ASIC's count (#16539)
previously, get_num_asics() returns the maximum number of asics. however, the asic_count 
should be actual number of asics populated which can be get from get_asic_presence_list().

ADO: 25158825

Signed-off-by: Abhishek Dosi <abdosi@microsoft.com>
2023-10-16 16:34:40 +08:00
mssonicbld
503cb55cdb
[submodule] Update submodule sonic-swss to the latest HEAD automatically (#16868)
#### Why I did it
src/sonic-swss
```
* fc63383b - (HEAD -> 202305, origin/202305) [ppi]: Implement port bulk comparison logic (#2921) (2 days ago) [Nazarii Hnydyn]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-10-13 16:33:57 +08:00