Compare commits

..

192 Commits

Author SHA1 Message Date
StormLiangMS
16ec76afd2 Revert "[baseimage]: Update openssh to 1:8.4p1-5+deb11u2 (#16826)"
This reverts commit 39cdee57e1.
2023-10-18 11:29:00 +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
mssonicbld
f6bf09d796
upgrade xgs SAI version to 8.4.21.0 (#16805) (#16873) 2023-10-13 16:11:28 +08:00
Samuel Angebault
696c3ec44d
[202305][Arista] Update platform library submodules (#16702) 2023-10-12 22:53:35 +08:00
mssonicbld
261113ada9
[submodule] Update submodule sonic-host-services to the latest HEAD automatically (#16842)
#### Why I did it
src/sonic-host-services
```
* fc88254 - (HEAD -> 202305, origin/202305) Support to config fips state (#69) (#78) (16 hours ago) [xumia]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-10-12 20:49:04 +08:00
Liu Shilong
a4e6e3da8b [build] Add sonic-utilities to sonic-host-services dependencies list. (#15987)
Why I did it
sonic-host-services depends on sonic-utilities because of FIPS feature.
Add dependency to unblock submodule sonic-host-services HEAD pointer update.

Work item tracking
Microsoft ADO (number only): 24671218
How I did it
2023-10-12 12:32:53 +08:00
Sudharsan Dhamal Gopalarathnam
d92eade3d3 [build]Fix FRR build cache issue (#16713)
### Why I did it
When FRR is built with Cache enabled, the build failed with the following error logs
```
[2023-09-20T15:17:00.273Z] fatal: Unable to hash src/sonic-frr/frr/tests/topotests/grpc_basic/lib
[2023-09-20T15:17:00.273Z] fatal: Unable to hash src/sonic-frr/frr/tests/topotests/ospfapi/lib
[2023-09-20T15:17:00.273Z] make: *** [Makefile.cache:528: target/debs/bullseye/frr_8.5.1-sonic-0_amd64.deb.smdep] Error 123
[2023-09-20T15:17:00.273Z] make: *** Waiting for unfinished jobs....
```
#### How I did it
Currently symlinks are excluded in hardcoded fashion. With FRR upgrades new symlinks might get introduced. To overcome it modified the way in which symlinks are excluded by finding symlinks using find command

#### How to verify it
Build FRR with cache enabled
2023-10-11 02:33:09 +08:00
Liu Shilong
0772884971 [build] Fix frr dpkg cache calculation issue on symbolic link file. (#16700)
Why I did it
Now build will fail on:

fatal: Unable to hash src/sonic-frr/frr/tests/topotests/grpc_basic/lib
fatal: Unable to hash src/sonic-frr/frr/tests/topotests/ospfapi/lib
make: *** [Makefile.cache:528: target/debs/buster/frr_8.5.1-sonic-0_amd64.deb.smdep] Error 123
make: *** Waiting for unfinished jobs....
Root cause is that these files are symbol links.
git hash-object can't hash symbol links.

Work item tracking
Microsoft ADO (number only): 25271730
How I did it
These two files are symbol links.
When calculate sha value, skip these two files.
2023-10-10 16:33:28 +08:00
mssonicbld
efe5ca8c49
Fix the dependency grpcio-tools version (#16776) (#16809) 2023-10-09 19:02:12 +08:00
mssonicbld
b843245757
[submodule] Update submodule sonic-linux-kernel to the latest HEAD automatically (#16806)
#### Why I did it
src/sonic-linux-kernel
```
* e262947 - (HEAD -> 202305, origin/202305) Revert "Update to Linux 5.10.179 (#328)" (19 hours ago) [stormliang]
* e64669d - Update to Linux 5.10.179 (#328) (2 days ago) [Saikrishna Arcot]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-10-09 18:36:02 +08:00
SuvarnaMeenakshi
2579b9506c
[202305][SNMP][IPv6]: Revert PRs to support SNMP over IPv6 (#16649)
* Revert "[SNMP][IPv6]: Fix to use link local IPv6 address as snmp agentAddress (#16013)"

This reverts commit ebe8c8c223.

* Revert "[SNMP][IPv6]: Fix SNMP IPv6 reachability issue in certain scenarios (#15487) (#15874)"

This reverts commit 83aa8b8180.
2023-10-09 09:47:44 +08:00
mssonicbld
d675af7027
[submodule] Update submodule sonic-gnmi to the latest HEAD automatically (#16799)
#### Why I did it
src/sonic-gnmi
```
* df4d49f - (HEAD -> 202305, origin/202305) Install necessary debs instead of entire artifact in azp (#137) (12 hours ago) [Zain Budhwani]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-10-08 16:32:21 +08:00
mssonicbld
ddd932eb92
[submodule] Update submodule sonic-swss to the latest HEAD automatically (#16803) 2023-10-08 15:54:12 +08:00
mssonicbld
e6cdb9a590
[submodule] Update submodule sonic-sairedis to the latest HEAD automatically (#16801) 2023-10-08 15:50:58 +08:00
mssonicbld
0c4a5b4a82
[submodule] Update submodule sonic-utilities to the latest HEAD automatically (#16804) 2023-10-08 15:32:19 +08:00
jhli-cisco
45b023cbe5
Update cisco-8000.ini (#16786)
Why I did it
First SONIC 202305 based release
Includes all fixes so far up to latest 202205 based 8111 drop (Code drop 111: 202205.main.0.13)
Work item tracking
Microsoft ADO (number only):
How I did it
update to 202305.main.0.1 release

How to verify it
2023-10-08 12:30:32 +08:00
Nazarii Hnydyn
ea40778e35
[ssm]: Enable Store-And-Forward switching mode for SN2700/SN3800/SN4600C/SN4700. (#16761)
BACKPORT: #16781

Why I did it
To enable Store-And-Forward switching mode for SN2700/SN3800/SN4600C/SN4700
Work item tracking
N/A
How I did it
Added vendor SAI config options
How to verify it
make configure PLATFORM=mellanox
make target/sonic-mellanox.bin
2023-10-08 12:29:09 +08:00
mssonicbld
70332c1fde
[nokia]: Updated total headroom pool size to accommodate 100G ports on T2 uplinks (#16690) (#16798) 2023-10-08 04:04:33 +08:00
mssonicbld
94044d0dbf
[Nokia][sonic-platform] Update Nokia sonic-platform submodule - SFP support for CMIS CDB operations (#16572) (#16796) 2023-10-08 03:21:38 +08:00
mssonicbld
e793e83c0a
Update BMCDATAV6 Definition (#16634) (#16797) 2023-10-08 03:06:51 +08:00
mssonicbld
c3ea44a522
[Mellanox] add new platform 2700 a1 (#16515) (#16795) 2023-10-08 03:06:03 +08:00
mssonicbld
413f4bd253
[Arista] Add new hwskus to x86_64-arista_7060dx5_32 (#16077) (#16794) 2023-10-08 02:59:07 +08:00
mssonicbld
7c812509fd
[submodule] Update submodule sonic-swss to the latest HEAD automatically (#16764) 2023-10-05 15:21:57 +08:00
Junchao-Mellanox
648c94dd59 [Mellanox] wait reset cause ready (#16722)
Why I did it
SONiC service determine-reboot-cause might run before driver creating reset cause files. In that case, the reset cause will be "Unknown". This PR introduces a wait mechanism to wait for reset cause sysfs files ready.

How I did it
/run/hw-management/config/reset_attr_ready is the file to indicate all reset cause files are ready. In chassis.get_reboot_cause function, it waits /run/hw-management/config/reset_attr_ready for up to 45 seconds.

How to verify it
Manual test on master/202211/202205
2023-10-04 14:34:30 +08:00
mssonicbld
185a63bc7f
[fast-reboot] Fix regression: set FAST_REBOOT state_db flag to support fast-reboot from older images (#16733) (#16753) 2023-09-29 05:29:20 +08:00
xumia
28f011a2f0 [Ci] Change the package upgrade PR title (#16674)
* [Ci] Change the package upgrade PR title

* Change the branchname variable, and change the body
2023-09-28 02:33:48 +08:00
Vivek
11e9f7c0de [Nvidia] Remove the dependency on python_sdk_api for sfp api (#16545)
Sfp api can now be called from the host which doesn't have the python_sdk_api installed. Also, sfp api has been migrated to use sysfs instead of sdk handle.

Signed-off-by: Vivek Reddy Karri <vkarri@nvidia.com>
2023-09-27 18:33:34 +08:00
mssonicbld
4500709c8a
[submodule] Update submodule sonic-swss to the latest HEAD automatically (#16694)
#### Why I did it
src/sonic-swss
```
* 8934b62b - (HEAD -> 202305, origin/202305) [202305][CodeQL]: Use dependencies with relevant versions in azp template. (#2906) (3 hours ago) [Nazarii Hnydyn]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-09-26 16:33:35 +08:00
Sudharsan Dhamal Gopalarathnam
11ed28c857 [ctnmgd]: Fixing netaddr build issue (#16668)
Fixing the following build issue

[2023-09-20T04:42:00.004Z] [ FAIL LOG START ] [ target/python-wheels/bullseye/sonic_bgpcfgd-1.0-py3-none-any.whl ]
[2023-09-20T04:42:00.004Z] Build start time: Wed Sep 20 04:41:54 UTC 2023
[2023-09-20T04:42:00.004Z] [ REASON ] :      target/python-wheels/bullseye/sonic_bgpcfgd-1.0-py3-none-any.whl does not exist   NON-EXISTENT PREREQUISITES: target/python-wheels/bullseye/sonic_config_engine-1.0-py3-none-any.whl-install target/python-wheels/bullseye/sonic_yang_mgmt-1.0-py3-none-any.whl-install target/python-wheels/bullseye/sonic_yang_models-1.0-py3-none-any.whl-install target/debs/bullseye/libyang_1.0.73_amd64.deb-install target/debs/bullseye/libyang-cpp_1.0.73_amd64.deb-install target/debs/bullseye/python3-yang_1.0.73_amd64.deb-install target/debs/bullseye/python3-swsscommon_1.0.0_amd64.deb-install 
[2023-09-20T04:42:00.004Z] [ FLAGS  FILE    ] : [] 
[2023-09-20T04:42:00.005Z] [ FLAGS  DEPENDS ] : [mellanox amd64 bullseye] 
[2023-09-20T04:42:00.005Z] [ FLAGS  DIFF    ] : [mellanox amd64 bullseye ] 
[2023-09-20T04:42:00.005Z] /sonic/src/sonic-bgpcfgd /sonic
[2023-09-20T04:42:00.005Z] running pytest
[2023-09-20T04:42:00.005Z] Searching for netaddr==0.8.0
[2023-09-20T04:42:00.005Z] Best match: netaddr 0.8.0
[2023-09-20T04:42:00.005Z] 
[2023-09-20T04:42:00.005Z] Using /var/sw-r2d2-bot/.local/lib/python3.9/site-packages
[2023-09-20T04:42:00.005Z] running egg_info
[2023-09-20T04:42:00.005Z] writing sonic_bgpcfgd.egg-info/PKG-INFO
[2023-09-20T04:42:00.005Z] writing dependency_links to sonic_bgpcfgd.egg-info/dependency_links.txt
[2023-09-20T04:42:00.005Z] writing entry points to sonic_bgpcfgd.egg-info/entry_points.txt
[2023-09-20T04:42:00.005Z] writing requirements to sonic_bgpcfgd.egg-info/requires.txt
[2023-09-20T04:42:00.005Z] writing top-level names to sonic_bgpcfgd.egg-info/top_level.txt
[2023-09-20T04:42:00.005Z] reading manifest file 'sonic_bgpcfgd.egg-info/SOURCES.txt'
[2023-09-20T04:42:00.005Z] writing manifest file 'sonic_bgpcfgd.egg-info/SOURCES.txt'
[2023-09-20T04:42:00.005Z] running build_ext
[2023-09-20T04:42:00.005Z] Traceback (most recent call last):
[2023-09-20T04:42:00.005Z]   File "/sonic/src/sonic-bgpcfgd/setup.py", line 3, in <module>
[2023-09-20T04:42:00.005Z]     setuptools.setup(
[2023-09-20T04:42:00.005Z]   File "/usr/local/lib/python3.9/dist-packages/setuptools/__init__.py", line 163, in setup
[2023-09-20T04:42:00.005Z]     return distutils.core.setup(**attrs)
[2023-09-20T04:42:00.005Z]   File "/usr/lib/python3.9/distutils/core.py", line 148, in setup
[2023-09-20T04:42:00.005Z]     dist.run_commands()
[2023-09-20T04:42:00.006Z]   File "/usr/lib/python3.9/distutils/dist.py", line 966, in run_commands
[2023-09-20T04:42:00.006Z]     self.run_command(cmd)
[2023-09-20T04:42:00.006Z]   File "/usr/lib/python3.9/distutils/dist.py", line 985, in run_command
[2023-09-20T04:42:00.006Z]     cmd_obj.run()
[2023-09-20T04:42:00.006Z]   File "/usr/local/lib/python3.9/dist-packages/ptr.py", line 208, in run
[2023-09-20T04:42:00.006Z]     with self.project_on_sys_path():
[2023-09-20T04:42:00.006Z]   File "/usr/lib/python3.9/contextlib.py", line 117, in __enter__
[2023-09-20T04:42:00.006Z]     return next(self.gen)
[2023-09-20T04:42:00.006Z]   File "/usr/local/lib/python3.9/dist-packages/setuptools/command/test.py", line 168, in project_on_sys_path
[2023-09-20T04:42:00.006Z]     require('%s==%s' % (ei_cmd.egg_name, ei_cmd.egg_version))
[2023-09-20T04:42:00.006Z]   File "/usr/local/lib/python3.9/dist-packages/pkg_resources/__init__.py", line 899, in require
[2023-09-20T04:42:00.006Z]     needed = self.resolve(parse_requirements(requirements))
[2023-09-20T04:42:00.006Z]   File "/usr/local/lib/python3.9/dist-packages/pkg_resources/__init__.py", line 790, in resolve
[2023-09-20T04:42:00.006Z]     raise VersionConflict(dist, req).with_context(dependent_req)
[2023-09-20T04:42:00.006Z] pkg_resources.ContextualVersionConflict: (netaddr 0.9.0 (/var/sw-r2d2-bot/.local/lib/python3.9/site-packages), Requirement.parse('netaddr==0.8.0'), {'sonic-bgpcfgd'})
[2023-09-20T04:42:00.007Z] [  FAIL LOG END  ] [ target/python-wheels/bullseye/sonic_bgpcfgd-1.0-py3-none-any.whl ]
[2023-09-20T04:42:00.007Z] make: *** [slave.mk:881: target/python-wheels/bullseye/sonic_bgpcfgd-1.0-py3-none-any.whl] Error 1
[2023-09-20T04:42:00.007Z] make: *** Waiting for unfinished jobs....
2023-09-26 14:34:16 +08:00
mssonicbld
6a409ed495
[submodule] Update submodule sonic-swss to the latest HEAD automatically (#16642)
#### Why I did it
src/sonic-swss
```
* 0584d35b - (HEAD -> 202305, origin/202305) Revert "Support type7 encoded CAK key for macsec in config_db (#2892)" (3 minutes ago) [stormliang]
* 7097cf2b - Revert "[teamd]: Clean teamd process if LAG creation fails (#2888)" (3 days ago) [stormliang]
* a0eb0d07 - Support type7 encoded CAK key for macsec in config_db (#2892) (4 days ago) [judyjoseph]
* c7e5f10e - [teamd]: Clean teamd process if LAG creation fails (#2888) (4 days ago) [Lawrence Lee]
* f30b6107 - [CodeQL]: Use dependencies with relevant versions in azp template. (#2845) (4 days ago) [Nazarii Hnydyn]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-09-25 18:34:17 +08:00
mssonicbld
0c60976b2a
[submodule] Update submodule sonic-utilities to the latest HEAD automatically (#16677) 2023-09-25 18:06:05 +08:00
mssonicbld
94e65119ae
[submodule] Update submodule sonic-utilities to the latest HEAD automatically (#16643) 2023-09-22 21:33:49 +08:00
mssonicbld
88bec29b52
[submodule] Update submodule sonic-platform-daemons to the latest HEAD automatically (#16641) 2023-09-22 21:20:29 +08:00
Dror Prital
81b5361b2a [Mellanox] Update SDK/FW to 4.6.1062/2012.1062 Update SDK/FW/SAI to 4.6.1062/2012.1062/SAIBuild2211.25.1.4 (#16478)
- Why I did it
SAI bug Fixes
1. When creating an ACL rule with SAI_ACL_ENTRY_ATTR_FIELD_SRC_IP/SAI_ACL_ENTRY_ATTR_FIELD_DST_IP enabled, and then disabling the field by setting enable=false, a match on L3_type=IPv4 will remain programmed for the rule Issue resolved after the fix
2. Allow the max scale of virtual routers to be configure for SPC-1, SPC-2, SPC-3 which is 255 when fastboot enable and 511 when fastboot disable
3. Remove default hash key of SRC_MAC, DST_MAC and ETH_TYPE

SAI features
1. Port init profile
2. Dual ToR Active-Standby | Additional MAC support

SDK/FW bug fixes
1. When preforming fast boot from an old SDK version (currently installed) to a newer one (target version), and the system was initially loaded with a new SDK version (past version), and the system has not been wiped, under specific conditions, the fast boot would use the past version's data and may fail.

- How I did it
Update SAI version to SAIBuild2211.25.1.4
Update SDK/FW version to 4.6.1062/2012.1062
2023-09-22 14:34:08 +08:00
vganesan-nokia
52d5980c0c
[swss] Chassis db clean up optimization and bug fixes (#16454) (#16644)
* [swss] Chassis db clean up optimization and bug fixes

This commit includes the following changes:
    - Fix for regression failure due to error in finding CHASSIS_APP_DB in
    pizzabox (#PR 16451)
    - After attempting to delete the system neighbor entries from
    chassis db, before starting clearing the system interface entries,
    wait for sometime only if some system neighbors were deleted.
    If there are no system neighbors entries deleted for the asic coming up,
    no need to wait.
    - Similar changes for system lag delete. Before deleting the
    system lag, wait for some time only if some system lag memebers were
    deleted. If there are no system lag members deleted no need to wait.
    - Flush the SYSTEM_NEIGH_TABLE from the local STATE_DB. While asic
    is coming up, when system neigh entries are deleted from chassis ap
    db (as part of chassis db clean up), there is no orchs/process running to
    process the delete messages from chassis redis. Because of this, stale system
    neigh are entries present in the local STATE_DB. The stale entries result in
    creation of orphan (no corresponding data path/asic db entry) kernel neigh
    entries during STATE_DB:SYSTEM_NEIGH_TABLE entries processing by nbrmgr (after
    the swss serive came up). This is avoided by flushing the SYSTEM_NEIGH_TABLE from
    the local STATE_DB when sevice comes up.

Signed-off-by: vedganes <veda.ganesan@nokia.com>

* [swss] Chassis db clean up bug fixes review comment fix - 1

Debug logs added for deletion of other tables (SYSTEM_INTERFACE and SYSTEM_LAG_TABLE)

Signed-off-by: vedganes <veda.ganesan@nokia.com>

---------

Signed-off-by: vedganes <veda.ganesan@nokia.com>
(cherry picked from commit b13b41fc22)
2023-09-22 10:58:27 +08:00
mssonicbld
1749fad21d
[submodule] Update submodule sonic-linux-kernel to the latest HEAD automatically (#16639) 2023-09-22 02:03:10 +08:00
mssonicbld
d7014c6ecd
[submodule] Update submodule sonic-platform-common to the latest HEAD automatically (#16640) 2023-09-22 01:26:56 +08:00
Feng-msft
94696fe4cc Stop installing development packages from telemetry docker images to (#16603)
Stop installing development packages from telemetry docker images to avoid unnecessary space usage.

### Why I did it
From 202305, libswsscommon-dev and the Boost headers were brought in telemetry docker image incorrectly, which result in unnecessary space usage.

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

#### How I did it
Remove  libswsscommon-dev accordingly.

#### How to verify it
Image building.
2023-09-22 00:36:18 +08:00
Pavan-Nokia
370980d42f [armhf][Nokia-7215]Add HWSKU files for new SAI (#16321)
Add new easy bringup (EZB) files for new SAI 1.12.0
2023-09-21 22:33:17 +08:00
anamehra
3bca122b29 Chassis: fix pmon docker failure when DEVICE_METADATA is not available (#16527)
Signed-off-by: anamehra anamehra@cisco.com

Added a check for DEVICE_METADATA before accessing the data. This prevents the j2 failure when var is not available.
2023-09-21 22:33:07 +08:00
mssonicbld
e7f49c9bce
Fix potentially not having any loopback address on lo interface (#16490) (#16628)
In #15080, there was a command added to re-add 127.0.0.1/8 to the lo
interface when the networking configuration is being brought down.
However, the trigger for that command is `down`, which, looking at
ifupdown2 configuration files, runs immediately after 127.0.0.1/16 is
removed. This means there may be a period of time where there are no
loopback addresses assigned to the lo interface, and redis commands will
fail.

Fix this by changing this to pre-down, which should run well before
127.0.0.1/16 is removed, and should always leave lo with a loopback
address.

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
Co-authored-by: Saikrishna Arcot <sarcot@microsoft.com>
2023-09-21 20:40:21 +08:00
mssonicbld
1726eb3eb7
Update macsec CAK keys in profile for tests to change to type7 encoded format (#16388) (#16626)
* Change the CAK key length check in config plugin, macsec test profile changes

* Fix the format in add_profile api

The changes needed in various macsec unit tests and config plugin when we move to accept the type 7 encoded key format for macsec. This goes along with PR : sonic-net/sonic-swss#2892 raised earlier.

Co-authored-by: judyjoseph <53951155+judyjoseph@users.noreply.github.com>
2023-09-21 20:39:01 +08:00
mssonicbld
a713299614
[Mellanox] Remove mlxtrace support for SPC4 (#16373) (#16625)
- Why I did it
Because the Spectrum4 devices don't support mlxtrace utility.

- How I did it
Edit sai.profile and remove mlxtrace_spectrum4_itrace_*.cfg.ext files

Signed-off-by: vadymhlushko-mlnx <vadymh@nvidia.com>
Co-authored-by: Vadym Hlushko <62022266+vadymhlushko-mlnx@users.noreply.github.com>
2023-09-21 20:38:22 +08:00
Gokulnath Raja
8e85fba740 Upgrading hsflowd version from 2.0.35 to 2.0.51-26 to address for [sflow]ERR sflow#hsflowd: device Loopback0 Get SIOCGIFFLAGS failed : No such device #13407 (#15362)
Signed-off-by: Gokulnath-Raja <Gokulnath_R@dell.com>
Co-authored-by: mohanapriya-meganathan <mohanapriya.m1@dell.com>
2023-09-21 18:34:19 +08:00
Alpesh Patel
6b48346ff5 qos template change for backend compute-ai deployment (#16150)
#### Why I did it

To enable qos config for a certain backend deployment mode, for resource-type "Compute-AI".
This deployment has the following requirement:

- Config below enabled if DEVICE_TYPE as one of backend_device_types
- Config below enabled if ResourceType is 'Compute-AI'
- 2 lossless TCs' (2, 3)
- 2 lossy TCs' (0,1)
- DSCP to TC map uses 4 DSCP code points and maps to the TCs' as follows:
   "DSCP_TO_TC_MAP": {
        "AZURE": {
             "48" : "0",
            "46" : "1",
            "3"  : "3",
            "4"  : "4"
        }
    }

- WRED profile has green {min/max/mark%} as {2M/10M/5%}

This required template change <as in the PR> in addition to the vendor qos.json.j2 file (not included here).

### How I did it

#### How to verify it
- with the above change and the vendor config change, generated the qos.json file and verified that the objective stated in "Why I did it" was met

- verified no error

### Description for the changelog
Update qos_config.j2 for Comptue-AI deployment on one of backend device type roles
2023-09-21 18:34:11 +08:00
Kebo Liu
27f15d40e1 [Mellanox] Update HW-MGMT package to new version V.7.0030.1011 (#16239)
- Why I did it
1. Update Mellanox HW-MGMT package to newer version V.7.0030.1011
2. Replace the SONiC PMON Thermal control algorithm with the one inside the HW-MGMT package on all Nvidia platforms
3. Support Spectrum-4 systems

- How I did it
1. Update the HW-MGMT package version number and submodule pointer
2. Remove the thermal control algorithm implementation from Mellanox platform API
3. Revise the patch to HW-MGMT package which will disable HW-MGMT from running on SIMX
4. Update the downstream kernel patch list

Signed-off-by: Kebo Liu <kebol@nvidia.com>
2023-09-21 18:34:07 +08:00
Zhijian Li
60f56101fb [YANG SONIC-ACL] Fix Yang definition of ACL_TABLE_TYPE (#16247)
How I did it
Update Yang definition of ACL_TABLE_TYPE.
Update existing testcase.
Add new testcase to cover lowercase key scenario.

How to verify it
Verified by building sonic_yang_models-1.0-py3-none-any.whl. While building the target package, unit tests were run and passed.
2023-09-21 18:34:01 +08:00
Rajkumar-Marvell
1768cdbcff [Marvell] Update armhf sai debian to add SAI 1.12 support (#16299)
- SAI 1.12 support

Signed-off-by: rajkumar38 <rpennadamram@marvell.com>
2023-09-21 18:33:57 +08:00
snider-nokia
5819846c61 [Nokia][sonic-platform] Update Nokia sonic-platform submodule (#16348)
This likely fixes Nokia-ION/ndk#21

To fix a failure that results when edge condition results in MDIPC channel being freed with mismatched ownership.
2023-09-21 18:33:53 +08:00
Prince George
d5a96f69f1 [platform]: Disable interrupt for intel i2c-i801 driver (#16309)
On S6100 we are seeing almost 100K interrupts per second on intels i801 SMBUS controller which affects systems performance.

We now disable the i801 driver interrupt and instead enable polling

Microsoft ADO (number only): 24910530

How I did it
Disable the interrupt by passing the interrupt disable feature argument to i2c-i801 driver

How to verify it
This fix is NOT applicable for ARM based platforms. Applicable only for intel based platforms:-

- On SN2700 its already disabled in Mellanox hw-mgmt
- Celestica DX010 and E1031
- Dell S6100 verified the interrupts are no longer incrementing.
- Arista 7260CX3

Signed-off-by: Prince George <prgeor@microsoft.com>
2023-09-21 16:33:37 +08:00
Aravind Mani
f57a3e64d0 [devices]: Dell S6100 API 2.0 fix (#16363)
Why I did it
sonic-mgmt test failure is seen for update_firmware component API

Microsoft ADO: 25208748

How I did it
Edited API 2.0 to fix this issue.

How to verify it
Run sonic-mgmt test after the fix and verify it passes.
2023-09-21 16:33:23 +08:00
Stephen Sun
a49860cc7f Add yang model for scheduler in PORT_QOS_MAP (#16244)
Signed-off-by: Stephen Sun <stephens@nvidia.com>
2023-09-19 14:33:44 +08:00
mssonicbld
e0744e8b66
[FRR] Adding patches for CVE-2023-41360 and CVE-2023-41359 (#16528) (#16581) 2023-09-18 21:27:41 +08:00
StormLiangMS
2b381b1fd4
Revert "revert [syslog] Add remote syslog configuration (cherry-pick to 202305) (#15897) (#16179)" (#16549)
This reverts commit 164fa102c0.
2023-09-14 20:52:14 +08:00
mssonicbld
1355839b30
[submodule] Update submodule sonic-utilities to the latest HEAD automatically (#16441) 2023-09-14 14:42:36 +08:00
Kebo Liu
fe7eeed051
[202305][Mellanox] Update SDK/FW/SAI to 4.6.1020/2012.1020/SAIBuild2305.25.0.3(#16096) (#16298)
* [Mellanox] Update SDK/FW/SAI to 4.6.1020/2012.1020/SAIBuild2305.25.0.3 (#16096)

SONiC changes:
1. Support Spectrum4 ASIC FW binary building.
2. Support new SDK sx-obj-desc lib building since new SAI need it.
3. Remove SX_SCEW debian package from Mellanox SDK build since we are no longer using it (we use libxml2 instead).
4. Update SAI, SDK, FW to version 4.6.1020/2012.1020/SAIBuild2305.25.0.3

SDK/FW bug fixes
1. In SPC-1 platforms: Fastboot mode is not operational for Split port with Force mode in 50G speed
SFP modules are kept in disabled state after set LPM (low power mode) on/off for at least 3 minutes.
2. When preforming fast boot from an old SDK version (currently installed) to a newer one (target version), and the system was initially loaded with a new SDK version (past version), and the system has not been wiped, under specific conditions, the fast boot would use the past version's data and may fail.

SDK/FW Features
1. On SN2700 all ports can support y cable by credo

SAI bug Fixes
1. When creating an ACL rule with SAI_ACL_ENTRY_ATTR_FIELD_SRC_IP/SAI_ACL_ENTRY_ATTR_FIELD_DST_IP enabled, and then disabling the field by setting enable=false, a match on L3_type=IPv4 will remain programmed for the rule Issue resolved after the fix
2. Allow the max scale of virtual routers to be configure for SPC-1, SPC-2, SPC-3 when fastboot enable
3. Remove default hash key of SRC_MAC, DST_MAC and ETH_TYPE

SAI features
1. Port init profile

- How I did it
Update SDK/FW/SAI make files

- How to verify it
Run full sonic-mgmt regression on Mellanox platform

Signed-off-by: Kebo Liu <kebol@nvidia.com>
Conflicts:
	platform/mellanox/mlnx-sai.mk

* Fix issue: unprintable character is rendered when handling comments in j2

Use "{#-" and "-#}" to mark comments in jinja template

Signed-off-by: Stephen Sun <stephens@nvidia.com>

---------

Signed-off-by: Stephen Sun <stephens@nvidia.com>
Co-authored-by: Stephen Sun <stephens@nvidia.com>
2023-09-10 22:28:46 +08:00
Samuel Angebault
6adbd770f4
[202305][Arista] Update platform library submodules (#16375)
- Ignore intermittent IO errors during get_change_event in the Platform API
- Fix tunings for some ports on CatalinaDD
2023-09-08 23:42:18 -07:00
mssonicbld
30378b4baf
[submodule] Update submodule sonic-platform-common to the latest HEAD automatically (#16395) 2023-09-05 00:40:27 +08:00
Pavan-Nokia
393c6911c5 [Nokia-7215-A1] Update Nokia-7215-A1 platform (#15342)
Update Nokia-7215-A1 platform to address UT and OC test failures
2023-09-05 00:35:18 +08:00
mssonicbld
fec89be477
[submodule] Update submodule sonic-linux-kernel to the latest HEAD automatically (#16431)
#### Why I did it
src/sonic-linux-kernel
```
* 9cb7ea0 - (HEAD -> 202305, origin/202305) arm64: dts: marvell: Add Nokia 7215-IXS-A1 board (#321) (24 hours ago) [Pavan-Nokia]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-09-04 16:33:09 +08:00
mssonicbld
8b7e74b7e2
[submodule] Update submodule sonic-utilities to the latest HEAD automatically (#16432) 2023-09-04 16:17:43 +08:00
jcaiMR
a30ccb5148
advance dhcpmon to a3c5381 (#16376)
Why I did it
Advance dhcpmon to a3c5381 in 202305 branch.

a3c5381 - (HEAD, origin/master, origin/HEAD, master) Merge pull request src: Add libnl3 build.sh script #11 from jcaiMR/dev/jcai_fix_err_log (11 days ago) [StormLiangMS]
c5ef7e7 - Change common_libs dependencies from buster to bullseye (Updating docker-orchagent/syncd Dockerfile and start.sh #9)
824a144 - replace atoi with strtol (Rename hostname #6) (10 weeks ago) [Mai Bui]
32c0c3f - Fix libswsscommon package installation for non-amd64 (README.md leaves out docker-database #7) (10 weeks ago) [Saikrishna Arcot]
Work item tracking
Microsoft ADO (25048723):
How I did it
How to verify it
Run test_dhcp_relay.py, no failure
2023-09-04 09:33:20 +08:00
mssonicbld
ebe24a134c
[chassis] Chassis DB cleanup when asic comes up (#16213) (#16417) 2023-09-03 23:52:39 +08:00
mssonicbld
fdc4c039b8
[Nokia-IXR7250E] Modify the platform_ndk.json for Nokia-IXR7250E platform (#16355) (#16428) 2023-09-03 22:19:40 +08:00
mssonicbld
40a5cea84c
Assign the higher metric value for Ipv6 default route learnt via RA message (#16367) (#16429) 2023-09-03 22:16:46 +08:00
mssonicbld
63801d5bf7
[Mellanox][SFP] Remove unused function parameter (#16318) (#16424) 2023-09-03 22:15:30 +08:00
mssonicbld
1fca6fcfba
[chassis][voq] Fix to ignore duplicate nexthop in zebra (#16275) (#16420) 2023-09-03 21:33:29 +08:00
mssonicbld
d62ae374a9
chassis-packet: Update arp_update script for FAILED and STALE check (#16311) (#16423) 2023-09-03 21:24:17 +08:00
mssonicbld
5e4cda9c1c
Fix openconfig_acl.py (#16303) (#16422) 2023-09-03 21:22:49 +08:00
mssonicbld
a897f1e312
[P4RT]Disabling p4rt by default to overcome build issues (#16343) (#16427) 2023-09-03 21:11:22 +08:00
mssonicbld
1cac2b6fb8
add processor.max_cstate=0 to intel cpu cmdline (#16339) (#16425) 2023-09-03 21:07:58 +08:00
Rajkumar-Marvell
2db19c2568 [SFLOW] Fixed SFLOW DROPMON patch to align with 2.0.45 version (#15948)
- Why I did it
Fixed build failure when flag ENABLE_SFLOW_DROPMON=y set

- How I did it
Fixed sflow dropmon patch to align with hsflowd version 2.0.45

Signed-off-by: rajkumar38 <rpennadamram@marvell.com>
2023-09-03 20:44:46 +08:00
Marty Y. Lok
5774ce2206 [Nokia][DeviceData] Update the Nokia platform IXR-7250E device data (#16028)
Why I did it
Update the platform_reboot of Nokia Platform IXR-7250E-36x400G to displays the correct reboot-cause history when reboot from supervisor card.

Work item tracking
Microsoft ADO (number only):
How I did it
Modify the platform_reboot script to copy the correct reboo-cause.txt file from NDK to the /host/reboot-cause directory at the down cycle when the reboot is issued from Supervisor (for both reboot right after install a new image and normal reboot)

Signed-off-by: mlok <marty.lok@nokia.com>
2023-09-03 20:44:41 +08:00
Junchao-Mellanox
d13341fd9b [Mellanox] Fix issue: watchdogutil command does not work (#16091)
- Why I did it
watchdogutil uses platform API watchdog instance to control/query watchdog status. In Nvidia watchdog status, it caches "armed" status in a object member "WatchdogImplBase.armed". This is not working for CLI infrastructure because each CLI will create a new watchdog instance, the status cached in previous instance will totally lose. Consider following commands:

admin@sonic:~$ sudo watchdogutil arm -s 100      =====> watchdog instance1, armed=True
Watchdog armed for 100 seconds
admin@sonic:~$ sudo watchdogutil status             ======> watchdog instance2, armed=False
Status: Unarmed
admin@sonic:~$ sudo watchdogutil disarm            =======> watchdog instance3, armed=False
Failed to disarm Watchdog

- How I did it
Use sysfs to query watchdog status

- How to verify it
Manual test
Unit test
2023-09-03 20:44:36 +08:00
Saikrishna Arcot
dc3991309b Remove depot_tools repo (#16114)
It appears that this was initially added to provide the git-retry
command (which doesn't appear to be used today). However, this repo is
now also providing bazel (which is actually used in our build today),
and this command (along with git-retry) expects some vpython3 binary to
be set up/installed.

Rather than going through that, just get rid of this repo.
2023-09-03 20:44:32 +08:00
Kebo Liu
9d4d3af5e6 [Mellanox] Update MFT to newer version 4.25.0-62 (#16149)
- Why I did it
Update Mellanox MFT tool to version 4.25.0-62

- How I did it
Update the MFT tool make file

- How to verify it
Run full sonic-mgmt regression.

Signed-off-by: Kebo Liu <kebol@nvidia.com>
2023-09-03 20:44:29 +08:00
Zain Budhwani
821177f47f [eventd]: Remove unnecessary log (#16166)
Work item tracking
Microsoft ADO (number only): 16789053
2023-09-03 20:44:25 +08:00
Senthil Kumar Guruswamy
dee901bd80 Handle service start-limit-hit failure event case in sysmonitor (#16174) 2023-09-03 20:44:20 +08:00
Yaqiang Zhu
8f415c004b [yang] Add Bmc to Device Neighbor Metadata element type list (#16188)
Bmc is a valid neighbor type in minigraph, however it was missing from the YANG model definition. Usually, the Bmc type device can be neighbor of BmcMgmtToRRouter. This PR is to introduce this type.
2023-09-03 20:44:16 +08:00
Aravind Mani
82dfe0db78 Dell S6100 Platform API 2.0 fixes (#16208)
Why I did it
Dell S6100 Platform components needs to be updated.

How I did it
Modified platform.json to fix the issue.

How to verify it
Run sonic-mgmt component test and check whether it passes.
2023-09-03 20:44:11 +08:00
Zhijian Li
2941df3289 [minigraph-parser] Update the definition of acl table type BMCDATA and BMCDATAV6 (#16249)
Why I did it
According to ACL-Table-Type-HLD, the value type of MATCHES, ACTIONS and BIND_POINTS should be list instead of string. Opening this PR to update the definition of BMCDATA and BMCDATAV6.

How I did it
Update the definition of BMCDATA and BMCDATAV6 in minigraph-parser.

How to verify it
Verified by UT and build SONiC image.
2023-09-03 20:44:05 +08:00
mssonicbld
82fa2d6a26
[submodule] Update submodule sonic-swss to the latest HEAD automatically (#16396)
#### Why I did it
src/sonic-swss
```
* c869c1df - (HEAD -> 202305, origin/202305) update portStatIds for cisco (#2876) (11 minutes ago) [Zhixin Zhu]
* dd152288 - [Dynamic Buffer][Mellanox] Skip PGs in pending deleting set while checking accumulative headroom of a port (#2871) (12 minutes ago) [Stephen Sun]
* 97068ff1 - Fix error in peer response time when headroom is calculated for 800G (#2860) (16 minutes ago) [Stephen Sun]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-09-03 18:32:58 +08:00
Junchao-Mellanox
cead17cb55 Fix issue: systemctl daemon-reload would sporadically cause udev handler fail (#15253)
#### Why I did it

A workaround to back port the fix for a systemd issue.

The systemd issue: https://github.com/systemd/systemd/issues/24668
The systemd PR to fix the issue: https://github.com/systemd/systemd/pull/24673/files

The formal solution should upgrade systemd to a version that contains the fix. But, systemd is a very basic service, upgrading systemd requires heavy test. 

#### How I did it
Copy the correct systemd-udevd.service file in build time 

#### Tested branch (Please provide the tested image version)

- [x] 202211
- [ ] <!-- image version 2 -->

```
SONiC Software Version: SONiC.fix-udev.3-b65c7bdec_Internal
SONiC OS Version: 11
Distribution: Debian 11.7
Kernel: 5.10.0-18-2-amd64
Build commit: b65c7bdec
Build date: Mon Jun 19 10:54:50 UTC 2023
Built by: sw-r2d2-bot@r-build-sonic-ci02-241

Platform: x86_64-mlnx_msn4700-r0
HwSKU: ACS-MSN4700
ASIC: mellanox
ASIC Count: 1
Serial Number: MT2022X08597
Model Number: MSN4700-WS2FO
Hardware Revision: A1
Uptime: 08:10:11 up 1 min,  1 user,  load average: 1.81, 0.67, 0.24
Date: Sun 25 Jun 2023 08:10:11

Docker images:
REPOSITORY                    TAG                             IMAGE ID       SIZE
docker-fpm-frr                fix-udev.3-b65c7bdec_Internal   a7b911e7cb6f   346MB
docker-fpm-frr                latest                          a7b911e7cb6f   346MB
docker-platform-monitor       fix-udev.3-b65c7bdec_Internal   94c5178cf80b   731MB
docker-platform-monitor       latest                          94c5178cf80b   731MB
docker-orchagent              fix-udev.3-b65c7bdec_Internal   46b393e0ace8   328MB
docker-orchagent              latest                          46b393e0ace8   328MB
docker-syncd-mlnx             fix-udev.3-b65c7bdec_Internal   1f5c6c23e33a   734MB
docker-syncd-mlnx             latest                          1f5c6c23e33a   734MB
docker-sflow                  fix-udev.3-b65c7bdec_Internal   7e45992c8c59   317MB
docker-sflow                  latest                          7e45992c8c59   317MB
docker-teamd                  fix-udev.3-b65c7bdec_Internal   e4d905592cda   316MB
docker-teamd                  latest                          e4d905592cda   316MB
docker-nat                    fix-udev.3-b65c7bdec_Internal   7fe799367580   319MB
docker-nat                    latest                          7fe799367580   319MB
docker-macsec                 latest                          d702a5554171   318MB
docker-snmp                   fix-udev.3-b65c7bdec_Internal   3bce8fcf71cd   338MB
docker-snmp                   latest                          3bce8fcf71cd   338MB
docker-sonic-telemetry        fix-udev.3-b65c7bdec_Internal   f13949cbc817   597MB
docker-sonic-telemetry        latest                          f13949cbc817   597MB
docker-dhcp-relay             latest                          153d9072805d   306MB
docker-router-advertiser      fix-udev.3-b65c7bdec_Internal   aed642b9a6bc   299MB
docker-router-advertiser      latest                          aed642b9a6bc   299MB
docker-sonic-p4rt             fix-udev.3-b65c7bdec_Internal   a3cae5ca65a7   870MB
docker-sonic-p4rt             latest                          a3cae5ca65a7   870MB
docker-mux                    fix-udev.3-b65c7bdec_Internal   b81f0401b9a8   347MB
docker-mux                    latest                          b81f0401b9a8   347MB
docker-eventd                 fix-udev.3-b65c7bdec_Internal   c5917d0e801f   298MB
docker-eventd                 latest                          c5917d0e801f   298MB
docker-lldp                   fix-udev.3-b65c7bdec_Internal   fd5dc14a7976   341MB
docker-lldp                   latest                          fd5dc14a7976   341MB
docker-database               fix-udev.3-b65c7bdec_Internal   438c2715a1dd   299MB
docker-database               latest                          438c2715a1dd   299MB
docker-sonic-mgmt-framework   fix-udev.3-b65c7bdec_Internal   5c50b115fbcd   414MB
docker-sonic-mgmt-framework   latest  
```
2023-09-03 18:32:54 +08:00
kenneth-arista
9a5c188b3c Add YANG model for FABRIC_PORT (#15629)
#### Why I did it

Introduce YANG model for FABRIC in CONFIG_DB, which was added in https://github.com/sonic-net/sonic-buildimage/pull/14170.

#### How I did it

This is a clone of @jfeng-arista's PR https://github.com/sonic-net/sonic-buildimage/pull/14282 to resolve conflicts with upstream changes. 

#### How to verify it

Passing pipeline build is sufficient.
2023-09-03 18:32:51 +08:00
Kebo Liu
8253fd5c07 [Mellanox] Update SAI build procedure (#15728)
= Why I did it
To optimize Mellanox platform SAI build

- How I did it
SAI debs are now downloaded as Spectrum-SDK-Drivers-SONiC-Bins release.

- How to verify it
Configure/build for Mellanox platform, check the image and ensure that correct SAI debs are included.
2023-09-03 18:32:47 +08:00
Vadym Hlushko
b7dfc5b280 [memory_checker] Add a specific log message in a case when the docker service is not running. (#16018)
#### Why I did it
To fix the logic introduced by [[memory_checker] Do not check memory usage of containers which are not created #11129](https://github.com/sonic-net/sonic-buildimage/pull/11129).
There could be a scenario before the reboot, where
1. The `docker service` has stopped
2. In a very short period of time, the monit service performs the `root@sonic:/home/admin# monit status container_memory_telemetry`

In such scenario, the `memory_checker` script will throw an error to the syslog:
```
ERR memory_checker: Failed to retrieve the running container list from docker daemon! Error message is: 'Error while fetching server API version: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))'
```
But, actually, this scenario is a correct behavior, because when the docker service is stopped, the Unix socket is destroyed and that is why we could see the `FileNotFoundError(2, 'No such file or directory'` exception in the syslog.

#### How I did it
Change the log severity to the warning and changed the return value.

#### How to verify it
It is really hard to catch the exact moment described in the `Why I did it` section.
In order to check the logic:
1. Change the Unix socket path to non-existing in [/usr/bin/memory_checker](47742dfc2c/files/image_config/monit/memory_checker (L139)) file on the switch.
2. Execute the `root@sonic:/home/admin# monit restart container_memory_telemetry`
3. Check the syslog for such messages:
```
WARNING memory_checker: Failed to retrieve the running container list from docker daemon! Error message is: 'Error while fetching server API version: ('Connection aborte
d.', FileNotFoundError(2, 'No such file or directory'))'

INFO memory_checker: [memory_checker] Exits without checking memory usage since container 'telemetry' is not running!
```
2023-09-03 18:32:43 +08:00
judyjoseph
edc1e48c17 sudo not required explicitly as /bin/ip netns identify is part of READ_ONLY_CMDS in sudoers file (#16115)
Why I did it
Few commands in multiasic platforms when run with the "sudo ip netns exec asic0 " option was taking like 15 mins to get the o/p. This behavior of sudo getting hung was seen by just doing this

jujoseph@svcstr-server-2:~ sudo ip netns exec asic0 bash
jujoseph@svcstr-server-2:~ sudo ls

deally sudo is not needed as we have /bin/ip netns identify present in /etc/sudoers file. Hence removing it
2023-09-03 18:32:38 +08:00
Junchao-Mellanox
6c9c2cca42 [Mellanox] Revise label name and fix typo in sensor.conf of 4600C (#16271)
- Why I did it
Revise lable name and fix typo in sensor.conf of 4600C

- How I did it
Revise lable name and fix typo in sensor.conf of 4600C

- How to verify it
Manual test
sonic-mgmt test_sensors.py
2023-09-03 18:32:30 +08:00
xumia
288ebd5dd3 Support FIPS DB configuration (#15632)
Why I did it
Support FIPS DB configuration
Design Doc: sonic-net/SONiC#1372

Work item tracking
Microsoft ADO (number only): 24411148
How I did it
Add the FIPS Yang model to make FIPS configurable in ConfigDB.

How to verify it
See TestPlan: sonic-net/sonic-mgmt#9092
Build the image and run the tests: sonic-net/sonic-mgmt#9091
2023-09-03 16:33:25 +08:00
Vivek
1908a04fdf [Mellanox] [SN4410] Support new breakout modes for PAM4 (#15668)
- Why I did it
Add new breakout modes to be used in PAM4 supported cables

- How I did it

- How to verify it
Verified the 50G per lane breakout modes are applied properly on the switch

Signed-off-by: Vivek Reddy Karri <vkarri@nvidia.com>
2023-09-03 16:33:21 +08:00
Nazarii Hnydyn
dd08437b3d [Mellanox] [PPI] Enable global port late create for SN5600 (#15866)
- Why I did it
Enabled port late create on SN5600 Spectrum-4 switch boots up with no ports

Work item tracking
N/A

- How I did it
Updated SAI xml config file

- How to verify it
Run sonic-mgmt tests of fastboot

Signed-off-by: Nazarii Hnydyn <nazariig@nvidia.com>
2023-09-03 16:33:15 +08:00
Vadym Hlushko
1f1ae60961 [Mellanox] Change SDK API sx_mgmt_phy_module_info_get() to sysfs (#15963)
- Why I did it
Change Mellanox platform API implementation to use ASIC driver sysfs for the module operational state and status error fields.

- How I did it
Modify the platform/mellanox/mlnx-platform-api/sonic_platform/sfp.py file by change the call of sx_mgmt_phy_module_info_get() SDK API to sysfs

- How to verify it
Simulate the unplug cable event
Check the CLI output
sfputil show presence
sfputil show error-status -hw
Simulate the plug cable event
Repeat 2 step

Signed-off-by: vadymhlushko-mlnx <vadymh@nvidia.com>
2023-09-03 16:33:10 +08:00
StormLiangMS
7b8906600c
add sonic release for 202305 (#16364) 2023-09-03 09:23:39 +08:00
andywongarista
f0823e6dd0
[Arista] Add support for DCS-7060DX5-32 (#14793) (#16176)
* Add asic support for blackhawkth4dd

* Add bfd feature to BlackhawkTh4Dd

* Add platform data for blackhawkth4

* Add Qos settings for Blackhawk-TH4

* Add pg and queue settings for Blackhawk-TH4

* Add buffers_defaults_t0.j2

* Add blackhawkth4 to boot0

* Update 7060dx5 config.bcm

* Fix build error

---------

Co-authored-by: Boyang Yu <byu@arista.com>
Co-authored-by: David Meggy <davidm@arista.com>
2023-09-03 09:21:33 +08:00
Liping Xu
863a062c56 update DOCKER_RAMFS_SIZE (#16305)
Why I did it
docker folder size on 202305 image is more than 1.5G. larger than the max size of docker ramfs size.

Work item tracking
Microsoft ADO (number only):
24969589
How I did it
Update the docker ramfs size from 1500M to 2500M

How to verify it
Boot 202305 image.
2023-08-31 22:32:29 +08:00
mssonicbld
adfc486456
Run db_migrator for non first-time reboots (#16116) (#16306) 2023-08-29 05:36:36 +08:00
mssonicbld
f0b03b7f97
[submodule] Update submodule sonic-sairedis to the latest HEAD automatically (#16292) 2023-08-26 15:33:51 +08:00
Zhijian Li
2ea5a05b51 [YANG SONIC-ACL] Fix Yang definition of IN_PORTS and OUT_PORTS (#16220)
How I did it
Update Yang definition of IN_PORTS and OUT_PORTS to string.
Since we cannot split the string with comma (,) and validate each substring is a valid SONiC port name. The only restriction for them is must be a string.

How to verify it
Verified by building sonic_yang_models-1.0-py3-none-any.whl. While building the target package, unit tests were run and passed.
Build a SONiC image based on 202205 branch and installed on physical DUT. Re try the steps in [Yang] Incorrect definition of IN_PORTS and OUT_PORTS in sonic-acl.yang #16190 and can see below success response:
2023-08-25 14:33:03 +08:00
Vaibhav Hemant Dixit
0b83639068
Fix CONFIG_DB_INITIALIZED flag check logic and set/reset flag for warmboot (#15685) (#16217)
Cherypick of #15685

MSFT ADO: 24274591

Why I did it
Two changes:

1 Fix a day1 issue, where check to wait until CONFIG_DB_INITIALIZED is incorrect.
There are multiple places where same incorrect logic is used.

Current logic (until [[ $($SONIC_DB_CLI CONFIG_DB GET "CONFIG_DB_INITIALIZED") ]];) will always result in pass, irrespective of the result of GET operation.

root@str2-7060cx-32s-29:~# sonic-db-cli CONFIG_DB GET "CONFIG_DB_INITIALIZED"
1
root@str2-7060cx-32s-29:~# until [[ $(sonic-db-cli CONFIG_DB GET "CONFIG_DB_INITIALIZED") ]]; do echo "entered here"; done
root@str2-7060cx-32s-29:~# 

root@str2-7060cx-32s-29:~# 
root@str2-7060cx-32s-29:~# sonic-db-cli CONFIG_DB GET "CONFIG_DB_INITIALIZED"                                             
0
root@str2-7060cx-32s-29:~# until [[ $(sonic-db-cli CONFIG_DB GET "CONFIG_DB_INITIALIZED") ]]; do echo "entered here"; done
root@str2-7060cx-32s-29:~# 
Fix this logic by checking for value of flag to be "1".

root@str2-7060cx-32s-29:~# until [[ $(sonic-db-cli CONFIG_DB GET "CONFIG_DB_INITIALIZED") -eq 1 ]]; do echo "entered here"; done
entered here
entered here
entered here
This gap in logic was highlighted when another fix was merged: #14933
The issue being fixed here caused warmboot-finalizer to not wait until config-db is initialized.

2 Set and unset CONFIG_DB_INITIALIZED for warm-reboot case
Currently, during warm shutdown CONFIG_DB_INITIALIZED's value is stored in redis db backup. This is restored back when the dump is loaded during warm-recovery.
So the value of CONFIG_DB_INITIALIZED does not depend on config db's state, however it remain what it was before reboot.

Fix this by setting CONFIG_DB_INITIALIZED to 0 as when the DB is loaded, and set it to 1 after db_migrator is done.

Work item tracking
Microsoft ADO (number only):
How I did it
How to verify it
2023-08-24 16:58:24 +08:00
mssonicbld
875b81e407
[Mellanox] Add mlxtrace to techsupport (#15961) (#16215) 2023-08-20 23:51:38 +08:00
mssonicbld
8e749e957a
[frr]: FRR 8.5.1 integration changes (#15965) (#16212) 2023-08-19 21:06:09 +08:00
StormLiangMS
164fa102c0
revert [syslog] Add remote syslog configuration (cherry-pick to 202305) (#15897) (#16179) 2023-08-19 16:01:29 +08:00
mssonicbld
fdcbc38b52
[submodule] Update submodule sonic-utilities to the latest HEAD automatically (#16195) 2023-08-18 23:09:18 +08:00
mssonicbld
4c160ffbe4
[submodule] Update submodule linkmgrd to the latest HEAD automatically (#16152)
#### Why I did it
src/linkmgrd
```
* 40113fd - (HEAD -> 202305, origin/202305) [active-standby] Fix extra toggle observed in `config reload` (#216) (2 days ago) [Longxiang Lyu]
* b6d40fc - Add ADO to the PR template (#215) (2 days ago) [Longxiang Lyu]
* fe41ad2 - [active-standby] Write `unhealthy` is default route `N/A` (#214) (2 days ago) [Longxiang Lyu]
* 8ff265c - [link prober] Increase pause/restart probe log verbosity (#213) (2 days ago) [Longxiang Lyu]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-08-16 18:32:40 +08:00
mssonicbld
98646be38a
[submodule] Update submodule sonic-platform-daemons to the latest HEAD automatically (#16156)
#### Why I did it
src/sonic-platform-daemons
```
* 4688e1e - (HEAD -> 202305, origin/202305) [PSU power threshold] Fix logic error: compare the system power with the PSU's power threshold (#367) (2 days ago) [Stephen Sun]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-08-16 16:32:48 +08:00
Jing Zhang
0352c83fb5 add service_mgmt (#15927)
Adding yang model for CONFIG_DB table MUX_LINKMGR|SERVICE_MGMT.

sign-off: Jing Zhang zhangjing@microsoft.com
2023-08-16 14:32:47 +08:00
mssonicbld
8ef188169e
[submodule] Update submodule sonic-swss to the latest HEAD automatically (#16158)
#### Why I did it
src/sonic-swss
```
* 6b0c8c5c - (HEAD -> 202305, origin/202305) [muxorch] set mux state to init upon warm reboot (#2834) (18 hours ago) [Nikola Dancejic]
* bc9bde94 - [ASAN] Fix Indirect Mem Leaks in Orchagent (#2869) (24 hours ago) [Vivek]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-08-15 18:32:23 +08:00
mssonicbld
bf1be5f3e8
[submodule] Update submodule sonic-utilities to the latest HEAD automatically (#16120) 2023-08-15 16:52:43 +08:00
Baorong Liu
6016b2ba57 [staticroutebfd] fix static route uninstall issue when all nexthops are not reachable (#15575)
fix static route uninstall issue when all nexthops are not reachable.
the feature was working but the bug was introduced when support dynamic bfd enable/disable. Added UT testcase to guard this.
2023-08-15 16:32:34 +08:00
vmittal-msft
7b7aae981a Updated PG headroom settings for 40g port speed (#16038) 2023-08-15 16:32:30 +08:00
Zhaohui Sun
2bc65aa7ba
[202305]Change orchagent pop batch size from 8192 to 1024 (#16127)
### Why I did it
Background running lua script may cause redis-server quite busy if batch size is 8192.
If handling time exceeded default 5s, the redis-server will not response to other process and will cause syncd crash.

```
Aug  9 07:46:29.512326 str-s6100-acs-5 INFO database#supervisord: redis 68:M 09 Aug 2023 07:46:29.511 # Lua slow script detected: still in execution after 5186 milliseconds. You can try killing the script using the SCRIPT KILL command. Script SHA1 is: 88270a7c5c90583e56425aca8af8a4b8c39fe757
Aug  9 07:46:29.523716 str-s6100-acs-5 ERR syncd#syncd: :- checkReplyType: Expected to get redis type 5 got type 6, err: BUSY Redis is busy running a script. You can only call SCRIPT KILL or SHUTDOWN NOSAVE.
Aug  9 07:46:29.524818 str-s6100-acs-5 INFO syncd#supervisord: syncd terminate called after throwing an instance of '
Aug  9 07:46:29.525268 str-s6100-acs-5 ERR pmon#CCmisApi: :- checkReplyType: Expected to get redis type 5 got type 6, err: BUSY Redis is busy running a script. You can only call SCRIPT KILL or SHUTDOWN NOSAVE.
Aug  9 07:46:29.526148 str-s6100-acs-5 INFO syncd#supervisord: syncd std::system_error'
Aug  9 07:46:29.528308 str-s6100-acs-5 ERR pmon#psud[32]: :- checkReplyType: Expected to get redis type 5 got type 6, err: BUSY Redis is busy running a script. You can only call SCRIPT KILL or SHUTDOWN NOSAVE.
Aug  9 07:46:29.529048 str-s6100-acs-5 ERR lldp#python3: :- guard: RedisReply catches system_error: command: *2#015#012$3#015#012DEL#015#012$27#015#012LLDP_ENTRY_TABLE:Ethernet37#015#012, reason: BUSY Redis is busy running a script. You can only call SCRIPT KILL or SHUTDOWN NOSAVE.: Input/output error
Aug  9 07:46:29.529720 str-s6100-acs-5 ERR snmp#python3: :- guard: RedisReply catches system_error: command: *2#015#012$7#015#012HGETALL#015#012$28#015#012COUNTERS:oid:0x100000000000a#015#012, reason: BUSY Redis is busy running a script. You can only call SCRIPT KILL or SHUTDOWN NOSAVE.: Input/output error
```

88270a7c5c90583e56425aca8af8a4b8c39fe757 is /usr/share/swss/consumer_state_table_pops.lua
##### Work item tracking
- Microsoft ADO **24741990**:

#### How I did it
Change batch size from 8192 to 1024.

#### How to verify it
Run all test cases in sonic-mgmt to verify the system stability.

### Tested branch (Please provide the tested image version)

- [x] 20220531.36
2023-08-14 17:53:08 -07:00
Stephen Sun
f25dcef032 Update the description message of PSU power threshold checking in system health (#15289)
- Why I did it
Adjust PSU power threshold logic in system health.

- How I did it
Update the description message in PSU power threshold checking
power of PSU x (xx w) exceeds threshold (xx w) => System power exceeds xx threshold (xx w)

- How to verify it
Manual test and unit test
2023-08-15 04:32:43 +08:00
Vaibhav Hemant Dixit
2969d84e58 Revert "Revert "Fix for fast/cold-boot: call db_migrator only after old config is loaded (#14933)" (#15464)" (#15684)
This reverts commit 9649a44470.
2023-08-15 04:32:38 +08:00
abdosi
15a39ac806 Fix the Loopback0 IPv6 address of LC's in chassis not reachable from (#16026)
What I did:
Fix the Loopback0 IPv6 address of LC's in chassis not reachable from peer devices.

Why I did:
For Ipv6 Loopback0 address we only advertise /64 subnet to the peer devices. However, in case of chassis each LC will have it own /128 address of that /64 subnet . Since this /128 address does not get advertised peer devices can-not ping/reach the LC's loopback0.

How I fix:
Advertise /128 Loopback0 Ipv6 address only between i-BGP peers. This way even though /64 is advertised to e-BGP peer devices when packet reaches any of LC's it can reach the appropriate LC's.

How I verify:
Manual verification
UT added for same.

Signed-off-by: Abhishek Dosi <abdosi@microsoft.com>
2023-08-15 04:32:34 +08:00
pavannaregundi
6876f27374 [Marvell] Fix get_system_mac for system without eeprom (#15376)
Why I did it
get_system_mac was returning 'None' mac for system without eeprom.
get_system_mac for marvell platform checks for mac in eeprom, profile.ini(hwsku file) and eth0. Check for valid mac returned by syseeprom was incorrect. Which was resulting in bypassing mac get from profile.ini and eth0.

How I did it
get_system_mac already has a logic to get first valid mac.
Removed null check for mac returned by eeprom.
Corrected the check for profile.ini file by checking if file exist.

How to verify it
Executed sonic-cfggen to check valid mac address is getting configured in config_db.json with/without profile.ini.
Signed-off-by: Pavan Naregundi <pnaregundi@marvell.com>
2023-08-15 04:32:30 +08:00
Yevhen Fastiuk
4602d30a73
[syslog] Add remote syslog configuration (cherry-pick to 202305) (#15897)
cherry-pick: #14513
depends: https://github.com/sonic-net/sonic-utilities/pull/2939

* Add an ability to configure remote syslog servers
* Add an initial configuration for remote syslog
* Extend YANG module and add unit tests

#### Why I did it
Adding the following functionality to rsyslog feature:

* Configure remote syslog servers: protocol, filter, severity level
* Update global syslog configuration: severity level, message format

#### How I did it
added parameters to syslog server and global configuration.

#### How to verify it
create syslog server using CLI/adding to Redis-DB
verify server is added to file /etc/rsyslog.conf and server is functional.

#### Description for the changelog
extend rsyslog capabilities, added server and global configuration parameters.

#### Link to config_db schema for YANG module changes
[sonic-syslog.yang](https://github.com/sonic-net/sonic-buildimage/blob/master/src/sonic-yang-models/yang-models/sonic-syslog.yang)
2023-08-14 13:12:33 -07:00
mssonicbld
ac34681b92
Update the iSMART_64 tool (#15936) (#16139)
Why I did it
Updating the iSMART_64 tool for supporting latest debian releases.

How I did it
On branch new_ismart
Changes to be committed:
(use "git restore --staged ..." to unstage)
modified: platform/broadcom/sonic-platform-modules-dell/s6100/scripts/iSMART_64

How to verify it
In s6100, run the iSMART_64 tool.
md5sum - 24725730d7649769c7ba50971c1f2955

Co-authored-by: Santhosh Kumar T <53558409+santhosh-kt@users.noreply.github.com>
2023-08-14 22:42:30 +08:00
mssonicbld
75b7ec361c
[Mellanox] Add more unit test coverage for platform API (#15842) (#16137)
- Why I did it
Increase UT coverage for Nvidia platform API code

Work item tracking
Microsoft ADO (number only):

- How I did it
Focus on low coverage file:
1. component.py
2. watchdog.py
3. pcie.py

- How to verify it
Run the unit test, the coverage has been changed from 70% to 90%

Co-authored-by: Junchao-Mellanox <57339448+Junchao-Mellanox@users.noreply.github.com>
2023-08-14 22:40:38 +08:00
mssonicbld
3119077744
Update usage leaf in sonic-events-host yang models (#15805) (#16136)
#### Why I did it

event yang models for usage currently use int as type for usage leaf, needs to be of type decimal64

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

#### How I did it

Update yang models and UT

#### How to verify it

UT

Co-authored-by: Zain Budhwani <99770260+zbud-msft@users.noreply.github.com>
2023-08-14 22:40:06 +08:00
mssonicbld
ec73d0f3ff
[chassis]: removed dependency for bgp and swss for chassis supervisor (#15734) (#16135)
Fixes #15667 and #13293

Work item tracking
Microsoft ADO 24472854:

How I did it
On chassis supervisor bgp feature is disabled in hostcfgd. The dependency between swss and bgp causes the bgp containers to start even though the feature is disabled.

How to verify it
Tests on chassis supervisor and LC

Co-authored-by: Arvindsrinivasan Lakshmi Narasimhan <55814491+arlakshm@users.noreply.github.com>
2023-08-14 22:39:24 +08:00
SuvarnaMeenakshi
ebe8c8c223 [SNMP][IPv6]: Fix to use link local IPv6 address as snmp agentAddress (#16013)
<!--
     Please make sure you've read and understood our contributing guidelines:
     https://github.com/Azure/SONiC/blob/gh-pages/CONTRIBUTING.md

     ** Make sure all your commits include a signature generated with `git commit -s` **

     If this is a bug fix, make sure your description includes "fixes #xxxx", or
     "closes #xxxx" or "resolves #xxxx"

     Please provide the following information:
-->

#### Why I did it
fixes: https://github.com/sonic-net/sonic-buildimage/issues/16001
Caused by: https://github.com/sonic-net/sonic-buildimage/pull/15487

The above PR introduced change to use Management and Loopback Ipv4 and ipv6 addresses as snmpagent address in snmpd.conf file.
With this change, if Link local IP address is configured as management or Loopback IPv6 address, then snmpd tries to open socket on that ipv6 address and fails with the below error:
```
Error opening specified endpoint "udp6:[fe80::5054:ff:fe6f:16f0]:161"
Server Exiting with code 1
```
From RFC4007, if we need to specify non-global ipv6 address without ambiguity, we need to use zone id along with the ipv6 address: <address>%<zone_id>
Reference: https://datatracker.ietf.org/doc/html/rfc4007

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

#### How I did it
Modify snmpd.conf file to use the %zone_id representation for ipv6 address.
#### How to verify it
In VS testbed, modify config_db to use link local ipv6 address as management address:
    "MGMT_INTERFACE": {
        "eth0|10.250.0.101/24": {
            "forced_mgmt_routes": [
                "172.17.0.1/24"
            ],
            "gwaddr": "10.250.0.1"
        },
        "eth0|fe80::5054:ff:fe6f:16f0/64": {
            "gwaddr": "fe80::1"
        }
    },

Execute config_reload after the above change.
snmpd comes up and check if snmpd is listening on ipv4 and ipv6 addresses:
```
admin@vlab-01:~$ sudo netstat -tulnp | grep 161
tcp        0      0 127.0.0.1:3161          0.0.0.0:*               LISTEN      274060/snmpd        
udp        0      0 10.1.0.32:161           0.0.0.0:*                           274060/snmpd        
udp        0      0 10.250.0.101:161        0.0.0.0:*                           274060/snmpd        
udp6       0      0 fc00:1::32:161          :::*                                274060/snmpd        
udp6       0      0 fe80::5054:ff:fe6f::161 :::*                                274060/snmpd      -- Link local 
 
admin@vlab-01:~$ sudo ifconfig eth0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.250.0.101  netmask 255.255.255.0  broadcast 10.250.0.255
        inet6 fe80::5054:ff:fe6f:16f0  prefixlen 64  scopeid 0x20<link>
        ether 52:54:00:6f:16:f0  txqueuelen 1000  (Ethernet)
        RX packets 36384  bytes 22878123 (21.8 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 261265  bytes 46585948 (44.4 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

admin@vlab-01:~$ docker exec -it snmp snmpget -v2c -c public fe80::5054:ff:fe6f:16f0 1.3.6.1.2.1.1.1.0
iso.3.6.1.2.1.1.1.0 = STRING: "SONiC Software Version: SONiC.master.327516-04a6031b2 - HwSku: Force10-S6000 - Distribution: Debian 11.7 - Kernel: 5.10.0-18-2-amd64"
```
Logs from snmpd:
```
Turning on AgentX master support.
NET-SNMP version 5.9
Connection from UDP/IPv6: [fe80::5054:ff:fe6f:16f0%eth0]:44308
```
Ran test_snmp_loopback test to check if loopback ipv4 and ipv6 works:
```
./run_tests.sh -n vms-kvm-t0 -d vlab-01 -c snmp/test_snmp_loopback.py  -f vtestbed.yaml -i ../ansible/veos_vtb -e "--skip_sanity --disable_loganalyzer" -u
=== Running tests in groups ===
Running: pytest snmp/test_snmp_loopback.py --inventory ../ansible/veos_vtb --host-pattern vlab-01 --testbed vms-kvm-t0 --testbed_file vtestbed.yaml --log-cli-level warning --log-file-level debug --kube_master unset --showlocals --assert plain --show-capture no -rav --allow_recover --ignore=ptftests --ignore=acstests --ignore=saitests --ignore=scripts --ignore=k8s --ignore=sai_qualify --junit-xml=logs/tr.xml --log-file=logs/test.log --skip_sanity --disable_loganalyzer
..                                                                        

snmp/test_snmp_loopback.py::test_snmp_loopback[vlab-01] PASSED 
```
<!--
If PR needs to be backported, then the PR must be tested against the base branch and the earliest backport release branch and provide tested image version on these two branches. For example, if the PR is requested for master, 202211 and 202012, then the requester needs to provide test results on master and 202012.
-->

#### Which release branch to backport (provide reason below if selected)

<!--
- Note we only backport fixes to a release branch, *not* features!
- Please also provide a reason for the backporting below.
- e.g.
- [x] 202006
-->

- [ ] 201811
- [ ] 201911
- [ ] 202006
- [x] 202012
- [x] 202106
- [x] 202111
- [x] 202205
- [x] 202211
- [x] 202305

#### Tested branch (Please provide the tested image version)

<!--
- Please provide tested image version
- e.g.
- [x] 20201231.100
-->

- [ ] <!-- image version 1 -->
- [ ] <!-- image version 2 -->

#### Description for the changelog
<!--
Write a short (one line) summary that describes the changes in this
pull request for inclusion in the changelog:
-->

<!--
 Ensure to add label/tag for the feature raised. example - PR#2174 under sonic-utilities repo. where, Generic Config and Update feature has been labelled as GCU.
-->

#### Link to config_db schema for YANG module changes
<!--
Provide a link to config_db schema for the table for which YANG model
is defined
Link should point to correct section on https://github.com/Azure/sonic-buildimage/blob/master/src/sonic-yang-models/doc/Configuration.md
-->

#### A picture of a cute animal (not mandatory but encouraged)
2023-08-14 18:32:35 +08:00
mssonicbld
fb4f2382d1
[submodule] Update submodule sonic-platform-common to the latest HEAD automatically (#16061)
#### Why I did it
src/sonic-platform-common
```
* 5af6f9f - (HEAD -> 202305, origin/202305) Comment out tx power validation check and program the passed value  (#389) (3 days ago) [abdosi]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-08-09 20:51:34 +08:00
mssonicbld
ca8efbf0d3
[submodule] Update submodule sonic-swss to the latest HEAD automatically (#16063)
#### Why I did it
src/sonic-swss
```
* 27b64579 - (HEAD -> 202305, origin/202305) Remove system neighbor DEL operation in m_toSync if SET operation for (#2853) (3 days ago) [Song Yuan]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-08-09 18:35:26 +08:00
mssonicbld
b226ae0699
[submodule] Update submodule sonic-swss-common to the latest HEAD automatically (#16064)
#### Why I did it
src/sonic-swss-common
```
* 449ac55 - (HEAD -> 202305, origin/202305) [Ci] Fix collect log error in azp template (#799) (2 days ago) [xumia]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-08-08 20:47:47 +08:00
Longxiang Lyu
6e49fa5fd2 [monit][dualtor] Periodically check mux neighbors consistency (#15769)
Signed-off-by: Longxiang Lyu <lolv@microsoft.com>
2023-08-08 18:33:29 +08:00
mssonicbld
63e51b4b2a
[submodule] Update submodule sonic-linux-kernel to the latest HEAD automatically (#16059)
#### Why I did it
src/sonic-linux-kernel
```
* bf1ee0e - (HEAD -> 202305, origin/202305) Fix Makefile syntax and provide default value for CONFIGURED_PLATFORM (#324) (13 hours ago) [Saikrishna Arcot]
* 7d7abaf - Update codeowner and build info (#319) (13 hours ago) [Saikrishna Arcot]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-08-08 02:32:45 +08:00
mssonicbld
4ca01a7715
[syncd.sh] Clear semaphore before updating firmware (#15818) (#16067) 2023-08-07 18:20:15 +08:00
xumia
30f935c994 [Build] Fix some of the patches not applied issue (#15660)
Why I did it
Fix some of the patches in .patches folder not applied issue.
The command "quilt applied" only lists the applied patches, if some of the patches have issues, then the patches will not be applied when you run the build command again.

Work item tracking
Microsoft ADO (number only): 24410730
How I did it
Run the command to apply the patches without any conditions.
If failed, check if the failure reason is "series fully applied".
How to verify it
2023-08-07 16:33:01 +08:00
mssonicbld
41cdd361d6
[submodule] Update submodule sonic-platform-daemons to the latest HEAD automatically (#16062)
#### Why I did it
src/sonic-platform-daemons
```
* 6c47906 - (HEAD -> 202305, origin/202305) Update active application selected code in transceiver_info table aft… (#381) (13 hours ago) [Michael Wang - TW]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-08-07 16:32:54 +08:00
mssonicbld
e6e461ccf2
[submodule] Update submodule sonic-utilities to the latest HEAD automatically (#16065) 2023-08-07 16:30:02 +08:00
vmittal-msft
5ee18ece65 Update WRED profile on system ports (#15612)
* Update WRED profile on system ports
2023-08-07 14:33:42 +08:00
Stephen Sun
33d14521f2 [Mellanox] Use Debian reboot in Nvidia platform reboot when it is invoked from kdump capture boot (#15701)
#### Why I did it

When a kernel crash occurs, the system will reboot to the kdump capture kernel if kdump is enabled (`config kdump enable`). In the kdump capture boot, it only stores the crash information, and then reboot the system to a normal boot.
In this boot, no SONiC service is started but it invokes `reboot` which is actually the SONiC reboot that depends on SONiC services. There is a logic to skip all SONiC stuff and invoke platform reboot in SONiC reboot to avoid issues.
However, on Nvidia platforms, the platform reboot still depends on SONiC services, which can cause issues.
So, the Debian reboot is called directly in platform reboot if it is invoked from the kdump capture boot.

#### How I did it

Manual test
2023-08-07 14:33:34 +08:00
mssonicbld
33a10b479a
[nvidia] make sure shared storage with syncd is cleared on restarts (#14547) (#16046)
Why I did it
Sharing the storage of syncd with other proprietary application extensions allows them to communicate with syncd in differnt ways.
If one container wants to pass some information to syncd then shared storage can be used. However, today the shared storage isn't cleaned on restarts making it possible for syncd to read out-of-date information generated in the past.

NOTE: No plans to use it for standard SONIC dockers and we are working on removing the SDK dependency from PMON docker

How I did it
Implemented new service to clean the shared storage.

How to verify it
Do reboot/fast-reboot/warm-reboot/config-reload/systemctl restart swss and verify /tmp/ is cleaned after each restart in syncd container.

Signed-off-by: Stepan Blyschak <stepanb@nvidia.com>
Co-authored-by: Stepan Blyshchak <38952541+stepanblyschak@users.noreply.github.com>
2023-08-07 09:27:43 +08:00
mssonicbld
471a3a8067
Add support data for fabric monitoring in CONFIG_DB. (#14170) (#16045)
Added support data for fabric monitoring in CONFIG_DB

The CONFIG_DB now has the FABRIC_MONITOR|FABRIC_MONITOR_DATA table for default value for fabric port monitoring. An example output of getting this table is:

sonic-db-cli CONFIG_DB hgetall "FABRIC_MONITOR|FABRIC_MONITOR_DATA"
{'monErrThreshCrcCells': '1', 'monErrThreshRxCells': '61035156', 'monPollThreshIsolation': '1', 'monPollThreshRecovery': '8'}

The CONFIG_DB now also has a table for each fabric port for its isolate status.
An example output of getting this table is:

sonic-db-cli CONFIG_DB hgetall "FABRIC_PORT|Fabric20"
{'alias': 'Fabric20', 'isolateStatus': 'False', 'lanes': '20'}

Co-authored-by: jfeng-arista <98421150+jfeng-arista@users.noreply.github.com>
2023-08-07 09:26:45 +08:00
mssonicbld
03fc34e56c
[YANG][vlan-sub-interface] Add vlan field (#15838) (#16057) 2023-08-07 03:48:34 +08:00
mssonicbld
1c3e5947ce
[YANG] add yang model for MUX_LINKMGR|MUXLOGGER (#15884) (#16058) 2023-08-07 03:46:18 +08:00
mssonicbld
b812e562c8
[minigraph] remove number of lanes check for changing speed from 400G to 100G and set speed setting before lane reconfiguration (#15721) (#16054) 2023-08-07 03:24:30 +08:00
mssonicbld
14ba74ede9
[E1031] fix pca9548 initializes failed occasionally (#15712) (#16052) 2023-08-07 03:01:06 +08:00
Junchao-Mellanox
bf37c3162c Fix issue: set delayed attribute to true for platform monitor service (#15816)
There is a redundant line in init_cfg.json.j2. It would cause pmon service always has "delayed=False". However, we know that PMON has a timer now. So, I try to fix it here.
2023-08-07 00:34:12 +08:00
Samuel Angebault
82108429c6
[202305][Arista] Update platform submodules (#16010)
Why I did it
fix pcied leak on chassis
fix fan status led setting on fixed systems
misc fixes
Work item tracking
Microsoft ADO (number only):
How I did it
Updated arista platform library submodules

Description for the changelog
Update Arista platform submodules
2023-08-06 21:31:17 +08:00
mssonicbld
157b9ea3b7
[Mellanox] Remove unnecessary file manipulation in the SAI Make file (#15993) (#16043) 2023-08-06 17:18:21 +08:00
mssonicbld
89fdba9e92
[Mellanox] Remove reset_from_comex from reboot cause mapping (#15793) (#16040) 2023-08-06 17:04:26 +08:00
lerry-lee
3dfe75df7d
[CI/CD] Use remote PR test template from sonic-mgmt master to run PR test (#15980)
Why I did it
Use remote PR test template from sonic-mgmt master to run PR test.

How I did it
Modify PR test azure pipeline yml file.

How to verify it
PR test executing normally.

Signed-off-by: Chun'ang Li <chunangli@microsoft.com>
2023-08-01 16:20:52 +08:00
mssonicbld
c564f37ec4
[submodule] Update submodule sonic-utilities to the latest HEAD automatically (#15981) 2023-07-27 19:18:36 +08:00
mssonicbld
9da145cdc4
[submodule] Update submodule sonic-utilities to the latest HEAD automatically (#15951) 2023-07-25 09:59:02 +08:00
mssonicbld
33d4981c52
[submodule] Update submodule sonic-utilities to the latest HEAD automatically (#15778) 2023-07-24 22:40:34 +08:00
mssonicbld
298e7ebe34
[Mellanox] Add support for BIOS update on Spectrum-4 (#15795) (#15942) 2023-07-24 02:08:20 +08:00
mssonicbld
379d45ce3e
[submodule] Update submodule sonic-platform-common to the latest HEAD automatically (#15917)
#### Why I did it
src/sonic-platform-common
```
* 411d5b2 - (HEAD -> 202305, origin/202305) More prevention of fatal exception caused by VDM dictionary missing fields when a transceiver has just been pulled (#376) (2 days ago) [snider-nokia]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-07-21 16:32:51 +08:00
Ying Xie
8369e1c6b7 Potential fix for Celestica E1031 device hang (#15822)
set CPU max_cstate to 0

Co-authored-by: Sumukha Tumkur Vani <sumukhatv@outlook.com>
2023-07-21 14:33:59 +08:00
mssonicbld
3bfe92e10e
[submodule] Update submodule sonic-swss to the latest HEAD automatically (#15919)
#### Why I did it
src/sonic-swss
```
* fa342305 - (HEAD -> 202305, origin/202305) Remove redundant updateFabricPortState (#2850) (18 hours ago) [kenneth-arista]
* c571d8bf - Allow NOT_IMPLEMENTED sai return status for availability monitoring API (#2848) (18 hours ago) [Tejaswini Chadaga]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-07-20 18:33:59 +08:00
mssonicbld
aab66f8cd7
[submodule] Update submodule sonic-py-swsssdk to the latest HEAD automatically (#15777)
src/sonic-py-swsssdk

* 1109e49 - (HEAD -> 202305, origin/master, origin/HEAD, origin/202305, master) add semgrep (#141) (4 weeks ago) [Mai Bui]
How I did it
How to verify it
2023-07-19 21:18:16 +08:00
mssonicbld
54eec890ba
Revert "[gearbox] use credo sai v0.9.0 (#14149)" (#15708) (#15879) 2023-07-19 20:25:29 +08:00
mssonicbld
18b446bfe0
[ctgmgr]: do not remove label when do systemd service stop when service is in kube mode (#15642) (#15878) 2023-07-19 20:10:41 +08:00
mssonicbld
ff5c03f91b
[Nokia][sonic-platform] Update Nokia sonic-platform submodule (#15239) (#15873) 2023-07-19 20:07:15 +08:00
mssonicbld
6004054711
[arp_update]: Fix IPv6 neighbor race condition (#15583) (#15877) 2023-07-19 20:06:12 +08:00
mssonicbld
7bd67d4f37
Upgrade scapy in the PTF's python3 virtualenv to 2.5.0 (#15573) (#15875) 2023-07-19 20:05:40 +08:00
mssonicbld
83aa8b8180
[SNMP][IPv6]: Fix SNMP IPv6 reachability issue in certain scenarios (#15487) (#15874) 2023-07-19 20:04:57 +08:00
mssonicbld
f4a7e22e4e
[k8s]: Bypass the systemd service restart limit and do immediately restart when change to local mode (#15432) (#15868) 2023-07-19 20:04:23 +08:00
mssonicbld
38e721bc24
[ctrmgr]: Container image clean up bug fix (#15772) (#15870) 2023-07-19 20:02:45 +08:00
mssonicbld
74598e568a
Add health check probe for k8s upgrade containers. (#15223) (#15867)
#### Why I did it
After k8s upgrade a container, k8s can only know the container is running, don't know the service's status inside container. So we need a probe inside container, k8s will call the probe to check whether the container is really ready.
##### Work item tracking
- Microsoft ADO **(number only)**: 22453004
#### How I did it
Add a health check probe inside config engine container, the probe will check whether the start service exit normally or not if the start service exists and call the python script to do container self-related specific checks if the script is there. The python script should be implemented by feature owner if it's needed.

more details: [design doc](https://github.com/sonic-net/SONiC/blob/master/doc/kubernetes/health-check.md)
#### How to verify it
Check path /usr/bin/readiness_probe.sh inside container.

#### Which release branch to backport (provide reason below if selected)

- [ ] 201811
- [ ] 201911
- [ ] 202006
- [ ] 202012
- [ ] 202106
- [ ] 202111
- [x] 202205
- [x] 202211

#### Tested branch (Please provide the tested image version)
- [x] 20220531.28

Co-authored-by: lixiaoyuner <35456895+lixiaoyuner@users.noreply.github.com>
2023-07-19 16:11:13 +08:00
mssonicbld
0eb0749442
Move /var/log to RAM for Mellanox SN2700, Nokia 7215 and Dell S6100 (#15077) (#15871)
Why I did it
Move the /var/log on RAM. This is to prevent too many disk write on /var/log when mounted on disk.

Work item tracking
Microsoft ADO (number only): 17955517

How I did it
Pass kernel cmdline option "log_inram=on"

How to verify it
Mellanox SN2700
root@str-msn2700-02:~# df -h
Filesystem Size Used Avail Use% Mounted on
udev 3.9G 0 3.9G 0% /dev
tmpfs 791M 15M 776M 2% /run
root-overlay 15G 12G 2.9G 80% /
/dev/sda3 15G 12G 2.9G 80% /host
tmpfs 790M 12M 779M 2% /var/log
tmpfs 3.9G 107M 3.8G 3% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 4.0M 0 4.0M 0% /sys/fs/cgroup
overlay 15G 12G 2.9G 80% /var/lib/docker/overlay2/f50948841bee041368bf7c0546ceab4c71f05951fb0ed5ae70411f28dde68907/merged
overlay 15G 12G 2.9G 80% /var/lib/docker/overlay2/c45de6c53e7185631a37e87686dd296b2585425f638aa92c720c90eae038480c/merged
overlay 15G 12G 2.9G 80% /var/lib/docker/overlay2/f5bc87d5c2965b21b222f09dd57fe0fc798e518101d7ecd25d170b7662ae3e80/merged
overlay 15G 12G 2.9G 80% /var/lib/docker/overlay2/b2f435a256b930da4897d8a096095dcce183a6efa55b5b637187a654db0585ee/merged
overlay 15G 12G 2.9G 80% /var/lib/docker/overlay2/5c3588e42b29fd0516a164c00de621b7a00236ecbb240c4d0b3903ec706c220d/merged
overlay 15G 12G 2.9G 80% /var/lib/docker/overlay2/5a4a2a2602fb4ed1d1df90c3916076f595b4d8bc18eb465dd23e33f354adcfb8/merged
overlay 15G 12G 2.9G 80% /var/lib/docker/overlay2/9926f7378de9223fd3e88c8f59d888ad178e2ca23fa978f372e9838f10b7b803/merged
overlay 15G 12G 2.9G 80% /var/lib/docker/overlay2/130abaf95cffc06d952adacb6aa54a2f5e7c54c81fa8c15184389e25a7884328/merged
overlay 15G 12G 2.9G 80% /var/lib/docker/overlay2/aeef95cf5af6e20909a4cfd6c696176cc5dcb31dd456cc8acbbd3d59d47333d7/merged
overlay 15G 12G 2.9G 80% /var/lib/docker/overlay2/ef9bb94012b9fe987e55c9b73141296da8081d258d0d134922776c3c4b3ec551/merged
overlay 15G 12G 2.9G 80% /var/lib/docker/overlay2/cf425d372b347fd68569f128e1771e5a70dbf504b2f013304d60bcef6dfbd0da/merged
overlay 15G 12G 2.9G 80% /var/lib/docker/overlay2/7a2592cdac5c7369a6a98e07dbf1c2d96d29634e7d7b593617c50cc7e09e5cb3/merged
root@str-msn2700-02:~# 
root@str-msn2700-02:~# free -h
 total used free shared buff/cache available
Mem: 7.7Gi 3.0Gi 3.3Gi 133Mi 1.5Gi 4.4Gi
Swap: 0B 0B 0B
root@str-msn2700-02:~# 


Dell S6100

root@str-s6100-acs-5:~# df -h
Filesystem Size Used Avail Use% Mounted on
udev 3.9G 0 3.9G 0% /dev
tmpfs 794M 15M 780M 2% /run
root-overlay 14G 9.9G 3.6G 74% /
/dev/sda4 14G 9.9G 3.6G 74% /host
tmpfs 793M 13M 781M 2% /var/log
tmpfs 3.9G 60K 3.9G 1% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 4.0M 0 4.0M 0% /sys/fs/cgroup
overlay 14G 9.9G 3.6G 74% /var/lib/docker/overlay2/f94441208fba5df49b0b8f0b49c699475ed0fd07673ab4a3eb574869b8e17c83/merged
overlay 14G 9.9G 3.6G 74% /var/lib/docker/overlay2/1c3dc3b582599602aec0dbd78945560f330f6244d2e218750622b3814dc53ed3/merged
overlay 14G 9.9G 3.6G 74% /var/lib/docker/overlay2/ab5b96e72e323fff5168abc69f8599fa244410d856dbd10cdbf73c99a4fe8d67/merged
overlay 14G 9.9G 3.6G 74% /var/lib/docker/overlay2/0e6e3adaba6bb1d2684da444661e540030d588ef498466b7d8ff773ce263a2ea/merged
overlay 14G 9.9G 3.6G 74% /var/lib/docker/overlay2/1218ed8bfa7a17c8927b20005d45f5e1e4a634e653d5c5c2057ac54713dc3387/merged
overlay 14G 9.9G 3.6G 74% /var/lib/docker/overlay2/b31486f665e5c929966185397990553fee6b41b515cbef28c945096673ac9bef/merged
overlay 14G 9.9G 3.6G 74% /var/lib/docker/overlay2/b984fa70f30bd1bac92bdf8d36542ed4433b4dabc33f7bb1f0a17a5eaee90f3e/merged
overlay 14G 9.9G 3.6G 74% /var/lib/docker/overlay2/b7866a1462768f3564b832187837c7a5e3d493b8084204e59610960cc5f6bc19/merged
overlay 14G 9.9G 3.6G 74% /var/lib/docker/overlay2/113bbbe88ee8452f4310b02a1343cfb4f1beb5fedf68a7d810ff5b5d7457c9f0/merged
overlay 14G 9.9G 3.6G 74% /var/lib/docker/overlay2/e7cc383186c6f9acecf2031c0c1f0870b8a7f63e1918b8359afa7a13d3c28963/merged
overlay 14G 9.9G 3.6G 74% /var/lib/docker/overlay2/c5d269100da205981c51e70e9e86facf69487f99e234dcdac822b8ab01af3d6a/merged
overlay 14G 9.9G 3.6G 74% /var/lib/docker/overlay2/463874ab78b2e45a34cf4d3d1cd2e45ff18c0abbf37be62d2c8559dce38d6219/merged
root@str-s6100-acs-5:~# free -h
 total used free shared buff/cache available
Mem: 7.8Gi 2.1Gi 4.1Gi 69Mi 1.6Gi 5.3Gi
Swap: 0B 0B 0B
root@str-s6100-acs-5:~# 

Nokia-7215

root@str-2-7215-acs-4:~# df -h
Filesystem Size Used Avail Use% Mounted on
udev 1.5G 0 1.5G 0% /dev
tmpfs 303M 14M 289M 5% /run
root-overlay 15G 7.2G 7.2G 51% /
/dev/sda2 15G 7.2G 7.2G 51% /host
tmpfs 302M 7.5M 295M 3% /var/log
tmpfs 1.5G 60K 1.5G 1% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 4.0M 0 4.0M 0% /sys/fs/cgroup
overlay 15G 7.2G 7.2G 51% /var/lib/docker/overlay2/617e49b8b8e4368db2b3b2fb3e3204e80ec572fe7981d67ad2116d9c3e4472f3/merged
overlay 15G 7.2G 7.2G 51% /var/lib/docker/overlay2/c94b855482fc14aa1f032b0c8dc035b02f37ad9e4341cb5a8d22f14e14c63824/merged
overlay 15G 7.2G 7.2G 51% /var/lib/docker/overlay2/2d8c6ee95b212bbc8376d15916723128455678f2a3c88f382b451bec88297341/merged
overlay 15G 7.2G 7.2G 51% /var/lib/docker/overlay2/92114013a19dc19f30505ba645f961d50e093365422a9b22116ced1fa88ded2b/merged
overlay 15G 7.2G 7.2G 51% /var/lib/docker/overlay2/c8e79a8403863887666324f163a4b6633c40c8b349402b3a0f40ba7e51adb28b/merged
overlay 15G 7.2G 7.2G 51% /var/lib/docker/overlay2/27fd4a51859f3febd345a8551a0b4686d696c205048e1d595b76114385a68949/merged
root@str-2-7215-acs-4:~#
2023-07-19 16:09:37 +08:00
mssonicbld
43585c3326
Add support for secure upgrade (#11862) (#15691)
- What I did
Added support for secure upgrade.

- How I did it
During sonic_installer install, added secure upgrade image verification.
HLD can be found in the following PR: sonic-net/SONiC#1024

- Why I did it
Feature is used to allow image was not modified since built from vendor. During installation, image can be verified with a signature attached to it.

- How I did it
Feature includes image signing during build (in sonic buildimage repo) and verification during image install (in sonic-utilities).

- How to verify it
In order for image verification - image must be signed - need to provide signing key and certificate (paths in SECURE_UPGRADE_DEV_SIGNING_KEY and SECURE_UPGRADE_DEV_SIGNING_CERT in rules/config) during build , and during image install, need to enable secure boot flag in bios, and signing_certificate should be available in bios.

- Feature dependencies
In order for this feature to work smoothly, need to have secure boot feature implemented as well.
The Secure boot feature will be merged in the near future.

Co-authored-by: ycoheNvidia <99744138+ycoheNvidia@users.noreply.github.com>
2023-07-19 16:08:14 +08:00
Masaru OKI
8c94e32fe5 Pick dependency files in submodules. (#15142)
#### Why I did it

Failed to build sonic-dhcp6relay_1.0.0-0_amd64.deb

#### How I did it

src/dhcprelay has git submodule.
Dependency files by "git ls-files" are not picked files in submodules.
Add --recurse-submodules, work again.

#### How to verify it

make all
2023-07-19 14:34:12 +08:00
xumia
de2a650a8e
[Build] Fix the PyYang python package installation issue (#15892)
Why I did it
Fix the armhf build failure.
How to reproduce the issue:

docker run -it debain:bullseye bash
apt-get update && apt-get install -y python3-pip
pip3 install PyYAML==5.4.1
Error message:

Collecting PyYAML==5.4.1
  Downloading PyYAML-5.4.1.tar.gz (175 kB)
     |████████████████████████████████| 175 kB 12.3 MB/s 
  Installing build dependencies ... done
  Getting requirements to build wheel ... error
  ERROR: Command errored out with exit status 1:
   command: /usr/bin/python3 /tmp/tmp6xabslgb_in_process.py get_requires_for_build_wheel /tmp/tmp_er01ztl
....
      raise AttributeError(attr)
  AttributeError: cython_sources
  ----------------------------------------
WARNING: Discarding d63f2d7597/PyYAML-5.4.1.tar.gz (sha256)=607774cbba28732bfa802b54baa7484215f530991055bb562efbed5b2f20a45e (from https://pypi.org/simple/pyyaml/) (requires-python:>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*). Command errored out with exit status 1: /usr/bin/python3 /tmp/tmp6xabslgb_in_process.py get_requires_for_build_wheel /tmp/tmp_er01ztl Check the logs for full command output.
ERROR: Could not find a version that satisfies the requirement PyYAML==5.4.1
ERROR: No matching distribution found for PyYAML==5.4.1
root@fa2fa92edcfd:/# 
But if adding the option --no-build-isolation, then it is good, see fix.

install "PyYAML==5.4.1" --no-build-isolation
The same error can be found in the multiple builds.

Work item tracking
Microsoft ADO (number only): 24567457
How I did it
Add a build option --no-build-isolation.

Disable isolation when building a modern source distribution. Build dependencies specified by PEP 518 must be already installed if this option is used.
How to verify it
2023-07-19 09:26:49 +08:00
mssonicbld
4173a6dd47
[submodule] Update submodule sonic-dbsyncd to the latest HEAD automatically (#15775) 2023-07-17 23:29:58 +08:00
lixiaoyuner
c59f55f6a3
Move k8s script to docker-config-engine (#14788) (#15768)
Why I did it
To reduce the container's dependency from host system

Work item tracking
Microsoft ADO (number only):
17713469
How I did it
Move the k8s container startup script to config engine container, other than mount it from host.

How to verify it
Check file path(/usr/share/sonic/scripts/container_startup.py) inside config engine container.

Signed-off-by: Yun Li <yunli1@microsoft.com>
Co-authored-by: Qi Luo <qiluo-msft@users.noreply.github.com>
2023-07-17 23:21:01 +08:00
mssonicbld
0b1f834e22
update rsyslog log size conf (#15821) (#15837) 2023-07-14 20:34:22 +08:00
xumia
826f5a1d45 [Build] Fix the python module importlib.metadata not found issue (#15800)
Why I did it
It is to fix the docker-ptf-sai build failure.
https://dev.azure.com/mssonic/build/_build/results?buildId=311315&view=logs&j=cef3d8a9-152e-5193-620b-567dc18af272&t=cf595088-5c84-5cf1-9d7e-03331f31d795

2023-07-09T13:53:19.9025355Z �[91mTraceback (most recent call last):
2023-07-09T13:53:19.9025715Z   File "/root/ptf/.eggs/setuptools_scm-7.1.0-py3.7.egg/setuptools_scm/_entrypoints.py", line 74, in <module>
2023-07-09T13:53:19.9025933Z     from importlib.metadata import entry_points  # type: ignore
2023-07-09T13:53:19.9026167Z ModuleNotFoundError: No module named 'importlib.metadata'
Work item tracking
Microsoft ADO (number only): 24513583
How I did it
How to verify it
2023-07-13 20:57:24 +08:00
Stepan Blyshchak
8c83dc8c4d [FRR]Fixing the advertisement of static ipv6 route (#15688)
Co-authored-by: dgsudharsan <sudharsand@nvidia.com>
Co-authored-by: Liat Grozovik <44433539+liat-grozovik@users.noreply.github.com>
2023-07-13 04:32:58 +08:00
mssonicbld
7ef866b140
[submodule] Update submodule sonic-gnmi to the latest HEAD automatically (#15776)
#### Why I did it
src/sonic-gnmi
```
* d1467d3 - (HEAD -> 202305, origin/202305) Update makefile to support armhf (#132) (#133) (5 days ago) [ganglv]
* 88ee65d - [202305] Checkout correct branch from sonic-mgmt-common and sonic-swss-common during pipeline build (#128) (5 days ago) [Sachin Holla]
* 87d8eb3 - TranslClient: use PathValidator to sanitize the request paths (#112) (4 weeks ago) [Sachin Holla]
```
#### How I did it
#### How to verify it
#### Description for the changelog
2023-07-12 16:37:30 +08:00
Chun'ang Li
fca2a8d77a
Refine PR test template format (#15639)
Why I did it
Refine PR test template format.

How I did it
Refine PR test template format.

How to verify it
PR test executed normally.

Signed-off-by: Chun'ang Li <chunangli@microsoft.com>
2023-07-10 10:48:54 +08:00
mssonicbld
bb3eff6ab4
Revert "Fix for fast/cold-boot: call db_migrator only after old config is loaded (#14933)" (#15464) (#15618) 2023-06-29 22:35:47 +08:00
mssonicbld
d0126e679b
Fix for issue#14964 (#15212) (#15595) 2023-06-29 21:51:19 +08:00
mssonicbld
2fc98cd8fc
[chassis][lldp] Fix the lldp error log in host instance which doesn't contain front panel ports (#14814) (#15603) 2023-06-29 21:46:32 +08:00
xumia
8904545b16 Upgrade sonic-fips packages (#15400)
Why I did it
Downgrade the symcrypt version, use the SymCrypt version v103.0.1 for certification.

Work item tracking
Microsoft ADO (number only): 24222567
How I did it
How to verify it
2023-06-29 20:55:05 +08:00
Ye Jianquan
e747e2a574
[CI/CD] Refine t0 sonic and remove SPECIFIED_PARAMS (#15628)
Why I did it
t0-sonic's specific params has been set on sonic-mgmt repo, remove useless SPECIFIED_PARAMS usage
2023-06-27 11:02:06 +08:00
vdahiya12
acc5dfb603 [Arista][x86_64-arista_7050_qx32] Add Components to platform.json (#15252)
* [Arista][x86_64-arista_7050_qx32] Add Components to platform.json

Signed-off-by: vaibhav dahiya <vdahiya@microsoft.com>

* fix comment

Signed-off-by: vaibhav dahiya <vdahiya@microsoft.com>

* fix comment

Signed-off-by: vaibhav dahiya <vdahiya@microsoft.com>

* reformat

Signed-off-by: vaibhav dahiya <vdahiya@microsoft.com>

---------

Signed-off-by: vaibhav dahiya <vdahiya@microsoft.com>
2023-06-26 16:41:07 +08:00
Zhijian Li
90dc056824 Update the defination of acl table type BMCDATA and BMCDATAV6 (#15385)
Why I did it
Update the definition of acl table type BMCDATA and BMCDATAV6 in minigraph parser.

Work item tracking
Microsoft ADO (number only): 24101023
How I did it
Update the definition of acl table type BMCDATA and BMCDATAV6 in minigraph parser.

How to verify it
Ran unittest to verify this update:
2023-06-26 16:41:02 +08:00
Longxiang Lyu
664675cad5 [mux] Integrate linkmgrd with swss logger (#15392)
Signed-off-by: Longxiang Lyu <lolv@microsoft.com>
2023-06-26 16:40:58 +08:00
mssonicbld
260173782a
Fix a check for yang validation (#15498) (#15600) 2023-06-26 16:15:11 +08:00
mssonicbld
c5167457eb
enable info log for graceful restart events (#15535) (#15601) 2023-06-26 02:56:44 +08:00
mssonicbld
b029f49013
[yang] add Yang model for MUX_LINKMGR|LINK_PROBER (#15384) (#15619) 2023-06-25 01:38:57 +08:00
Malte Janduda
2b8b19f00e
[buildsystem] Fix hiredis package version: 0.14.1-1 (#15461) (#15569)
- Why I did it
To fix hiredis compilation

- How I did it
Changed package version: 0.14.0-3~bpo9+1 -> 0.14.1-1

- How to verify it
make configure PLATFORM=mellanox
make target/sonic-mellanox.bin

Signed-off-by: Nazarii Hnydyn <nazariig@nvidia.com>
Co-authored-by: Nazarii Hnydyn <nazariig@nvidia.com>
2023-06-22 18:18:27 -07:00
StormLiangMS
65c15aa1f9 [202305]add branch info for gitmodules (#15213)
Why I did it
To add branch info for submodules of 202305 branch

Work item tracking
Microsoft ADO (21450860):
How I did it
To modify the .gitmodule file to have 202305 branch for repos

How to verify it
Pass PR build
2023-06-16 11:45:38 +00:00
2836 changed files with 86982 additions and 283816 deletions

View File

@ -33,14 +33,13 @@ parameters:
type: object
default:
- vs
- barefoot
- broadcom
- centec
- centec-arm64
- generic
- marvell-armhf
- marvell-arm64
- mellanox
- pensando
stages:
- stage: Prepare

View File

@ -1,67 +0,0 @@
# C/C++ with GCC
# Build your C/C++ project with GCC using make.
# Add steps that publish test results, save build artifacts, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/apps/c-cpp/gcc
pr: none
trigger:
batch: true
branches:
include:
- master
- 202???
schedules:
- cron: "0 0 * * *"
displayName: Daily build
branches:
include:
- master
- 202???
always: true
stages:
- stage: Build
jobs:
- job:
displayName: "amd64/ubuntu-20.04"
pool:
vmImage: 'ubuntu-20.04'
steps:
- checkout: self
submodules: true
- script: |
sudo apt-get update
sudo apt-get install -y make wget libtool m4 autoconf dh-exec libdebhelper-perl=13.6ubuntu1~bpo20.04.1 debhelper=13.6ubuntu1~bpo20.04.1 \
cmake pkg-config python3-pip python cmake libgtest-dev libgmock-dev libyang-dev \
debhelper-compat dh-elpa dh-sequence-python3 python3-all \
libpython3-all-dev python3-six xmlto unzip rake-compiler gem2deb pkg-php-tools \
ant default-jdk maven-repo-helper libguava-java \
libboost-all-dev libgtest-dev build-essential swig4.0 swig
sudo pip3 install pytest click
wget http://ftp.us.debian.org/debian/pool/main/libg/libgoogle-gson-java/libgoogle-gson-java_2.8.6-1+deb11u1_all.deb
sudo dpkg -i libgoogle-gson-java_2.8.6-1+deb11u1_all.deb
mkdir -p /tmp/artifacts
displayName: "Install dependencies"
- script: |
BLDENV=bullseye SONIC_CONFIG_MAKE_JOBS=$(nproc) CONFIGURED_ARCH=amd64 DEST=/tmp/artifacts make -f ../rules/protobuf.mk -f protobuf/Makefile
workingDirectory: src
displayName: "Build protobuf"
- script: |
sudo dpkg -i protobuf-compiler_3.21.12-3_amd64.deb libprotoc32_3.21.12-3_amd64.deb \
libprotobuf32_3.21.12-3_amd64.deb libprotobuf-dev_3.21.12-3_amd64.deb \
libprotobuf-lite32_3.21.12-3_amd64.deb
workingDirectory: /tmp/artifacts
displayName: "Install protobuf"
- script: |
dpkg-buildpackage -rfakeroot -b -us -uc
workingDirectory: src/sonic-dash-api
displayName: "Build sonic-dash-api"
- script: |
cp *.deb /tmp/artifacts
workingDirectory: src
- publish: /tmp/artifacts
artifact: sonic-buildimage.amd64.ubuntu20_04
displayName: "Archive sonic-buildimage debian packages for ubuntu20.04"

View File

@ -35,6 +35,7 @@ jobs:
dbg_image: no
asan_image: no
swi_image: no
raw_image: no
docker_syncd_rpc_image: no
syncd_rpc_image: no
platform_rpc: no
@ -61,6 +62,7 @@ jobs:
variables:
dbg_image: yes
swi_image: yes
raw_image: yes
docker_syncd_rpc_image: yes
platform_rpc: brcm
@ -114,19 +116,12 @@ jobs:
docker_syncd_rpc_image: yes
platform_rpc: nephos
- name: pensando
pool: sonicbld-arm64
variables:
PLATFORM_ARCH: arm64
buildSteps:
- template: .azure-pipelines/template-skipvstest.yml@buildimage
- template: .azure-pipelines/template-daemon.yml@buildimage
- bash: |
set -ex
if [ $(GROUP_NAME) == pensando ]; then
make $BUILD_OPTIONS target/sonic-pensando.tar
elif [ $(GROUP_NAME) == vs ]; then
if [ $(GROUP_NAME) == vs ]; then
if [ $(dbg_image) == yes ]; then
make $BUILD_OPTIONS INSTALL_DEBUG_TOOLS=y target/sonic-vs.img.gz
mv target/sonic-vs.img.gz target/sonic-vs-dbg.img.gz
@ -135,14 +130,6 @@ jobs:
make $BUILD_OPTIONS ENABLE_ASAN=y target/docker-sonic-vs.gz
mv target/docker-sonic-vs.gz target/docker-sonic-vs-asan.gz
fi
if [ "$(K8S_MASTER_CHANGED)" == 'YES' ]; then
make $BUILD_OPTIONS INCLUDE_KUBERNETES_MASTER=y target/sonic-vs.img.gz
gzip -d target/sonic-vs.img.gz
SONIC_RUN_CMDS="qemu-img convert target/sonic-vs.img -O vhdx -o subformat=dynamic target/sonic-vs.vhdx" make $BUILD_OPTIONS sonic-slave-run
gzip target/sonic-vs.vhdx
mv target/sonic-vs.vhdx.gz target/sonic-vs-k8s.vhdx.gz
rm target/sonic-vs.img
fi
make $BUILD_OPTIONS target/docker-sonic-vs.gz target/sonic-vs.img.gz target/docker-ptf.gz
make $BUILD_OPTIONS target/docker-ptf-sai.gz
if [ $(Build.Reason) != 'PullRequest' ];then
@ -158,6 +145,9 @@ jobs:
if [ $(swi_image) == yes ]; then
make $BUILD_OPTIONS ENABLE_IMAGE_SIGNATURE=y target/sonic-aboot-$(GROUP_NAME).swi
fi
if [ $(raw_image) == yes ]; then
make $BUILD_OPTIONS target/sonic-$(GROUP_NAME).raw
fi
if [ $(docker_syncd_rpc_image) == yes ]; then
# workaround for issue in rules/sairedis.dep, git ls-files will list un-exist files for cache
make $BUILD_OPTIONS ENABLE_SYNCD_RPC=y target/docker-syncd-$(platform_rpc)-rpc.gz

View File

@ -30,7 +30,7 @@ jobs:
- script: |
[ -n "$OVERRIDE_BUILD_OPTIONS" ] && OVERRIDE_BUILD_OPTIONS=$(OVERRIDE_BUILD_OPTIONS)
BUILD_OPTIONS="$(BUILD_OPTIONS) $OVERRIDE_BUILD_OPTIONS"
if [ -n "$(CACHE_MODE)" ] && echo $(PLATFORM_AZP) | grep -E -q "^(vs|broadcom|mellanox|marvell-armhf|marvell-arm64)$"; then
if [ -n "$(CACHE_MODE)" ] && echo $(PLATFORM_AZP) | grep -E -q "^(vs|broadcom|mellanox|marvell-armhf)$"; then
CACHE_OPTIONS="SONIC_DPKG_CACHE_METHOD=$(CACHE_MODE) SONIC_DPKG_CACHE_SOURCE=/nfs/dpkg_cache/$(PLATFORM_AZP)"
BUILD_OPTIONS="$BUILD_OPTIONS $CACHE_OPTIONS"
fi

View File

@ -101,6 +101,9 @@ jobs:
if [ ${{ parameters.swi_image }} == true ]; then
make USERNAME=admin $CACHE_OPTIONS SONIC_BUILD_JOBS=$(nproc) ENABLE_IMAGE_SIGNATURE=y target/sonic-aboot-${{ parameters.platform }}.swi
fi
if [ ${{ parameters.raw_image }} == true ]; then
make USERNAME=admin $CACHE_OPTIONS SONIC_BUILD_JOBS=$(nproc) target/sonic-${{ parameters.platform }}.raw
fi
if [ ${{ parameters.sync_rpc_image }} == true ]; then
make USERNAME=admin $CACHE_OPTIONS SONIC_BUILD_JOBS=$(nproc) ENABLE_SYNCD_RPC=y target/docker-syncd-${{ parameters.platform_short }}-rpc.gz
# workaround for issue in rules/sairedis.dep, git ls-files will list un-exist files for cache

View File

@ -1,63 +0,0 @@
# Starter pipeline
# Start with a minimal pipeline that you can customize to build and deploy your code.
# Add steps that build, run tests, deploy, and more:
# https://aka.ms/yaml
# Build and push sonic-mgmt image
schedules:
- cron: "0 8 * * *"
branches:
include:
- master
always: true
trigger: none
pr:
branches:
include:
- master
paths:
include:
- dockers/docker-sonic-mgmt
parameters:
- name: registry_url
type: string
default: sonicdev-microsoft.azurecr.io
- name: registry_conn
type: string
default: sonicdev
stages:
- stage: Build
jobs:
- job: Build
pool: sonicbld
timeoutInMinutes: 360
steps:
- template: cleanup.yml
- checkout: self
clean: true
- bash: |
set -xe
git submodule update --init --recursive -- src/sonic-platform-daemons src/sonic-genl-packet src/sonic-sairedis src/ptf src/sonic-device-data
make SONIC_BUILD_JOBS=$(nproc) DEFAULT_CONTAINER_REGISTRY=publicmirror.azurecr.io ENABLE_DOCKER_BASE_PULL=y configure PLATFORM=generic
make -f Makefile.work BLDENV=bullseye SONIC_BUILD_JOBS=$(nproc) DEFAULT_CONTAINER_REGISTRY=publicmirror.azurecr.io ENABLE_DOCKER_BASE_PULL=y LEGACY_SONIC_MGMT_DOCKER=n target/docker-sonic-mgmt.gz
cp target -r $(Build.ArtifactStagingDirectory)/target
docker load -i target/docker-sonic-mgmt.gz
docker tag docker-sonic-mgmt $REGISTRY_SERVER/docker-sonic-mgmt:py3only
env:
REGISTRY_SERVER: ${{ parameters.registry_url }}
displayName: Build docker-sonic-mgmt.gz
- task: Docker@2
displayName: Upload image
inputs:
containerRegistry: ${{ parameters.registry_conn }}
repository: docker-sonic-mgmt
command: push
tags: py3only
- publish: $(Build.ArtifactStagingDirectory)
artifact: 'docker-sonic-mgmt'
displayName: "Archive docker image sonic-mgmt"

View File

@ -43,7 +43,7 @@ stages:
git submodule update --init --recursive -- src/sonic-platform-daemons src/sonic-genl-packet src/sonic-sairedis src/ptf src/sonic-device-data
make SONIC_BUILD_JOBS=$(nproc) DEFAULT_CONTAINER_REGISTRY=publicmirror.azurecr.io ENABLE_DOCKER_BASE_PULL=y configure PLATFORM=generic
make -f Makefile.work BLDENV=bullseye SONIC_BUILD_JOBS=$(nproc) DEFAULT_CONTAINER_REGISTRY=publicmirror.azurecr.io ENABLE_DOCKER_BASE_PULL=y LEGACY_SONIC_MGMT_DOCKER=y target/docker-sonic-mgmt.gz
make SONIC_BUILD_JOBS=$(nproc) DEFAULT_CONTAINER_REGISTRY=publicmirror.azurecr.io ENABLE_DOCKER_BASE_PULL=y target/docker-sonic-mgmt.gz
cp target -r $(Build.ArtifactStagingDirectory)/target
docker load -i target/docker-sonic-mgmt.gz
docker tag docker-sonic-mgmt $REGISTRY_SERVER/docker-sonic-mgmt:latest

View File

@ -16,7 +16,6 @@ parameters:
- name: dist
type: string
values:
- bookworm
- bullseye
- buster
- stretch

View File

@ -8,7 +8,7 @@ resources:
- repository: buildimage
type: github
name: sonic-net/sonic-buildimage
ref: bookworm
ref: master
endpoint: sonic-net
schedules:
@ -44,7 +44,6 @@ parameters:
- name: 'dists'
type: object
default:
- bookworm
- bullseye
- buster
- stretch

View File

@ -15,34 +15,13 @@ trigger: none
pr: none
jobs:
- job: Amd
- job: Build
pool: sonicbld
timeoutInMinutes: 5
steps:
- checkout: none
- script: |
df -h
set -xe
sudo find /nfs/dpkg_cache/ -name *.tgz -mtime +30 -type f -delete
df -h
displayName: clean dpkg cache
- job: Armhf
pool: sonicbld-armhf
timeoutInMinutes: 5
steps:
- checkout: none
- script: |
df -h
sudo find /nfs/dpkg_cache/ -name *.tgz -mtime +30 -type f -delete
df -h
displayName: clean dpkg cache
- job: Arm64
pool: sonicbld-arm64
timeoutInMinutes: 5
steps:
- checkout: none
- script: |
df -h
sudo find /nfs/dpkg_cache/ -name *.tgz -mtime +30 -type f -delete
df -h
displayName: clean dpkg cache

View File

@ -39,6 +39,7 @@ stages:
- name: broadcom
variables:
swi_image: yes
raw_image: yes
docker_syncd_rpc_image: yes
platform_rpc: brcm
- name: mellanox

View File

@ -2,18 +2,7 @@ steps:
- ${{ if eq(variables['Build.Reason'], 'PullRequest') }}:
- script: |
set -ex
tar_branch=origin/$(System.PullRequest.TargetBranchName)
# Check if k8s master entrance script is changed
K8S_MASTER_CHANGED=NO
if git diff $tar_branch..HEAD --name-only | grep -F files/image_config/kubernetes/kubernetes_master_entrance.sh; then
K8S_MASTER_CHANGED=YES
fi
set +x
echo "##vso[task.setvariable variable=K8S_MASTER_CHANGED;]$K8S_MASTER_CHANGED"
displayName: "Check if k8s master image build is needed."
- script: |
set -ex
tar_branch=origin/$(System.PullRequest.TargetBranchName)
tar_branch=origin/$(System.PullRequest.TargetBranch)
git diff $tar_branch..HEAD --name-only | grep -v -f .azure-pipelines/vstest-exclude && exit 0
git diff $tar_branch..HEAD --name-only | grep -f .azure-pipelines/vstest-include && exit 0
set +x

View File

@ -40,7 +40,6 @@ If PR needs to be backported, then the PR must be tested against the base branch
- [ ] 202111
- [ ] 202205
- [ ] 202211
- [ ] 202305
#### Tested branch (Please provide the tested image version)

View File

@ -9,8 +9,7 @@ on:
jobs:
automerge:
# Disable workflow. Use automerge_scan instead to have the same behaviour.
if: github.event.check_suite.app.name == 'Azure Pipelines' && github.event.check_suite.conclusion == 'success' && false
if: github.event.check_suite.app.name == 'Azure Pipelines' && github.event.check_suite.conclusion == 'success'
runs-on: ubuntu-latest
steps:
- name: automerge

View File

@ -6,8 +6,7 @@ on:
jobs:
automerge_scan:
# Disable workflow, and use pipeline instead to have same logic with other automation
if: github.repository_owner == 'sonic-net' && false
if: github.repository_owner == 'sonic-net'
runs-on: ubuntu-latest
steps:
- name: Debug
@ -17,81 +16,58 @@ jobs:
set -e
echo ${TOKEN} | gh auth login --with-token
gh pr list -R sonic-net/sonic-buildimage -A mssonicbld -L 100 -S "label:automerge" --json url,body,title,createdAt,labels,statusCheckRollup > prs.log
gh pr list -R sonic-net/sonic-buildimage -A mssonicbld --json additions,assignees,author,baseRefName,body,changedFiles,closed,closedAt,comments,commits,createdAt,deletions,files,headRefName,headRepository,headRepositoryOwner,id,isCrossRepository,isDraft,labels,latestReviews,maintainerCanModify,mergeCommit,mergeStateStatus,mergeable,mergedAt,mergedBy,milestone,number,potentialMergeCommit,projectCards,reactionGroups,reviewDecision,reviewRequests,reviews,state,statusCheckRollup,title,updatedAt,url > prs.log
cat prs.log | jq
- name: Main
run: |
set -e
# PR merge run per 2 hours
# Other operation run per day.
# Cherry pick PR:
# more than 3 days, comment @author to check
# more than 10 days, stop comment.
# more than 28 days, comment @author PR will be closed
# more than 30 days, close PR
date_3d_ago=$(date --date "3 day ago" -u +"%FT%TZ")
date_10d_ago=$(date --date "10 day ago" -u +"%FT%TZ")
date_28d_ago=$(date --date "28 day ago" -u +"%FT%TZ")
date_30d_ago=$(date --date "30 day ago" -u +"%FT%TZ")
date_now=$(date -u +"%T")
operate=false
[[ "$date_now" < "02:00:00" ]] && operate=true
count=$(cat prs.log | jq 'length')
for ((i=0;i<$count;i++))
do
url=$(cat prs.log | jq -r ".[$i].url")
body=$(cat prs.log | jq -r ".[$i].body")
title=$(cat prs.log | jq -r ".[$i].title")
origin_pr_id=$(echo $title | grep -Eo "\[action\] \[PR:[0-9]*\]" | grep -Eo [0-9]* || true)
created_at=$(cat prs.log | jq -r ".[$i].createdAt")
echo PR: $(($i+1))/$count, URL: $url, origin PR: $origin_pr_id, createdAt: $created_at, operate: $operate
echo PR: $(($i+1))/$count, URL: $url, createdAt: $created_at, now: $(date -u +"%FT%TZ")
[[ "$url" == "" ]] && continue
[[ $created_at > $(date --date "1 hour ago" -u +"%FT%TZ") ]] && continue
# only check automerge PR.
cat prs.log | jq -r ".[$i].labels[].name" | grep automerge || continue
checks=$(cat prs.log | jq ".[$i].statusCheckRollup")
checks_count=$(echo $checks | jq 'length')
pr_success=true
echo Checks count: $checks_count
for ((j=0;j<$checks_count;j++))
do
check=$(echo $checks | jq ".[$j]")
status=$(echo $check | jq -r '.status')
state=$(echo $check | jq -r '.state')
conclusion=$(echo $check | jq -r '.conclusion')
name=$(echo $check | jq -r '.name')
# EasyCLA success flag: state=SUCCESS
# Others success flag: conclusion in SUCCESS,NEUTRAL
# only check Azure.sonic-buildimage currently
echo "$name" | grep -v "Azure.sonic-buildimage" > /dev/null && continue
[[ "$status" != "COMPLETED" ]] && echo "$name: $status" && continue 2
success=true
( [[ "$conclusion" == "FAILURE" ]] || [[ "$conclusion" == "CANCELLED" ]] ) && success=false && pr_success=false
! $success && echo "FAIL: $name"
# Ignore Azure.sonic-buildimage stage check result. It may be set continueOnError
echo "$name" | grep "Azure.sonic-buildimage (" && continue
# rerun Azure.sonic-buildimage per day
if [[ "$name" == "Azure.sonic-buildimage" ]] && [[ "$conclusion" == "FAILURE" ]];then
completedAt=$(echo $check | jq -r '.completedAt')
[[ "$completedAt" < $(date --date "2 hour ago" -u +"%FT%TZ") ]] && [[ $(date -u +"%T") < "02:00:00" ]] && gh pr comment $url --body "/azp run Azure.sonic-buildimage"
fi
# Ignore Semgrep, it has issues.
[[ "$name" == "Semgrep" ]] && continue
if [[ "$state" == "SUCCESS" ]];then
# check pass
continue
elif [[ "$conclusion" == "SUCCESS" ]] || [[ "$conclusion" == "NEUTRAL" ]];then
# check pass
continue
else
echo "$url Check failed!!!"
echo $check | jq
continue 2
fi
done
# rerun Azure.sonic-buildimage per day
! $pr_success && $operate && gh pr comment $url --body "/azp run Azure.sonic-buildimage"
# If auto cherry pick PRs failed, comment in original PR and close cherry pick PR
if [ -n "$origin_pr_id" ] && [[ $created_at < $date_3d_ago ]] && ! $pr_success;then
origin_pr_url=https://github.com/sonic-net/sonic-buildimage/pull/$origin_pr_id
author=$(gh pr view $origin_pr_url --json author | jq .author.login -r)
echo "Original author will check."
$operate && [[ $created_at > $date_10d_ago ]] && gh pr comment $origin_pr_url --body "@$author cherry pick PR didn't pass PR checker. Please check!!!<br>$url"
$operate && [[ $created_at < $date_28d_ago ]] && gh pr comment $origin_pr_url --body "@$author cherry pick PR didn't pass PR checker. Please check!!! Auto cherry pick PR will be closed in 2 days.<br>$url"
$operate && [[ $created_at < $date_30d_ago ]] && echo "$url Closed" && gh pr close $url
fi
! $pr_success && continue
# merge the PR
echo ========Merging PR========
if echo $title | grep "^\[submodule\]";then
gh pr merge --squash --admin -R sonic-net/sonic-buildimage $url -b "$body" || true
else
gh pr merge --rebase --admin -R sonic-net/sonic-buildimage $url || true
fi
gh pr merge --rebase --admin -R sonic-net/sonic-buildimage $url || true
echo ========Finished PR========
done

View File

@ -1,26 +0,0 @@
name: Build broadcom ONEIMAGE
run-name: ${{ gitea.actor }} is building SONiC for broadcom
on:
push:
branches: [master]
jobs:
Configure-Build-Package-Action:
runs-on: ubuntu-latest
steps:
- run: echo "Triggered ${{ gitea.event_name }}"
- name: Checkout
uses: actions/checkout@v4
- run: pip install j2cli
- name: Init Package
run: make init
- name: Configure Package
run: make configure PLATFORM=broadcom
- name: Compile Image
run: make target/sonic-broadcom.bin
- name: Release
uses: softprops/action-gh-release@v1
with:
files: |
*

View File

@ -8,8 +8,7 @@ on:
jobs:
post_cherry_pick:
# Use azpw instead to have stable performance
if: false && github.event.pull_request.merged == true && contains(github.event.pull_request.labels.*.name, 'automerge') && github.event.pull_request.head.user.login == 'mssonicbld' && startsWith(github.event.pull_request.title, '[action]')
if: github.event.pull_request.merged == true && contains(github.event.pull_request.labels.*.name, 'automerge') && github.event.pull_request.head.user.login == 'mssonicbld' && startsWith(github.event.pull_request.title, '[action]')
runs-on: ubuntu-latest
steps:
- name: Debug

View File

@ -9,8 +9,7 @@ on:
jobs:
pre_cherry_pick:
# Use azpw instead of workflow to have stable performance.
if: false && github.repository_owner == 'sonic-net' && github.event.pull_request.merged == true && ( (github.event.action == 'closed' && contains(join(github.event.pull_request.labels.*.name, ','), 'Approved for 20')) || (github.event.action == 'labeled' && startsWith(github.event.label.name, 'Approved for 20')) )
if: github.repository_owner == 'sonic-net' && github.event.pull_request.merged == true && ( (github.event.action == 'closed' && contains(join(github.event.pull_request.labels.*.name, ','), 'Approved for 20')) || (github.event.action == 'labeled' && startsWith(github.event.label.name, 'Approved for 20')) )
runs-on: ubuntu-latest
steps:
- name: Checkout

6
.gitignore vendored
View File

@ -41,9 +41,6 @@ installer/x86_64/platforms/
# Misc. files
asic_config_checksum
files/Aboot/boot0
files/dsc/MANIFEST
files/dsc/install_debian
files/dsc/fs.zip
files/initramfs-tools/arista-convertfs
files/initramfs-tools/union-mount
@ -108,6 +105,3 @@ htmlcov/
# Debian mirror Sources
sources.list.*
!sources.list*.j2
# Generated mirror configs
apt-retries-count

19
.gitmodules vendored
View File

@ -1,15 +1,19 @@
[submodule "sonic-swss-common"]
path = src/sonic-swss-common
url = https://github.com/sonic-net/sonic-swss-common
branch = 202305
[submodule "sonic-linux-kernel"]
path = src/sonic-linux-kernel
url = https://github.com/sonic-net/sonic-linux-kernel
branch = 202305
[submodule "sonic-sairedis"]
path = src/sonic-sairedis
url = https://github.com/sonic-net/sonic-sairedis
branch = 202305
[submodule "sonic-swss"]
path = src/sonic-swss
url = https://github.com/sonic-net/sonic-swss
branch = 202305
[submodule "src/p4c-bm/p4c-bm"]
path = platform/p4/p4c-bm/p4c-bm
url = https://github.com/krambn/p4c-bm
@ -31,15 +35,18 @@
[submodule "src/sonic-utilities"]
path = src/sonic-utilities
url = https://github.com/sonic-net/sonic-utilities
branch = 202305
[submodule "platform/broadcom/sonic-platform-modules-arista"]
path = platform/broadcom/sonic-platform-modules-arista
url = https://github.com/aristanetworks/sonic
[submodule "src/sonic-platform-common"]
path = src/sonic-platform-common
url = https://github.com/sonic-net/sonic-platform-common
branch = 202305
[submodule "src/sonic-platform-daemons"]
path = src/sonic-platform-daemons
url = https://github.com/sonic-net/sonic-platform-daemons
branch = 202305
[submodule "src/sonic-platform-pde"]
path = src/sonic-platform-pde
url = https://github.com/sonic-net/sonic-platform-pdk-pde
@ -91,6 +98,7 @@
[submodule "src/linkmgrd"]
path = src/linkmgrd
url = https://github.com/sonic-net/sonic-linkmgrd.git
branch = 202305
[submodule "src/sonic-p4rt/sonic-pins"]
path = src/sonic-p4rt/sonic-pins
url = https://github.com/sonic-net/sonic-pins.git
@ -103,21 +111,14 @@
[submodule "src/sonic-host-services"]
path = src/sonic-host-services
url = https://github.com/sonic-net/sonic-host-services
branch = 202305
[submodule "src/sonic-gnmi"]
path = src/sonic-gnmi
url = https://github.com/sonic-net/sonic-gnmi.git
branch = 202305
[submodule "src/sonic-genl-packet"]
path = src/sonic-genl-packet
url = https://github.com/sonic-net/sonic-genl-packet
[submodule "src/dhcpmon"]
path = src/dhcpmon
url = https://github.com/sonic-net/sonic-dhcpmon.git
[submodule "src/sonic-dash-api"]
path = src/sonic-dash-api
url = https://github.com/sonic-net/sonic-dash-api.git
[submodule "platform/marvell-arm64/mrvl-prestera"]
path = platform/marvell-arm64/mrvl-prestera
url = https://github.com/Marvell-switching/mrvl-prestera.git
[submodule "platform/marvell-arm64/sonic-platform-marvell"]
path = platform/marvell-arm64/sonic-platform-marvell
url = https://github.com/Marvell-switching/sonic-platform-arm64.git

22
LICENSE
View File

@ -1,13 +1,15 @@
Copyright (C) 2023 Microsoft
Copyright (C) 2016 Microsoft
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
http://www.apache.org/licenses/LICENSE-2.0
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

View File

@ -4,7 +4,6 @@ NOJESSIE ?= 1
NOSTRETCH ?= 1
NOBUSTER ?= 0
NOBULLSEYE ?= 0
NOBOOKWORM ?= 0
override Q := @
ifeq ($(QUIET),n)
@ -30,10 +29,6 @@ ifeq ($(NOBULLSEYE),0)
BUILD_BULLSEYE=1
endif
ifeq ($(NOBOOKWORM),0)
BUILD_BOOKWORM=1
endif
PLATFORM_PATH := platform/$(if $(PLATFORM),$(PLATFORM),$(CONFIGURED_PLATFORM))
PLATFORM_CHECKOUT := platform/checkout
PLATFORM_CHECKOUT_FILE := $(PLATFORM_CHECKOUT)/$(PLATFORM).ini
@ -52,12 +47,9 @@ ifeq ($(NOBUSTER), 0)
$(MAKE_WITH_RETRY) EXTRA_DOCKER_TARGETS=$(notdir $@) BLDENV=buster -f Makefile.work buster
endif
ifeq ($(NOBULLSEYE), 0)
$(MAKE_WITH_RETRY) EXTRA_DOCKER_TARGETS=$(notdir $@) BLDENV=bullseye -f Makefile.work bullseye
$(MAKE_WITH_RETRY) BLDENV=bullseye -f Makefile.work $@
endif
ifeq ($(NOBOOKWORM), 0)
$(MAKE_WITH_RETRY) BLDENV=bookworm -f Makefile.work $@
endif
BLDENV=bookworm $(MAKE) -f Makefile.work docker-cleanup
BLDENV=bullseye $(MAKE) -f Makefile.work docker-cleanup
jessie:
@echo "+++ Making $@ +++"
@ -77,12 +69,6 @@ ifeq ($(NOBUSTER), 0)
$(MAKE) -f Makefile.work buster
endif
bullseye:
@echo "+++ Making $@ +++"
ifeq ($(NOBUSTER), 0)
$(MAKE) -f Makefile.work bullseye
endif
init:
@echo "+++ Making $@ +++"
$(MAKE) -f Makefile.work $@
@ -96,7 +82,6 @@ define make_work
$(if $(BUILD_STRETCH),BLDENV=stretch $(MAKE) -f Makefile.work $@,)
$(if $(BUILD_BUSTER),BLDENV=buster $(MAKE) -f Makefile.work $@,)
$(if $(BUILD_BULLSEYE),BLDENV=bullseye $(MAKE) -f Makefile.work $@,)
$(if $(BUILD_BOOKWORM),BLDENV=bookworm $(MAKE) -f Makefile.work $@,)
endef
.PHONY: $(PLATFORM_PATH)

View File

@ -78,8 +78,7 @@ SONIC_COMMON_DPKG_LIST := debian/control debian/changelog debian/rules \
SONIC_COMMON_BASE_FILES_LIST := sonic-slave-jessie/Dockerfile.j2 sonic-slave-jessie/Dockerfile.user.j2 \
sonic-slave-stretch/Dockerfile.j2 sonic-slave-stretch/Dockerfile.user.j2 \
sonic-slave-buster/Dockerfile.j2 sonic-slave-buster/Dockerfile.user.j2 \
sonic-slave-bullseye/Dockerfile.j2 sonic-slave-bullseye/Dockerfile.user.j2 \
sonic-slave-bookworm/Dockerfile.j2 sonic-slave-bookworm/Dockerfile.user.j2
sonic-slave-bullseye/Dockerfile.j2 sonic-slave-bullseye/Dockerfile.user.j2
@ -295,12 +294,10 @@ define SAVE_INTO_CACHE
echo "Target $(1) dependencies are modifed - global save cache skipped" >> $($(1)_DST_PATH)/$(1).log
$(eval $(1)_CACHE_DIR := $(SONIC_DPKG_LOCAL_CACHE_DIR))
)
cp $($(1)_DST_PATH)/$(1).log $($(1)_DST_PATH)/$(1).cached.log
$($(1)_CACHE_USER) tar -C $($(1)_BASE_PATH) -mczvf $($(1)_CACHE_DIR)/$(MOD_CACHE_FILE) $(2) $(addprefix $($(1)_DST_PATH)/,$($(1)_DERIVED_DEBS) $($(1)_EXTRA_DEBS) $(1).cached.log) \
$($(1)_CACHE_USER) tar -C $($(1)_BASE_PATH) -mczvf $($(1)_CACHE_DIR)/$(MOD_CACHE_FILE) $(2) $(addprefix $($(1)_DST_PATH)/,$($(1)_DERIVED_DEBS) $($(1)_EXTRA_DEBS) ) \
1>>$($(1)_DST_PATH)/$(1).log
sudo chmod 777 $($(1)_CACHE_DIR)/$(MOD_CACHE_FILE)
rm -f $($(1)_DST_PATH)/$(1).cached.log
echo "File $($(1)_CACHE_DIR)/$(MOD_CACHE_FILE) saved in cache " >> $($(1)_DST_PATH)/$(1).log
echo "[ CACHE::SAVED ] $($(1)_CACHE_DIR)/$(MOD_CACHE_FILE)" >> $($(1)_DST_PATH)/$(1).log
@ -360,22 +357,6 @@ define SAVE_CACHE
$(if $(call CHECK_WCACHE_ENABLED,$(1)), $(call SAVE_INTO_CACHE,$(1),$(2)))
endef
RFS_DEP_FILES := $(wildcard \
$(addprefix scripts/, build_debian_base_system.sh prepare_debian_image_buildinfo.sh build_mirror_config.sh) \
$(addprefix $(IMAGE_DISTRO_DEBS_PATH)/,$(INITRAMFS_TOOLS) $(LINUX_KERNEL)) \
$(shell git ls-files files/initramfs-tools) \
$(shell git ls-files files/image_config) \
$(shell git ls-files files/apparmor) \
$(shell git ls-files files/apt) \
$(shell git ls-files files/sshd) \
$(shell git ls-files files/dhcp) \
src/sonic-build-hooks/buildinfo/trusted.gpg.d \
platform/$(CONFIGURED_PLATFORM)/modules \
files/docker/docker.service.conf \
files/build_templates/default_users.json.j2 \
files/build_scripts/generate_asic_config_checksum.py \
files/scripts/core_cleanup.py \
build_debian.sh onie-image.conf)
# Set the target path for each target.
@ -403,17 +384,11 @@ $(foreach pkg, $(SONIC_INSTALL_PKGS), \
$(eval $(pkg)_DST_PATH := $(if $($(pkg)_DST_PATH), $($(pkg)_DST_PATH), $(FSROOT_PATH))) \
$(eval $(FSROOT_PATH)/$(pkg)_TARGET := $(pkg)) )
$(foreach pkg, $(SONIC_RFS_TARGETS), \
$(eval $(pkg)_DST_PATH := $(if $($(pkg)_DST_PATH), $($(pkg)_DST_PATH), $(TARGET_PATH))) \
$(eval $(pkg)_CACHE_MODE := GIT_CONTENT_SHA) \
$(eval $(pkg)_DEP_FLAGS := $(SONIC_COMMON_FLAGS_LIST)) \
$(eval $(pkg)_DEP_FILES := $(SONIC_COMMON_BASE_FILES_LIST) $(RFS_DEP_FILES)) \
$(eval $(TARGET_PATH)/$(pkg)_TARGET := $(pkg)) )
# define the DEP files(.dep and .smdep) and SHA files (.sha and smsha) for each target
$(foreach pkg, $(SONIC_MAKE_DEBS) $(SONIC_DPKG_DEBS) $(SONIC_ONLINE_DEBS) $(SONIC_COPY_DEBS) \
$(SONIC_MAKE_FILES) $(SONIC_PYTHON_STDEB_DEBS) $(SONIC_PYTHON_WHEELS) \
$(SONIC_DOCKER_IMAGES) $(SONIC_DOCKER_DBG_IMAGES) $(SONIC_INSTALL_PKGS) $(SONIC_RFS_TARGETS), \
$(SONIC_DOCKER_IMAGES) $(SONIC_DOCKER_DBG_IMAGES) $(SONIC_INSTALL_PKGS), \
$(eval $(pkg)_MOD_SRC_PATH:=$(if $($(pkg)_SRC_PATH),$($(pkg)_SRC_PATH),$($(pkg)_PATH))) \
$(eval $(pkg)_BASE_PATH:=$(if $($(pkg)_BASE_PATH),$($(pkg)_BASE_PATH),$(CURDIR))) \
$(eval $(pkg)_DEP_FLAGS_FILE:=$($(pkg)_DST_PATH)/$(pkg).flags) \
@ -514,7 +489,6 @@ $(eval $(call FLAGS_DEP_RULES, $(SONIC_PYTHON_STDEB_DEBS), $(PYTHON_DEBS_PATH),f
$(eval $(call FLAGS_DEP_RULES, $(SONIC_PYTHON_WHEELS), $(PYTHON_WHEELS_PATH),flags))
$(eval $(call FLAGS_DEP_RULES, $(SONIC_DOCKER_IMAGES) $(SONIC_DOCKER_DBG_IMAGES), $(TARGET_PATH),flags))
$(eval $(call FLAGS_DEP_RULES, $(SONIC_INSTALL_PKGS), $(FSROOT_PATH),flags))
$(eval $(call FLAGS_DEP_RULES, $(SONIC_RFS_TARGETS), $(TARGET_PATH),flags))
@ -590,12 +564,10 @@ ALL_DEP_FILES_LIST += $(foreach pkg,$(2), $($(filter none,$($(1)_CACHE_MODE)), \
$(addsuffix .$(3).sha,$(addprefix $(pkg)/, $(1)))))
$(foreach docker, $(filter $(SONIC_DOCKER_IMAGES), $(1)), \
$(eval $(docker)_DEP_FILES+=$(wildcard files/build/versions/default/*) \
$(wildcard files/build/versions/dockers/$(basename $(docker))/*) \
$(foreach docker_file, $($(docker)_FILES), $(addprefix $(if $($(docker_file)_PATH), $($(docker_file)_PATH), $(FILES_PATH))/, $(docker_file))) ))
$(wildcard files/build/versions/dockers/$(basename $(docker))/*)))
$(foreach docker, $(filter $(SONIC_DOCKER_DBG_IMAGES), $(1)), \
$(eval $(docker)_DEP_FILES+=$(wildcard files/build/versions/default/*) \
$(wildcard files/build/versions/dockers/$(patsubst %-$(DBG_IMAGE_MARK).gz,%,$(docker))/*) \
$(foreach docker_file, $($(docker)_FILES), $(addprefix $(if $($(docker_file)_PATH), $($(docker_file)_PATH), $(FILES_PATH))/, $(docker_file))) ))
$(wildcard files/build/versions/dockers/$(patsubst %-$(DBG_IMAGE_MARK).gz,%,$(docker))/*)))
$(addsuffix .$(3),$(addprefix $(2)/, $(1))) : $(2)/%.$(3) : \
$(2)/%.flags $$$$($$$$*_DEP_FILES) $$$$(if $$$$($$$$*_SMDEP_FILES), $(2)/%.smdep)
@$$(eval $$*_DEP_FILES_MODIFIED := $$? )
@ -611,7 +583,6 @@ $(eval $(call SHA_DEP_RULES, $(SONIC_PYTHON_STDEB_DEBS), $(PYTHON_DEBS_PATH),dep
$(eval $(call SHA_DEP_RULES, $(SONIC_PYTHON_WHEELS), $(PYTHON_WHEELS_PATH),dep))
$(eval $(call SHA_DEP_RULES, $(SONIC_DOCKER_IMAGES) $(SONIC_DOCKER_DBG_IMAGES), $(TARGET_PATH),dep))
$(eval $(call SHA_DEP_RULES, $(SONIC_INSTALL_PKGS), $(FSROOT_PATH),dep))
$(eval $(call SHA_DEP_RULES, $(SONIC_RFS_TARGETS), $(TARGET_PATH),dep))
@ -645,7 +616,6 @@ SONIC_CACHE_CLEAN_TARGETS = $(addsuffix -clean,$(addprefix $(TARGET_PATH)/, \
$(SONIC_DOCKER_IMAGES) \
$(SONIC_DOCKER_DBG_IMAGES) \
$(SONIC_SIMPLE_DOCKER_IMAGES) \
$(SONIC_RFS_TARGETS) \
$(SONIC_INSTALLERS)))
$(SONIC_CACHE_CLEAN_TARGETS) :: $(TARGET_PATH)/%-clean : .platform
@rm -f $($*_DEP_FLAGS_FILE) $($*_MOD_HASH_FILE) $($*_SMOD_HASH_FILE) \

View File

@ -5,6 +5,8 @@
#
# * PLATFORM: Specific platform we wish to build images for.
# * BUILD_NUMBER: Desired version-number to pass to the building-system.
# * ENABLE_DHCP_GRAPH_SERVICE: Enables get-graph service to fetch minigraph files
# through http.
# * ENABLE_ZTP: Enables zero touch provisioning.
# * SHUTDOWN_BGP_ON_START: Sets admin-down state for all bgp peerings after restart.
# * INCLUDE_KUBERNETES: Allows including Kubernetes
@ -38,9 +40,6 @@
# * ENABLE_NATIVE_WRITE: Enable native write/config operations via the gNMI interface.
# * Default: unset
# * Values: y
# * ENABLE_DIALOUT: Enable dialout client in telemetry.
# * Default: unset
# * Values: y
# * SONIC_DPKG_CACHE_METHOD: Specifying method of obtaining the Debian packages from cache: none or cache
# * SONIC_DPKG_CACHE_SOURCE: Debian package cache location when cache enabled for debian packages
# * BUILD_LOG_TIMESTAMP: Set timestamp in the build log (simple/none)
@ -70,7 +69,6 @@ USER := $(shell id -un)
PWD := $(shell pwd)
USER_LC := $(shell echo $(USER) | tr A-Z a-z)
DOCKER_MACHINE := $(shell docker run --rm debian:buster uname -m)
HOST_DOCKERD_GID := $(shell getent group docker | cut -d : -f3)
comma := ,
@ -123,9 +121,7 @@ else
TARGET_BOOTLOADER = uboot
endif
ifeq ($(BLDENV), bookworm)
SLAVE_DIR = sonic-slave-bookworm
else ifeq ($(BLDENV), bullseye)
ifeq ($(BLDENV), bullseye)
SLAVE_DIR = sonic-slave-bullseye
else ifeq ($(BLDENV), buster)
SLAVE_DIR = sonic-slave-buster
@ -151,10 +147,6 @@ ifeq ($(ENABLE_DOCKER_BASE_PULL),)
override ENABLE_DOCKER_BASE_PULL = n
endif
ifeq ($(LEGACY_SONIC_MGMT_DOCKER),)
override LEGACY_SONIC_MGMT_DOCKER = y
endif
ifneq ($(GZ_COMPRESS_PROGRAM), pigz)
override GZ_COMPRESS_PROGRAM = gzip
endif
@ -184,19 +176,13 @@ DOCKER_ROOT = $(PWD)/fsroot.docker.$(BLDENV)
# Support FIPS feature, armhf not supported yet
ifeq ($(PLATFORM_ARCH),armhf)
INCLUDE_FIPS := n
ENABLE_FIPS_FEATURE := n
ENABLE_FIPS := n
endif
# FIPS not yet available on Bookworm
ifeq ($(BLDENV),bookworm)
$(warning FIPS support not yet available on Bookworm)
INCLUDE_FIPS := n
endif
ifeq ($(INCLUDE_FIPS), n)
ifeq ($(ENABLE_FIPS_FEATURE), n)
ifeq ($(ENABLE_FIPS), y)
$(error Cannot set fips config ENABLE_FIPS=y when INCLUDE_FIPS=n)
$(error Cannot set fips config ENABLE_FIPS=y when ENABLE_FIPS_FEATURE=n)
endif
endif
@ -217,14 +203,13 @@ $(shell \
SONIC_VERSION_CACHE_SOURCE=$(SONIC_VERSION_CACHE_SOURCE) \
DBGOPT='$(DBGOPT)' \
MIRROR_SNAPSHOT=$(MIRROR_SNAPSHOT) \
PIP_HTTP_TIMEOUT=$(PIP_HTTP_TIMEOUT) \
scripts/generate_buildinfo_config.sh)
# Generate the slave Dockerfile, and prepare build info for it
$(shell CONFIGURED_ARCH=$(CONFIGURED_ARCH) \
MULTIARCH_QEMU_ENVIRON=$(MULTIARCH_QEMU_ENVIRON) \
CROSS_BUILD_ENVIRON=$(CROSS_BUILD_ENVIRON) \
INCLUDE_FIPS=$(INCLUDE_FIPS) \
ENABLE_FIPS_FEATURE=$(ENABLE_FIPS_FEATURE) \
DOCKER_EXTRA_OPTS=$(DOCKER_EXTRA_OPTS) \
DEFAULT_CONTAINER_REGISTRY=$(DEFAULT_CONTAINER_REGISTRY) \
GZ_COMPRESS_PROGRAM=$(GZ_COMPRESS_PROGRAM) \
@ -236,11 +221,9 @@ $(shell CONFIGURED_ARCH=$(CONFIGURED_ARCH) \
j2 $(SLAVE_DIR)/Dockerfile.user.j2 > $(SLAVE_DIR)/Dockerfile.user)
ifeq ($(CROSS_BUILD_ENVIRON), y)
$(shell SONIC_VERSION_CONTROL_COMPONENTS=$(SONIC_VERSION_CONTROL_COMPONENTS) \
MIRROR_SNAPSHOT=$(MIRROR_SNAPSHOT) scripts/build_mirror_config.sh $(SLAVE_DIR) amd64 $(BLDENV))
$(shell MIRROR_SNAPSHOT=$(MIRROR_SNAPSHOT) scripts/build_mirror_config.sh $(SLAVE_DIR) amd64 $(BLDENV))
endif
$(shell SONIC_VERSION_CONTROL_COMPONENTS=$(SONIC_VERSION_CONTROL_COMPONENTS) \
MIRROR_SNAPSHOT=$(MIRROR_SNAPSHOT) scripts/build_mirror_config.sh $(SLAVE_DIR) $(CONFIGURED_ARCH) $(BLDENV))
$(shell MIRROR_SNAPSHOT=$(MIRROR_SNAPSHOT) scripts/build_mirror_config.sh $(SLAVE_DIR) $(CONFIGURED_ARCH) $(BLDENV))
PREPARE_DOCKER=BUILD_SLAVE=y \
DEFAULT_CONTAINER_REGISTRY=$(DEFAULT_CONTAINER_REGISTRY) \
@ -391,7 +374,7 @@ endif
ifeq ($(SONIC_CONFIG_USE_NATIVE_DOCKERD_FOR_BUILD), y)
ifneq ($(MULTIARCH_QEMU_ENVIRON), y)
DOCKER_RUN += -v /var/run/docker.sock:/var/run/docker.sock --group-add $(HOST_DOCKERD_GID)
DOCKER_RUN += -v /var/run/docker.sock:/var/run/docker.sock
endif
endif
@ -521,13 +504,13 @@ SONIC_BUILD_INSTRUCTION := $(MAKE) \
BUILD_TIMESTAMP=$(BUILD_TIMESTAMP) \
SONIC_IMAGE_VERSION=$(SONIC_IMAGE_VERSION) \
SLAVE_TAG=$(SLAVE_TAG) \
ENABLE_DHCP_GRAPH_SERVICE=$(ENABLE_DHCP_GRAPH_SERVICE) \
ENABLE_ZTP=$(ENABLE_ZTP) \
INCLUDE_PDE=$(INCLUDE_PDE) \
SHUTDOWN_BGP_ON_START=$(SHUTDOWN_BGP_ON_START) \
INCLUDE_KUBERNETES=$(INCLUDE_KUBERNETES) \
KUBERNETES_VERSION=$(KUBERNETES_VERSION) \
KUBERNETES_CNI_VERSION=$(KUBERNETES_CNI_VERSION) \
KUBERNETES_CRI_TOOLS_VERSION=$(KUBERNETES_CRI_TOOLS_VERSION) \
K8s_GCR_IO_PAUSE_VERSION=$(K8s_GCR_IO_PAUSE_VERSION) \
INCLUDE_KUBERNETES_MASTER=$(INCLUDE_KUBERNETES_MASTER) \
SONIC_ENABLE_PFCWD_ON_START=$(ENABLE_PFCWD_ON_START) \
@ -553,16 +536,12 @@ SONIC_BUILD_INSTRUCTION := $(MAKE) \
DOCKER_LOCKFILE_SAVE=$(DOCKER_LOCKFILE_SAVE) \
SONIC_CONFIG_USE_NATIVE_DOCKERD_FOR_BUILD=$(SONIC_CONFIG_USE_NATIVE_DOCKERD_FOR_BUILD) \
SONIC_INCLUDE_SYSTEM_TELEMETRY=$(INCLUDE_SYSTEM_TELEMETRY) \
SONIC_INCLUDE_SYSTEM_GNMI=$(INCLUDE_SYSTEM_GNMI) \
SONIC_INCLUDE_SYSTEM_EVENTD=$(INCLUDE_SYSTEM_EVENTD) \
INCLUDE_DHCP_RELAY=$(INCLUDE_DHCP_RELAY) \
INCLUDE_DHCP_SERVER=$(INCLUDE_DHCP_SERVER) \
INCLUDE_MACSEC=$(INCLUDE_MACSEC) \
SONIC_INCLUDE_RESTAPI=$(INCLUDE_RESTAPI) \
SONIC_INCLUDE_MUX=$(INCLUDE_MUX) \
ENABLE_TRANSLIB_WRITE=$(ENABLE_TRANSLIB_WRITE) \
ENABLE_NATIVE_WRITE=$(ENABLE_NATIVE_WRITE) \
ENABLE_DIALOUT=$(ENABLE_DIALOUT) \
EXTRA_DOCKER_TARGETS=$(EXTRA_DOCKER_TARGETS) \
BUILD_LOG_TIMESTAMP=$(BUILD_LOG_TIMESTAMP) \
SONIC_ENABLE_IMAGE_SIGNATURE=$(ENABLE_IMAGE_SIGNATURE) \
@ -580,7 +559,7 @@ SONIC_BUILD_INSTRUCTION := $(MAKE) \
ENABLE_ASAN=$(ENABLE_ASAN) \
SONIC_INCLUDE_BOOTCHART=$(INCLUDE_BOOTCHART) \
SONIC_ENABLE_BOOTCHART=$(ENABLE_BOOTCHART) \
INCLUDE_FIPS=$(INCLUDE_FIPS) \
ENABLE_FIPS_FEATURE=$(ENABLE_FIPS_FEATURE) \
ENABLE_FIPS=$(ENABLE_FIPS) \
SONIC_SLAVE_DOCKER_DRIVER=$(SONIC_SLAVE_DOCKER_DRIVER) \
MIRROR_URLS=$(MIRROR_URLS) \
@ -588,10 +567,7 @@ SONIC_BUILD_INSTRUCTION := $(MAKE) \
GZ_COMPRESS_PROGRAM=$(GZ_COMPRESS_PROGRAM) \
MIRROR_SNAPSHOT=$(MIRROR_SNAPSHOT) \
SONIC_VERSION_CONTROL_COMPONENTS=$(SONIC_VERSION_CONTROL_COMPONENTS) \
ONIE_IMAGE_PART_SIZE=$(ONIE_IMAGE_PART_SIZE) \
SONIC_OS_VERSION=$(SONIC_OS_VERSION) \
PIP_HTTP_TIMEOUT=$(PIP_HTTP_TIMEOUT) \
LEGACY_SONIC_MGMT_DOCKER=$(LEGACY_SONIC_MGMT_DOCKER) \
$(SONIC_OVERRIDE_BUILD_VARS)
.PHONY: sonic-slave-build sonic-slave-bash init reset
@ -614,7 +590,6 @@ export MIRROR_URLS
export MIRROR_SECURITY_URLS
export MIRROR_SNAPSHOT
export SONIC_VERSION_CONTROL_COMPONENTS
export PIP_HTTP_TIMEOUT
%:: | sonic-build-hooks
ifneq ($(filter y, $(MULTIARCH_QEMU_ENVIRON) $(CROSS_BUILD_ENVIRON)),)

View File

@ -7,34 +7,9 @@
[![Innovium](https://dev.azure.com/mssonic/build/_apis/build/status/innovium/Azure.sonic-buildimage.official.innovium?branchName=master&label=Innovium)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=148&branchName=master)
[![Mellanox](https://dev.azure.com/mssonic/build/_apis/build/status/mellanox/Azure.sonic-buildimage.official.mellanox?branchName=master&label=Mellanox)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=139&branchName=master)
[![Marvell(armhf)](https://dev.azure.com/mssonic/build/_apis/build/status/marvell/Azure.sonic-buildimage.official.marvell-armhf?branchName=master&label=Marvell-armhf)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=141&branchName=master)
[![Marvell(arm64)](https://dev.azure.com/mssonic/build/_apis/build/status/marvell/Azure.sonic-buildimage.official.marvell-arm64?branchName=master&label=Marvell-arm64)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=999&branchName=master)
[![Nephos](https://dev.azure.com/mssonic/build/_apis/build/status/nephos/Azure.sonic-buildimage.official.nephos?branchName=master&label=Nephos)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=149&branchName=master)
[![VS](https://dev.azure.com/mssonic/build/_apis/build/status/vs/Azure.sonic-buildimage.official.vs?branchName=master&label=VS)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=142&branchName=master)
*202305 builds*:
[![Barefoot](https://dev.azure.com/mssonic/build/_apis/build/status/barefoot/Azure.sonic-buildimage.official.barefoot?branchName=202205&label=Barefoot)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=146&branchName=202305)
[![Broadcom](https://dev.azure.com/mssonic/build/_apis/build/status/broadcom/Azure.sonic-buildimage.official.broadcom?branchName=202305&label=Broadcom)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=138&branchName=202305)
[![Centec](https://dev.azure.com/mssonic/build/_apis/build/status/centec/Azure.sonic-buildimage.official.centec?branchName=202305&label=Centec)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=143&branchName=202305)
[![Centec(arm64)](https://dev.azure.com/mssonic/build/_apis/build/status/centec/Azure.sonic-buildimage.official.centec-arm64?branchName=202305&label=Centec-arm64)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=140&branchName=202305)
[![Innovium](https://dev.azure.com/mssonic/build/_apis/build/status/innovium/Azure.sonic-buildimage.official.innovium?branchName=202305&label=Innovium)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=148&branchName=202305)
[![Mellanox](https://dev.azure.com/mssonic/build/_apis/build/status/mellanox/Azure.sonic-buildimage.official.mellanox?branchName=202305&label=Mellanox)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=139&branchName=202305)
[![Marvell(armhf)](https://dev.azure.com/mssonic/build/_apis/build/status/marvell/Azure.sonic-buildimage.official.marvell-armhf?branchName=202305&label=Marvell-armhf)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=141&branchName=202305)
[![Nephos](https://dev.azure.com/mssonic/build/_apis/build/status/nephos/Azure.sonic-buildimage.official.nephos?branchName=202305&label=Nephos)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=149&branchName=202305)
[![VS](https://dev.azure.com/mssonic/build/_apis/build/status/vs/Azure.sonic-buildimage.official.vs?branchName=202305&label=VS)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=142&branchName=202305)
*202211 builds*:
[![Barefoot](https://dev.azure.com/mssonic/build/_apis/build/status/barefoot/Azure.sonic-buildimage.official.barefoot?branchName=202205&label=Barefoot)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=146&branchName=202211)
[![Broadcom](https://dev.azure.com/mssonic/build/_apis/build/status/broadcom/Azure.sonic-buildimage.official.broadcom?branchName=202211&label=Broadcom)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=138&branchName=202211)
[![Centec](https://dev.azure.com/mssonic/build/_apis/build/status/centec/Azure.sonic-buildimage.official.centec?branchName=202211&label=Centec)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=143&branchName=202211)
[![Centec(arm64)](https://dev.azure.com/mssonic/build/_apis/build/status/centec/Azure.sonic-buildimage.official.centec-arm64?branchName=202211&label=Centec-arm64)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=140&branchName=202211)
[![Innovium](https://dev.azure.com/mssonic/build/_apis/build/status/innovium/Azure.sonic-buildimage.official.innovium?branchName=202211&label=Innovium)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=148&branchName=202211)
[![Mellanox](https://dev.azure.com/mssonic/build/_apis/build/status/mellanox/Azure.sonic-buildimage.official.mellanox?branchName=202211&label=Mellanox)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=139&branchName=202211)
[![Marvell(armhf)](https://dev.azure.com/mssonic/build/_apis/build/status/marvell/Azure.sonic-buildimage.official.marvell-armhf?branchName=202211&label=Marvell-armhf)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=141&branchName=202211)
[![Nephos](https://dev.azure.com/mssonic/build/_apis/build/status/nephos/Azure.sonic-buildimage.official.nephos?branchName=202211&label=Nephos)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=149&branchName=202211)
[![VS](https://dev.azure.com/mssonic/build/_apis/build/status/vs/Azure.sonic-buildimage.official.vs?branchName=202211&label=VS)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=142&branchName=202211)
*202205 builds*:
[![Barefoot](https://dev.azure.com/mssonic/build/_apis/build/status/barefoot/Azure.sonic-buildimage.official.barefoot?branchName=202205&label=Barefoot)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=146&branchName=202205)
@ -80,6 +55,14 @@
[![Nephos](https://dev.azure.com/mssonic/build/_apis/build/status/nephos/Azure.sonic-buildimage.official.nephos?branchName=201911&label=Nephos)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=149&branchName=201911)
[![VS](https://dev.azure.com/mssonic/build/_apis/build/status/vs/Azure.sonic-buildimage.official.vs?branchName=201911&label=VS)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=142&branchName=201911)
*201811 builds*:
[![Broadcom](https://dev.azure.com/mssonic/build/_apis/build/status/broadcom/Azure.sonic-buildimage.official.broadcom?branchName=201811&label=Broadcom)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=138&branchName=201811)
[![Mellanox](https://dev.azure.com/mssonic/build/_apis/build/status/mellanox/Azure.sonic-buildimage.official.mellanox?branchName=201811&label=Mellanox)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=139&branchName=201811)
[![Innovium](https://dev.azure.com/mssonic/build/_apis/build/status/innovium/Azure.sonic-buildimage.official.innovium?branchName=201811&label=Innovium)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=148&branchName=201811)
[![Nephos](https://dev.azure.com/mssonic/build/_apis/build/status/nephos/Azure.sonic-buildimage.official.nephos?branchName=201811&label=Nephos)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=149&branchName=201811)
[![VS](https://dev.azure.com/mssonic/build/_apis/build/status/vs/Azure.sonic-buildimage.official.vs?branchName=201811&label=VS)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=142&branchName=201811)
# sonic-buildimage
## Build SONiC Switch Images
@ -123,7 +106,6 @@ pip3 install --user j2cli
system to allow running the 'docker' command without 'sudo':
* Add current user to the docker group: `sudo gpasswd -a ${USER} docker`
* Log out and log back in so that your group membership is re-evaluated
* If you are using Linux kernel 5.3 or newer, then you must use Docker 20.10.10 or newer. This is because older Docker versions did not allow the `clone3` syscall, which is now used in Bookworm.
> Note: If a previous installation of Docker using snap was present on the
> system, remove it and also remove docker from snap before reinstallating docker.
@ -180,6 +162,9 @@ The supported ASIC vendors are:
## Usage for ARM Architecture
ARM build has dependency in docker version 18.
If docker version is 19, downgrade to 18 with:
```shell
sudo apt-get install --allow-downgrades -y docker-ce=5:18.09.0~3-0~ubuntu-xenial
sudo apt-get install --allow-downgrades -y docker-ce-cli=5:18.09.0~3-0~ubuntu-xenial
@ -343,10 +328,6 @@ on the SAI version for each SONiC release.
[managing, configuring and monitoring SONiC](https://github.com/sonic-net/sonic-mgmt)
(gzip tar archive)
## SONiC Image Azure Pipelines
All SONiC project build pipeline could be found at [Download Portal for SONiC Images](https://sonic-build.azurewebsites.net)
## Contribution Guide
All contributors must sign a contribution license agreement before contributions

View File

@ -42,12 +42,7 @@ variables:
- name: CACHE_MODE
value: rcache
- name: ENABLE_FIPS
value: n
- name: BUILD_BRANCH
${{ if eq(variables['Build.Reason'], 'PullRequest') }}:
value: $(System.PullRequest.TargetBranch)
${{ else }}:
value: $(Build.SourceBranchName)
value: y
stages:
- stage: BuildVS
@ -55,12 +50,14 @@ stages:
jobs:
- template: .azure-pipelines/azure-pipelines-build.yml
parameters:
buildOptions: 'USERNAME=admin SONIC_BUILD_JOBS=$(nproc) BUILD_MULTIASIC_KVM=y INCLUDE_DHCP_SERVER=y ${{ variables.VERSION_CONTROL_OPTIONS }}'
buildOptions: 'USERNAME=admin SONIC_BUILD_JOBS=$(nproc) BUILD_MULTIASIC_KVM=y ${{ variables.VERSION_CONTROL_OPTIONS }}'
jobGroups:
- name: vs
- stage: Build
pool: sonicbld
variables:
INSTALL_DEBUG_TOOLS: y
dependsOn: []
jobs:
- template: .azure-pipelines/azure-pipelines-build.yml
@ -70,12 +67,7 @@ stages:
- name: broadcom
variables:
swi_image: yes
INCLUDE_RESTAPI: y
- name: mellanox
variables:
dbg_image: yes
docker_syncd_rpc_image: yes
platform_rpc: mlnx
- name: marvell-arm64
pool: sonicbld-arm64
variables:
@ -85,7 +77,6 @@ stages:
timeoutInMinutes: 1200
variables:
PLATFORM_ARCH: armhf
INCLUDE_RESTAPI: y
- stage: Test
dependsOn: BuildVS
@ -118,30 +109,27 @@ stages:
sudo rm -rf ../*.deb
displayName: "Cleanup"
- task: DownloadPipelineArtifact@2
inputs:
source: specific
project: build
pipeline: 9
artifact: sonic-swss-common.amd64.ubuntu20_04
runVersion: 'latestFromBranch'
runBranch: 'refs/heads/master'
displayName: "Download sonic swss common deb packages"
- task: DownloadPipelineArtifact@2
inputs:
artifact: sonic-buildimage.vs
displayName: "Download sonic-buildimage.vs artifact"
- script: |
sudo src/sonic-swss-common/.azure-pipelines/build_and_install_module.sh
displayName: "Install kernel modules"
- script: |
set -x
sudo apt-get update
sudo apt-get install -y make libtool m4 autoconf dh-exec debhelper cmake pkg-config \
libhiredis-dev libnl-3-dev libnl-genl-3-dev libnl-route-3-dev libnl-nf-3-dev swig \
libpython2.7-dev libboost-dev libboost-serialization-dev uuid-dev libzmq5 libzmq3-dev python3-pip \
cmake libgtest-dev libgmock-dev libyang-dev nlohmann-json3-dev
sudo pip3 install pytest
cd src/sonic-swss-common
./autogen.sh
dpkg-buildpackage -rfakeroot -us -uc -b -j$(nproc)
sudo dpkg -i --force-confask,confnew ../libswsscommon_*.deb
sudo dpkg -i ../python3-swsscommon_*.deb
displayName: "Compile sonic swss common"
- script: |
sudo apt-get install libyang0.16 -y
sudo dpkg -i --force-confask,confnew ../libswsscommon_1.0.0_amd64.deb
sudo dpkg -i ../python3-swsscommon_1.0.0_amd64.deb
sudo docker load -i ../target/docker-sonic-vs.gz
docker tag docker-sonic-vs:latest docker-sonic-vs:$(Build.BuildNumber)
username=$(id -un)
@ -171,7 +159,7 @@ stages:
TOPOLOGY: t0
MIN_WORKER: $(T0_INSTANCE_NUM)
MAX_WORKER: $(T0_INSTANCE_NUM)
MGMT_BRANCH: $(BUILD_BRANCH)
MGMT_BRANCH: "202305"
- job: t0_2vlans_elastictest
pool: ubuntu-20.04
@ -185,7 +173,7 @@ stages:
TEST_SET: t0-2vlans
MIN_WORKER: $(T0_2VLANS_INSTANCE_NUM)
MAX_WORKER: $(T0_2VLANS_INSTANCE_NUM)
MGMT_BRANCH: $(BUILD_BRANCH)
MGMT_BRANCH: "202305"
DEPLOY_MG_EXTRA_PARAMS: "-e vlan_config=two_vlan_a"
- job: t1_lag_elastictest
@ -199,7 +187,7 @@ stages:
TOPOLOGY: t1-lag
MIN_WORKER: $(T1_LAG_INSTANCE_NUM)
MAX_WORKER: $(T1_LAG_INSTANCE_NUM)
MGMT_BRANCH: $(BUILD_BRANCH)
MGMT_BRANCH: "202305"
- job: multi_asic_elastictest
displayName: "kvmtest-multi-asic-t1-lag by Elastictest"
@ -214,7 +202,7 @@ stages:
MIN_WORKER: $(MULTI_ASIC_INSTANCE_NUM)
MAX_WORKER: $(MULTI_ASIC_INSTANCE_NUM)
NUM_ASIC: 4
MGMT_BRANCH: $(BUILD_BRANCH)
MGMT_BRANCH: "202305"
- job: dualtor_elastictest
pool: ubuntu-20.04
@ -227,7 +215,7 @@ stages:
TOPOLOGY: dualtor
MIN_WORKER: $(T0_DUALTOR_INSTANCE_NUM)
MAX_WORKER: $(T0_DUALTOR_INSTANCE_NUM)
MGMT_BRANCH: $(BUILD_BRANCH)
MGMT_BRANCH: "202305"
COMMON_EXTRA_PARAMS: "--disable_loganalyzer "
- job: sonic_t0_elastictest
@ -242,24 +230,10 @@ stages:
MIN_WORKER: $(T0_SONIC_INSTANCE_NUM)
MAX_WORKER: $(T0_SONIC_INSTANCE_NUM)
TEST_SET: t0-sonic
MGMT_BRANCH: $(BUILD_BRANCH)
MGMT_BRANCH: "202305"
COMMON_EXTRA_PARAMS: "--neighbor_type=sonic "
VM_TYPE: vsonic
- job: dpu_elastictest
displayName: "kvmtest-dpu by Elastictest"
timeoutInMinutes: 240
continueOnError: false
pool: ubuntu-20.04
steps:
- template: .azure-pipelines/run-test-elastictest-template.yml@sonic-mgmt
parameters:
TOPOLOGY: dpu
MIN_WORKER: $(T0_SONIC_INSTANCE_NUM)
MAX_WORKER: $(T0_SONIC_INSTANCE_NUM)
MGMT_BRANCH: $(BUILD_BRANCH)
# - job: wan_elastictest
# displayName: "kvmtest-wan by Elastictest"
# pool: ubuntu-20.04

View File

@ -31,9 +31,9 @@ set -x -e
CONFIGURED_ARCH=$([ -f .arch ] && cat .arch || echo amd64)
## docker engine version (with platform)
DOCKER_VERSION=5:24.0.2-1~debian.12~$IMAGE_DISTRO
CONTAINERD_IO_VERSION=1.6.21-1
LINUX_KERNEL_VERSION=6.1.0-11-2
DOCKER_VERSION=5:20.10.14~3-0~debian-$IMAGE_DISTRO
CONTAINERD_IO_VERSION=1.5.11-1
LINUX_KERNEL_VERSION=5.10.0-18-2
## Working directory to prepare the file system
FILESYSTEM_ROOT=./fsroot
@ -50,8 +50,8 @@ TRUSTED_GPG_DIR=$BUILD_TOOL_PATH/trusted.gpg.d
echo "Error: Invalid ONIE_IMAGE_PART_SIZE in onie image config file"
exit 1
}
[ -n "$INSTALLER_PAYLOAD" ] || {
echo "Error: Invalid INSTALLER_PAYLOAD in onie image config file"
[ -n "$ONIE_INSTALLER_PAYLOAD" ] || {
echo "Error: Invalid ONIE_INSTALLER_PAYLOAD in onie image config file"
exit 1
}
[ -n "$FILESYSTEM_SQUASHFS" ] || {
@ -59,30 +59,23 @@ TRUSTED_GPG_DIR=$BUILD_TOOL_PATH/trusted.gpg.d
exit 1
}
if [ "$IMAGE_TYPE" = "aboot" ]; then
TARGET_BOOTLOADER="aboot"
fi
## Check if not a last stage of RFS build
if [[ $RFS_SPLIT_LAST_STAGE != y ]]; then
## Prepare the file system directory
if [[ -d $FILESYSTEM_ROOT ]]; then
sudo rm -rf $FILESYSTEM_ROOT || die "Failed to clean chroot directory"
fi
mkdir -p $FILESYSTEM_ROOT
mkdir -p $FILESYSTEM_ROOT/$PLATFORM_DIR
mkdir -p $FILESYSTEM_ROOT/$PLATFORM_DIR/grub
touch $FILESYSTEM_ROOT/$PLATFORM_DIR/firsttime
bootloader_packages=""
if [ "$TARGET_BOOTLOADER" != "aboot" ]; then
mkdir -p $FILESYSTEM_ROOT/$PLATFORM_DIR/grub
bootloader_packages="grub2-common"
fi
## ensure proc is mounted
sudo mount proc /proc -t proc || true
## make / as a mountpoint in chroot env, needed by dockerd
pushd $FILESYSTEM_ROOT
sudo mount --bind . .
popd
## Build the host debian base system
echo '[INFO] Build host debian base system...'
TARGET_PATH=$TARGET_PATH scripts/build_debian_base_system.sh $CONFIGURED_ARCH $IMAGE_DISTRO $FILESYSTEM_ROOT
@ -120,8 +113,7 @@ sudo LANG=C chroot $FILESYSTEM_ROOT mount
## Pointing apt to public apt mirrors and getting latest packages, needed for latest security updates
scripts/build_mirror_config.sh files/apt $CONFIGURED_ARCH $IMAGE_DISTRO
sudo cp files/apt/sources.list.$CONFIGURED_ARCH $FILESYSTEM_ROOT/etc/apt/sources.list
sudo cp files/apt/apt-retries-count $FILESYSTEM_ROOT/etc/apt/apt.conf.d/
sudo cp files/apt/apt.conf.d/{81norecommends,apt-{clean,gzip-indexes,no-languages},no-check-valid-until} $FILESYSTEM_ROOT/etc/apt/apt.conf.d/
sudo cp files/apt/apt.conf.d/{81norecommends,apt-{clean,gzip-indexes,no-languages},no-check-valid-until,apt-multiple-retries} $FILESYSTEM_ROOT/etc/apt/apt.conf.d/
## Note: set lang to prevent locale warnings in your chroot
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y update
@ -256,40 +248,36 @@ sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y install apparmor
sudo cp files/image_config/ntp/ntp-apparmor $FILESYSTEM_ROOT/etc/apparmor.d/local/usr.sbin.ntpd
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y install apt-transport-https \
ca-certificates \
curl
curl \
gnupg2 \
software-properties-common
if [[ $CONFIGURED_ARCH == armhf ]]; then
# update ssl ca certificates for secure pem
sudo https_proxy=$https_proxy LANG=C chroot $FILESYSTEM_ROOT c_rehash
fi
sudo https_proxy=$https_proxy LANG=C chroot $FILESYSTEM_ROOT curl -o /tmp/docker.asc -fsSL https://download.docker.com/linux/debian/gpg
sudo LANG=C chroot $FILESYSTEM_ROOT mv /tmp/docker.asc /etc/apt/trusted.gpg.d/
sudo tee $FILESYSTEM_ROOT/etc/apt/sources.list.d/docker.list >/dev/null <<EOF
deb [arch=$CONFIGURED_ARCH] https://download.docker.com/linux/debian $IMAGE_DISTRO stable
EOF
sudo LANG=C chroot $FILESYSTEM_ROOT add-apt-repository \
"deb [arch=$CONFIGURED_ARCH] https://download.docker.com/linux/debian $IMAGE_DISTRO stable"
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get update
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y install docker-ce=${DOCKER_VERSION} docker-ce-cli=${DOCKER_VERSION} containerd.io=${CONTAINERD_IO_VERSION}
# Uninstall 'python3-gi' installed as part of 'software-properties-common' to remove debian version of 'PyGObject'
# pip version of 'PyGObject' will be installed during installation of 'sonic-host-services'
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y remove software-properties-common gnupg2 python3-gi
install_kubernetes () {
local ver="$1"
## Install k8s package from storage
local storage_prefix="https://sonicstorage.blob.core.windows.net/public/kubernetes"
sudo https_proxy=$https_proxy LANG=C chroot $FILESYSTEM_ROOT curl -o /tmp/cri-tools.deb -fsSL \
${storage_prefix}/cri-tools_${KUBERNETES_CRI_TOOLS_VERSION}_${CONFIGURED_ARCH}.deb
sudo https_proxy=$https_proxy LANG=C chroot $FILESYSTEM_ROOT curl -o /tmp/kubernetes-cni.deb -fsSL \
${storage_prefix}/kubernetes-cni_${KUBERNETES_CNI_VERSION}_${CONFIGURED_ARCH}.deb
sudo https_proxy=$https_proxy LANG=C chroot $FILESYSTEM_ROOT curl -o /tmp/kubelet.deb -fsSL \
${storage_prefix}/kubelet_${ver}_${CONFIGURED_ARCH}.deb
sudo https_proxy=$https_proxy LANG=C chroot $FILESYSTEM_ROOT curl -o /tmp/kubectl.deb -fsSL \
${storage_prefix}/kubectl_${ver}_${CONFIGURED_ARCH}.deb
sudo https_proxy=$https_proxy LANG=C chroot $FILESYSTEM_ROOT curl -o /tmp/kubeadm.deb -fsSL \
${storage_prefix}/kubeadm_${ver}_${CONFIGURED_ARCH}.deb
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y install -f /tmp/cri-tools.deb
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y install -f /tmp/kubernetes-cni.deb
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y install -f /tmp/kubelet.deb
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y install -f /tmp/kubectl.deb
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y install -f /tmp/kubeadm.deb
sudo LANG=C chroot $FILESYSTEM_ROOT rm -f /tmp/{cri-tools,kubernetes-cni,kubelet,kubeadm,kubectl}.deb
sudo https_proxy=$https_proxy LANG=C chroot $FILESYSTEM_ROOT curl -fsSL \
https://packages.cloud.google.com/apt/doc/apt-key.gpg | \
sudo LANG=C chroot $FILESYSTEM_ROOT apt-key add -
## Check out the sources list update matches current Debian version
sudo cp files/image_config/kubernetes/kubernetes.list $FILESYSTEM_ROOT/etc/apt/sources.list.d/
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get update
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y install kubernetes-cni=${KUBERNETES_CNI_VERSION}
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y install kubelet=${ver}
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y install kubectl=${ver}
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y install kubeadm=${ver}
}
if [ "$INCLUDE_KUBERNETES" == "y" ]
@ -307,7 +295,18 @@ then
echo '[INFO] Install kubernetes master'
install_kubernetes ${MASTER_KUBERNETES_VERSION}
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y install hyperv-daemons xmlstarlet parted netcat-openbsd
sudo https_proxy=$https_proxy LANG=C chroot $FILESYSTEM_ROOT curl -fsSL \
https://packages.microsoft.com/keys/microsoft.asc | \
sudo LANG=C chroot $FILESYSTEM_ROOT apt-key add -
sudo https_proxy=$https_proxy LANG=C chroot $FILESYSTEM_ROOT curl -fsSL \
https://packages.microsoft.com/keys/msopentech.asc | \
sudo LANG=C chroot $FILESYSTEM_ROOT apt-key add -
echo "deb [arch=amd64] https://packages.microsoft.com/repos/azurecore-debian $IMAGE_DISTRO main" | \
sudo tee $FILESYSTEM_ROOT/etc/apt/sources.list.d/azure.list
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get update
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y install hyperv-daemons gnupg xmlstarlet
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y install metricsext2
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y remove gnupg
sudo https_proxy=$https_proxy LANG=C chroot $FILESYSTEM_ROOT curl -o /tmp/cri-dockerd.deb -fsSL \
https://github.com/Mirantis/cri-dockerd/releases/download/v${MASTER_CRI_DOCKERD}/cri-dockerd_${MASTER_CRI_DOCKERD}.3-0.debian-${IMAGE_DISTRO}_amd64.deb
sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y install -f /tmp/cri-dockerd.deb
@ -376,14 +375,14 @@ sudo LANG=C DEBIAN_FRONTEND=noninteractive chroot $FILESYSTEM_ROOT apt-get -y in
gdisk \
sysfsutils \
squashfs-tools \
$bootloader_packages \
rsyslog \
grub2-common \
screen \
hping3 \
tcptraceroute \
mtr-tiny \
locales \
cgroup-tools \
ipmitool \
ndisc6 \
makedumpfile \
conntrack \
@ -392,20 +391,21 @@ sudo LANG=C DEBIAN_FRONTEND=noninteractive chroot $FILESYSTEM_ROOT apt-get -y in
python3-pip \
python-is-python3 \
cron \
libprotobuf32 \
libgrpc29 \
libgrpc++1.51 \
libprotobuf23 \
libgrpc++1 \
libgrpc10 \
haveged \
fdisk \
gpg \
jq \
auditd \
linux-perf \
resolvconf \
lsof \
sysstat \
xxd \
zstd
sysstat
# default rsyslog version is 8.2110.0 which has a bug on log rate limit,
# use backport version
sudo LANG=C DEBIAN_FRONTEND=noninteractive chroot $FILESYSTEM_ROOT apt-get -t bullseye-backports -y install rsyslog
# Have systemd create the auditd log directory
sudo mkdir -p ${FILESYSTEM_ROOT}/etc/systemd/system/auditd.service.d
@ -415,10 +415,6 @@ LogsDirectory=audit
LogsDirectoryMode=0750
EOF
# latest tcpdump control resource access with AppArmor.
# override tcpdump profile to allow tcpdump access TACACS config file.
sudo cp files/apparmor/usr.bin.tcpdump $FILESYSTEM_ROOT/etc/apparmor.d/local/usr.bin.tcpdump
if [[ $CONFIGURED_ARCH == amd64 ]]; then
## Pre-install the fundamental packages for amd64 (x86)
sudo LANG=C DEBIAN_FRONTEND=noninteractive chroot $FILESYSTEM_ROOT apt-get -y install \
@ -451,6 +447,14 @@ sudo LANG=C DEBIAN_FRONTEND=noninteractive chroot $FILESYSTEM_ROOT apt-get -y in
systemd-sysv \
ntp
# Workaround for issue: The udev rule may fail to be executed because the
# daemon-reload command is executed in parallel
# Github issue: https://github.com/systemd/systemd/issues/24668
# Github PR: https://github.com/systemd/systemd/pull/24673
# This workaround should be removed after a upstream already contains the fixes
sudo patch $FILESYSTEM_ROOT/lib/systemd/system/systemd-udevd.service \
files/image_config/systemd/systemd-udevd/fix-udev-rule-may-fail-if-daemon-reload-command-runs.patch
if [[ $TARGET_BOOTLOADER == grub ]]; then
if [[ $CONFIGURED_ARCH == amd64 ]]; then
GRUB_PKG=grub-pc-bin
@ -467,10 +471,6 @@ fi
## Disable kexec supported reboot which was installed by default
sudo sed -i 's/LOAD_KEXEC=true/LOAD_KEXEC=false/' $FILESYSTEM_ROOT/etc/default/kexec
# Ensure that 'logrotate-config.service' is set as a dependency to start before 'logrotate.service'.
sudo mkdir $FILESYSTEM_ROOT/etc/systemd/system/logrotate.service.d
sudo cp files/image_config/logrotate/logrotateOverride.conf $FILESYSTEM_ROOT/etc/systemd/system/logrotate.service.d/logrotateOverride.conf
## Remove sshd host keys, and will regenerate on first sshd start
sudo rm -f $FILESYSTEM_ROOT/etc/ssh/ssh_host_*_key*
sudo cp files/sshd/host-ssh-keygen.sh $FILESYSTEM_ROOT/usr/local/bin/
@ -490,14 +490,10 @@ rm /files/etc/ssh/sshd_config/ClientAliveInterval
rm /files/etc/ssh/sshd_config/ClientAliveCountMax
touch /files/etc/ssh/sshd_config/EmptyLineHack
rename /files/etc/ssh/sshd_config/EmptyLineHack ""
set /files/etc/ssh/sshd_config/ClientAliveInterval 300
set /files/etc/ssh/sshd_config/ClientAliveInterval 900
set /files/etc/ssh/sshd_config/ClientAliveCountMax 0
ins #comment before /files/etc/ssh/sshd_config/ClientAliveInterval
set /files/etc/ssh/sshd_config/#comment[following-sibling::*[1][self::ClientAliveInterval]] "Close inactive client sessions after 5 minutes"
rm /files/etc/ssh/sshd_config/MaxAuthTries
set /files/etc/ssh/sshd_config/MaxAuthTries 3
rm /files/etc/ssh/sshd_config/Banner
set /files/etc/ssh/sshd_config/Banner /etc/issue
set /files/etc/ssh/sshd_config/#comment[following-sibling::*[1][self::ClientAliveInterval]] "Close inactive client sessions after 15 minutes"
rm /files/etc/ssh/sshd_config/LogLevel
set /files/etc/ssh/sshd_config/LogLevel VERBOSE
save
@ -535,11 +531,13 @@ done < files/image_config/sysctl/sysctl-net.conf
sudo augtool --autosave "$sysctl_net_cmd_string" -r $FILESYSTEM_ROOT
# Specify that we want to explicitly install Python packages into the system environment, and risk breakages
sudo cp files/image_config/pip/pip.conf $FILESYSTEM_ROOT/etc/pip.conf
# Upgrade pip via PyPI and uninstall the Debian version
sudo https_proxy=$https_proxy LANG=C chroot $FILESYSTEM_ROOT pip3 install --upgrade pip
sudo LANG=C DEBIAN_FRONTEND=noninteractive chroot $FILESYSTEM_ROOT apt-get purge -y python3-pip
# For building Python packages
sudo LANG=C DEBIAN_FRONTEND=noninteractive chroot $FILESYSTEM_ROOT apt-get -y install python3-setuptools python3-wheel
sudo https_proxy=$https_proxy LANG=C chroot $FILESYSTEM_ROOT pip3 install 'setuptools==49.6.00'
sudo https_proxy=$https_proxy LANG=C chroot $FILESYSTEM_ROOT pip3 install 'wheel==0.35.1'
# docker Python API package is needed by Ansible docker module as well as some SONiC applications
sudo https_proxy=$https_proxy LANG=C chroot $FILESYSTEM_ROOT pip3 install 'docker==6.1.1'
@ -572,80 +570,20 @@ sudo cp files/dhcp/sethostname6 $FILESYSTEM_ROOT/etc/dhcp/dhclient-exit-hooks.d/
sudo cp files/dhcp/graphserviceurl $FILESYSTEM_ROOT/etc/dhcp/dhclient-exit-hooks.d/
sudo cp files/dhcp/snmpcommunity $FILESYSTEM_ROOT/etc/dhcp/dhclient-exit-hooks.d/
sudo cp files/dhcp/vrf $FILESYSTEM_ROOT/etc/dhcp/dhclient-exit-hooks.d/
if [ -f files/image_config/ntp/ntpsec ]; then
sudo cp ./files/image_config/ntp/ntpsec $FILESYSTEM_ROOT/etc/init.d/
if [ -f files/image_config/ntp/ntp ]; then
sudo cp ./files/image_config/ntp/ntp $FILESYSTEM_ROOT/etc/init.d/
fi
if [ -f files/image_config/ntp/ntp-systemd-wrapper ]; then
sudo cp ./files/image_config/ntp/ntp-systemd-wrapper $FILESYSTEM_ROOT/usr/libexec/ntpsec/
sudo mkdir -p $FILESYSTEM_ROOT/usr/lib/ntp/
sudo cp ./files/image_config/ntp/ntp-systemd-wrapper $FILESYSTEM_ROOT/usr/lib/ntp/
fi
## Version file part 1
## Version file
sudo mkdir -p $FILESYSTEM_ROOT/etc/sonic
if [ -f files/image_config/sonic_release ]; then
sudo cp files/image_config/sonic_release $FILESYSTEM_ROOT/etc/sonic/
fi
# Default users info
export password_expire="$( [[ "$CHANGE_DEFAULT_PASSWORD" == "y" ]] && echo true || echo false )"
export username="${USERNAME}"
export password="$(sudo grep ^${USERNAME} $FILESYSTEM_ROOT/etc/shadow | cut -d: -f2)"
j2 files/build_templates/default_users.json.j2 | sudo tee $FILESYSTEM_ROOT/etc/sonic/default_users.json
sudo LANG=c chroot $FILESYSTEM_ROOT chmod 600 /etc/sonic/default_users.json
sudo LANG=c chroot $FILESYSTEM_ROOT chown root:shadow /etc/sonic/default_users.json
## Copy over clean-up script
sudo cp ./files/scripts/core_cleanup.py $FILESYSTEM_ROOT/usr/bin/core_cleanup.py
## Copy ASIC config checksum
sudo chmod 755 files/build_scripts/generate_asic_config_checksum.py
./files/build_scripts/generate_asic_config_checksum.py
if [[ ! -f './asic_config_checksum' ]]; then
echo 'asic_config_checksum not found'
exit 1
fi
sudo cp ./asic_config_checksum $FILESYSTEM_ROOT/etc/sonic/asic_config_checksum
## Check if not a last stage of RFS build
fi
if [[ $RFS_SPLIT_FIRST_STAGE == y ]]; then
echo '[INFO] Finished with RFS first stage'
echo '[INFO] Umount all'
## Display all process details access /proc
sudo LANG=C chroot $FILESYSTEM_ROOT fuser -vm /proc
## Kill the processes
sudo LANG=C chroot $FILESYSTEM_ROOT fuser -km /proc || true
## Wait fuser fully kill the processes
sudo timeout 15s bash -c 'until LANG=C chroot $0 umount /proc; do sleep 1; done' $FILESYSTEM_ROOT || true
sudo rm -f $TARGET_PATH/$RFS_SQUASHFS_NAME
sudo mksquashfs $FILESYSTEM_ROOT $TARGET_PATH/$RFS_SQUASHFS_NAME -Xcompression-level 1
exit 0
fi
if [[ $RFS_SPLIT_LAST_STAGE == y ]]; then
echo '[INFO] RFS build: second stage'
## ensure proc is mounted
sudo mount proc /proc -t proc || true
sudo fuser -vm $FILESYSTEM_ROOT || true
sudo rm -rf $FILESYSTEM_ROOT
sudo unsquashfs -d $FILESYSTEM_ROOT $TARGET_PATH/$RFS_SQUASHFS_NAME
## make / as a mountpoint in chroot env, needed by dockerd
pushd $FILESYSTEM_ROOT
sudo mount --bind . .
popd
trap_push 'sudo LANG=C chroot $FILESYSTEM_ROOT umount /proc || true'
sudo LANG=C chroot $FILESYSTEM_ROOT mount proc /proc -t proc
fi
## Version file part 2
export build_version="${SONIC_IMAGE_VERSION}"
export debian_version="$(cat $FILESYSTEM_ROOT/etc/debian_version)"
export kernel_version="${kversion}"
@ -660,6 +598,18 @@ export built_by="$USER@$BUILD_HOSTNAME"
export sonic_os_version="${SONIC_OS_VERSION}"
j2 files/build_templates/sonic_version.yml.j2 | sudo tee $FILESYSTEM_ROOT/etc/sonic/sonic_version.yml
## Copy over clean-up script
sudo cp ./files/scripts/core_cleanup.py $FILESYSTEM_ROOT/usr/bin/core_cleanup.py
## Copy ASIC config checksum
sudo chmod 755 files/build_scripts/generate_asic_config_checksum.py
./files/build_scripts/generate_asic_config_checksum.py
if [[ ! -f './asic_config_checksum' ]]; then
echo 'asic_config_checksum not found'
exit 1
fi
sudo cp ./asic_config_checksum $FILESYSTEM_ROOT/etc/sonic/asic_config_checksum
if [ -f sonic_debian_extension.sh ]; then
./sonic_debian_extension.sh $FILESYSTEM_ROOT $PLATFORM_DIR $IMAGE_DISTRO
fi
@ -763,27 +713,14 @@ sudo chroot $FILESYSTEM_ROOT update-initramfs -u
## Convert initrd image to u-boot format
if [[ $TARGET_BOOTLOADER == uboot ]]; then
INITRD_FILE=initrd.img-${LINUX_KERNEL_VERSION}-${CONFIGURED_ARCH}
KERNEL_FILE=vmlinuz-${LINUX_KERNEL_VERSION}-${CONFIGURED_ARCH}
if [[ $CONFIGURED_ARCH == armhf ]]; then
INITRD_FILE=initrd.img-${LINUX_KERNEL_VERSION}-armmp
sudo LANG=C chroot $FILESYSTEM_ROOT mkimage -A arm -O linux -T ramdisk -C gzip -d /boot/$INITRD_FILE /boot/u${INITRD_FILE}
## Overwriting the initrd image with uInitrd
sudo LANG=C chroot $FILESYSTEM_ROOT mv /boot/u${INITRD_FILE} /boot/$INITRD_FILE
elif [[ $CONFIGURED_ARCH == arm64 ]]; then
if [[ $CONFIGURED_PLATFORM == pensando ]]; then
## copy device tree file into boot (XXX: need to compile dtb from dts)
sudo cp -v $PLATFORM_DIR/pensando/elba-asic-psci.dtb $FILESYSTEM_ROOT/boot/
## make kernel as gzip file
sudo LANG=C chroot $FILESYSTEM_ROOT gzip /boot/${KERNEL_FILE}
sudo LANG=C chroot $FILESYSTEM_ROOT mv /boot/${KERNEL_FILE}.gz /boot/${KERNEL_FILE}
## Convert initrd image to u-boot format
sudo LANG=C chroot $FILESYSTEM_ROOT mkimage -A arm64 -O linux -T ramdisk -C gzip -d /boot/$INITRD_FILE /boot/u${INITRD_FILE}
## Overwriting the initrd image with uInitrd
sudo LANG=C chroot $FILESYSTEM_ROOT mv /boot/u${INITRD_FILE} /boot/$INITRD_FILE
else
sudo cp -v $PLATFORM_DIR/${sonic_asic_platform}-${CONFIGURED_ARCH}/sonic_fit.its $FILESYSTEM_ROOT/boot/
sudo LANG=C chroot $FILESYSTEM_ROOT mkimage -f /boot/sonic_fit.its /boot/sonic_${CONFIGURED_ARCH}.fit
fi
sudo cp -v $PLATFORM_DIR/${sonic_asic_platform}-${CONFIGURED_ARCH}/sonic_fit.its $FILESYSTEM_ROOT/boot/
sudo LANG=C chroot $FILESYSTEM_ROOT mkimage -f /boot/sonic_fit.its /boot/sonic_${CONFIGURED_ARCH}.fit
fi
fi
@ -818,7 +755,8 @@ sudo LANG=C chroot $FILESYSTEM_ROOT fuser -vm /proc
## Kill the processes
sudo LANG=C chroot $FILESYSTEM_ROOT fuser -km /proc || true
## Wait fuser fully kill the processes
sudo timeout 15s bash -c 'until LANG=C chroot $0 umount /proc; do sleep 1; done' $FILESYSTEM_ROOT || true
sleep 15
sudo LANG=C chroot $FILESYSTEM_ROOT umount /proc || true
## Prepare empty directory to trigger mount move in initramfs-tools/mount_loop_root, implemented by patching
sudo mkdir $FILESYSTEM_ROOT/host
@ -834,32 +772,14 @@ if [[ "$CHANGE_DEFAULT_PASSWORD" == "y" ]]; then
fi
## Compress most file system into squashfs file
sudo rm -f $INSTALLER_PAYLOAD $FILESYSTEM_SQUASHFS
sudo rm -f $ONIE_INSTALLER_PAYLOAD $FILESYSTEM_SQUASHFS
## Output the file system total size for diag purpose
## Note: -x to skip directories on different file systems, such as /proc
sudo du -hsx $FILESYSTEM_ROOT
sudo mkdir -p $FILESYSTEM_ROOT/var/lib/docker
## Clear DNS configuration inherited from the build server
sudo rm -f $FILESYSTEM_ROOT/etc/resolvconf/resolv.conf.d/original
sudo cp files/image_config/resolv-config/resolv.conf.head $FILESYSTEM_ROOT/etc/resolvconf/resolv.conf.d/head
## Optimize filesystem size
if [ "$BUILD_REDUCE_IMAGE_SIZE" = "y" ]; then
sudo scripts/build-optimize-fs-size.py "$FILESYSTEM_ROOT" \
--image-type "$IMAGE_TYPE" \
--hardlinks var/lib/docker \
--hardlinks usr/share/sonic/device \
--remove-docs \
--remove-mans \
--remove-licenses
fi
sudo cp files/image_config/resolv-config/resolv.conf $FILESYSTEM_ROOT/etc/resolv.conf
sudo mksquashfs $FILESYSTEM_ROOT $FILESYSTEM_SQUASHFS -comp zstd -b 1M -e boot -e var/lib/docker -e $PLATFORM_DIR
## Reduce /boot permission
sudo chmod -R go-wx $FILESYSTEM_ROOT/boot
# Ensure admin gid is 1000
gid_user=$(sudo LANG=C chroot $FILESYSTEM_ROOT id -g $USERNAME) || gid_user="none"
if [ "${gid_user}" != "1000" ]; then
@ -879,5 +799,5 @@ fi
pushd $FILESYSTEM_ROOT && sudo tar -I $GZ_COMPRESS_PROGRAM -cf $OLDPWD/$FILESYSTEM_DOCKERFS -C ${DOCKERFS_PATH}var/lib/docker .; popd
## Compress together with /boot, /var/lib/docker and $PLATFORM_DIR as an installer payload zip file
pushd $FILESYSTEM_ROOT && sudo tar -I $GZ_COMPRESS_PROGRAM -cf platform.tar.gz -C $PLATFORM_DIR . && sudo zip -n .gz $OLDPWD/$INSTALLER_PAYLOAD -r boot/ platform.tar.gz; popd
sudo zip -g -n .squashfs:.gz $INSTALLER_PAYLOAD $FILESYSTEM_SQUASHFS $FILESYSTEM_DOCKERFS
pushd $FILESYSTEM_ROOT && sudo tar -I $GZ_COMPRESS_PROGRAM -cf platform.tar.gz -C $PLATFORM_DIR . && sudo zip -n .gz $OLDPWD/$ONIE_INSTALLER_PAYLOAD -r boot/ platform.tar.gz; popd
sudo zip -g -n .squashfs:.gz $ONIE_INSTALLER_PAYLOAD $FILESYSTEM_SQUASHFS $FILESYSTEM_DOCKERFS

View File

@ -18,8 +18,8 @@ fi
echo "Error: Invalid ONIE_IMAGE_PART_SIZE in onie image config file"
exit 1
}
[ -n "$INSTALLER_PAYLOAD" ] || {
echo "Error: Invalid INSTALLER_PAYLOAD in onie image config file"
[ -n "$ONIE_INSTALLER_PAYLOAD" ] || {
echo "Error: Invalid ONIE_INSTALLER_PAYLOAD in onie image config file"
exit 1
}
@ -86,7 +86,7 @@ generate_onie_installer_image()
## Note: Don't leave blank between lines. It is single line command.
./onie-mk-demo.sh $CONFIGURED_ARCH $TARGET_MACHINE $TARGET_PLATFORM-$TARGET_MACHINE-$ONIEIMAGE_VERSION \
installer platform/$TARGET_MACHINE/platform.conf $output_file OS $IMAGE_VERSION $ONIE_IMAGE_PART_SIZE \
$INSTALLER_PAYLOAD $SECURE_UPGRADE_SIGNING_CERT $SECURE_UPGRADE_DEV_SIGNING_KEY
$ONIE_INSTALLER_PAYLOAD $SECURE_UPGRADE_SIGNING_CERT $SECURE_UPGRADE_DEV_SIGNING_KEY
}
# Generate asic-specific device list
@ -139,11 +139,7 @@ elif [ "$IMAGE_TYPE" = "raw" ]; then
## Run the installer
## The 'build' install mode of the installer is used to generate this dump.
sudo chmod a+x $tmp_output_onie_image
sudo ./$tmp_output_onie_image || {
## Failure during 'build' install mode of the installer results in an incomplete raw image.
## Delete the incomplete raw image.
sudo rm -f $OUTPUT_RAW_IMAGE
}
sudo ./$tmp_output_onie_image
rm $tmp_output_onie_image
[ -r $OUTPUT_RAW_IMAGE ] || {
@ -151,7 +147,15 @@ elif [ "$IMAGE_TYPE" = "raw" ]; then
exit 1
}
echo "The raw image is in $OUTPUT_RAW_IMAGE"
$GZ_COMPRESS_PROGRAM $OUTPUT_RAW_IMAGE
[ -r $OUTPUT_RAW_IMAGE.gz ] || {
echo "Error : $GZ_COMPRESS_PROGRAM $OUTPUT_RAW_IMAGE failed!"
exit 1
}
mv $OUTPUT_RAW_IMAGE.gz $OUTPUT_RAW_IMAGE
echo "The compressed raw image is in $OUTPUT_RAW_IMAGE"
elif [ "$IMAGE_TYPE" = "kvm" ]; then
@ -175,7 +179,7 @@ elif [ "$IMAGE_TYPE" = "aboot" ]; then
sudo rm -f $OUTPUT_ABOOT_IMAGE
sudo rm -f $ABOOT_BOOT_IMAGE
## Add main payload
cp $INSTALLER_PAYLOAD $OUTPUT_ABOOT_IMAGE
cp $ONIE_INSTALLER_PAYLOAD $OUTPUT_ABOOT_IMAGE
## Add Aboot boot0 file
j2 -f env files/Aboot/boot0.j2 ./onie-image.conf > files/Aboot/boot0
sed -i -e "s/%%IMAGE_VERSION%%/$IMAGE_VERSION/g" files/Aboot/boot0
@ -213,38 +217,6 @@ elif [ "$IMAGE_TYPE" = "aboot" ]; then
[ -f "$CA_CERT" ] && cp "$CA_CERT" "$TARGET_CA_CERT"
./scripts/sign_image.sh -i "$OUTPUT_ABOOT_IMAGE" -k "$SIGNING_KEY" -c "$SIGNING_CERT" -a "$TARGET_CA_CERT"
fi
elif [ "$IMAGE_TYPE" = "dsc" ]; then
echo "Build DSC installer"
dsc_installer_dir=files/dsc
dsc_installer=$dsc_installer_dir/install_debian
dsc_installer_manifest=$dsc_installer_dir/MANIFEST
mkdir -p `dirname $OUTPUT_DSC_IMAGE`
sudo rm -f $OUTPUT_DSC_IMAGE
source ./onie-image.conf
j2 $dsc_installer.j2 > $dsc_installer
export installer_sha=$(sha512sum "$dsc_installer" | awk '{print $1}')
export build_date=$(date -u)
export build_user=$(id -un)
export installer_payload_sha=$(sha512sum "$INSTALLER_PAYLOAD" | awk '{print $1}')
j2 $dsc_installer_manifest.j2 > $dsc_installer_manifest
cp $INSTALLER_PAYLOAD $dsc_installer_dir
tar cf $OUTPUT_DSC_IMAGE -C files/dsc $(basename $dsc_installer_manifest) $INSTALLER_PAYLOAD $(basename $dsc_installer)
echo "Build ONIE installer"
mkdir -p `dirname $OUTPUT_ONIE_IMAGE`
sudo rm -f $OUTPUT_ONIE_IMAGE
generate_device_list "./installer/platforms_asic"
generate_onie_installer_image
else
echo "Error: Non supported image type $IMAGE_TYPE"
exit 1

View File

@ -0,0 +1,132 @@
{
"interfaces": {
"Ethernet0": {
"default_brkout_mode": "3x10G(3)+1x1G(1)",
"port_type": "RJ45"
},
"Ethernet4": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet8": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet12": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet16": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet20": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet24": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet28": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet32": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet36": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet40": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet44": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet48": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet52": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet56": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet60": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet64": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet68": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet72": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet76": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet80": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet84": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet88": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet92": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet96": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet100": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet104": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet108": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet112": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet116": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet120": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
},
"Ethernet124": {
"default_brkout_mode": "1x40G[10G]",
"port_type": "QSFP+"
}
}
}

View File

@ -1,36 +1,36 @@
# name lanes alias index speed
Ethernet0 9 Ethernet1 1 10000
Ethernet1 10 Ethernet2 2 10000
Ethernet2 11 Ethernet3 3 10000
Ethernet3 12 Ethernet4 4 1000
Ethernet4 13,14,15,16 Ethernet6/1 6 40000
Ethernet8 17,18,19,20 Ethernet7/1 7 40000
Ethernet12 21,22,23,24 Ethernet8/1 8 40000
Ethernet16 29,30,31,32 Ethernet9/1 9 40000
Ethernet20 25,26,27,28 Ethernet10/1 10 40000
Ethernet24 33,34,35,36 Ethernet11/1 11 40000
Ethernet28 37,38,39,40 Ethernet12/1 12 40000
Ethernet32 45,46,47,48 Ethernet13/1 13 40000
Ethernet36 41,42,43,44 Ethernet14/1 14 40000
Ethernet40 49,50,51,52 Ethernet15/1 15 40000
Ethernet44 53,54,55,56 Ethernet16/1 16 40000
Ethernet48 69,70,71,72 Ethernet17/1 17 40000
Ethernet52 65,66,67,68 Ethernet18/1 18 40000
Ethernet56 73,74,75,76 Ethernet19/1 19 40000
Ethernet60 77,78,79,80 Ethernet20/1 20 40000
Ethernet64 93,94,95,96 Ethernet21/1 21 40000
Ethernet68 89,90,91,92 Ethernet22/1 22 40000
Ethernet72 97,98,99,100 Ethernet23/1 23 40000
Ethernet76 101,102,103,104 Ethernet24/1 24 40000
Ethernet80 109,110,111,112 Ethernet25/1 25 40000
Ethernet84 105,106,107,108 Ethernet26/1 26 40000
Ethernet88 121,122,123,124 Ethernet27/1 27 40000
Ethernet92 125,126,127,128 Ethernet28/1 28 40000
Ethernet96 61,62,63,64 Ethernet29 29 40000
Ethernet100 57,58,59,60 Ethernet30 30 40000
Ethernet104 81,82,83,84 Ethernet31 31 40000
Ethernet108 85,86,87,88 Ethernet32 32 40000
Ethernet112 117,118,119,120 Ethernet33 33 40000
Ethernet116 113,114,115,116 Ethernet34 34 40000
Ethernet120 1,2,3,4 Ethernet35 35 40000
Ethernet124 5,6,7,8 Ethernet36 36 40000
# name lanes alias index
Ethernet0 9 Ethernet1 1
Ethernet1 10 Ethernet2 2
Ethernet2 11 Ethernet3 3
Ethernet3 12 Ethernet4 4
Ethernet4 13,14,15,16 Ethernet6/1 6
Ethernet8 17,18,19,20 Ethernet7/1 7
Ethernet12 21,22,23,24 Ethernet8/1 8
Ethernet16 29,30,31,32 Ethernet9/1 9
Ethernet20 25,26,27,28 Ethernet10/1 10
Ethernet24 33,34,35,36 Ethernet11/1 11
Ethernet28 37,38,39,40 Ethernet12/1 12
Ethernet32 45,46,47,48 Ethernet13/1 13
Ethernet36 41,42,43,44 Ethernet14/1 14
Ethernet40 49,50,51,52 Ethernet15/1 15
Ethernet44 53,54,55,56 Ethernet16/1 16
Ethernet48 69,70,71,72 Ethernet17/1 17
Ethernet52 65,66,67,68 Ethernet18/1 18
Ethernet56 73,74,75,76 Ethernet19/1 19
Ethernet60 77,78,79,80 Ethernet20/1 20
Ethernet64 93,94,95,96 Ethernet21/1 21
Ethernet68 89,90,91,92 Ethernet22/1 22
Ethernet72 97,98,99,100 Ethernet23/1 23
Ethernet76 101,102,103,104 Ethernet24/1 24
Ethernet80 109,110,111,112 Ethernet25/1 25
Ethernet84 105,106,107,108 Ethernet26/1 26
Ethernet88 121,122,123,124 Ethernet27/1 27
Ethernet92 125,126,127,128 Ethernet28/1 28
Ethernet96 61,62,63,64 Ethernet29 29
Ethernet100 57,58,59,60 Ethernet30 30
Ethernet104 81,82,83,84 Ethernet31 31
Ethernet108 85,86,87,88 Ethernet32 32
Ethernet112 117,118,119,120 Ethernet33 33
Ethernet116 113,114,115,116 Ethernet34 34
Ethernet120 1,2,3,4 Ethernet35 35
Ethernet124 5,6,7,8 Ethernet36 36

View File

@ -152,6 +152,11 @@
id: '1466'
name: 'Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh)
Data Fabric: Device 18h; Function 6'
- bus: '00'
dev: '18'
fn: '7'
id: '0001'
name: 'Host bridge: Arastra Inc. Device 0001'
- bus: '01'
dev: '00'
fn: '0'

View File

@ -152,6 +152,11 @@
id: '1466'
name: 'Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh)
Data Fabric: Device 18h; Function 6'
- bus: '00'
dev: '18'
fn: '7'
id: '0001'
name: 'Host bridge: Arastra Inc. Device 0001'
- bus: '01'
dev: '00'
fn: '0'

View File

@ -64,6 +64,11 @@
id: '1578'
name: 'Encryption controller: Advanced Micro Devices, Inc. [AMD] Carrizo Platform
Security Processor'
- bus: '00'
dev: 09
fn: '0'
id: '0001'
name: 'Host bridge: Arastra Inc. Device 0001'
- bus: '00'
dev: 09
fn: '2'

View File

@ -64,6 +64,11 @@
id: '1578'
name: 'Encryption controller: Advanced Micro Devices, Inc. [AMD] Carrizo Platform
Security Processor'
- bus: '00'
dev: 09
fn: '0'
id: '0001'
name: 'Host bridge: Arastra Inc. Device 0001'
- bus: '00'
dev: 09
fn: '2'

View File

@ -449,4 +449,3 @@ serdes_preemphasis_109=0x145c00
mmu_init_config="MSFT-TH-Tier1"
phy_an_lt_msft=1
phy_unlos_msft=1

View File

@ -16,8 +16,6 @@ miim_intr_enable.0=0
module_64ports.0=1
multicast_l2_range.0=511
oversubscribe_mode=1
sai_tunnel_global_sip_mask_enable=1
bcm_tunnel_term_compatible_mode=1
parity_correction=1
parity_enable=1
pbmp_xport_xe.0=0x3ffffffffffffffffffffffffffffffffffffffe

View File

@ -186,6 +186,11 @@
id: 6f37
name: 'Performance counters: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon
D R3 QPI Link 0/1 (rev 03)'
- bus: ff
dev: 0b
fn: '3'
id: '0001'
name: 'System peripheral: Arastra Inc. Device 0001 (rev 03)'
- bus: ff
dev: 0c
fn: '0'

View File

@ -16,8 +16,6 @@ miim_intr_enable.0=0
module_64ports.0=1
multicast_l2_range.0=511
oversubscribe_mode=1
sai_tunnel_global_sip_mask_enable=1
bcm_tunnel_term_compatible_mode=1
parity_correction=1
parity_enable=1
pbmp_xport_xe.0=0x3ffffffffffffffffffffffffffffffffffffffe

View File

@ -1 +0,0 @@
../x86_64-arista_common/pcie.yaml

View File

@ -255,14 +255,6 @@
"Ethernet504": {
"default_brkout_mode": "1x400G[200G,100G,50G,40G,25G,10G]",
"fec": "rs"
},
"Ethernet512": {
"default_brkout_mode": "1x10G",
"fec": "none"
},
"Ethernet513": {
"default_brkout_mode": "1x10G",
"fec": "none"
}
}
}

View File

@ -63,5 +63,3 @@ Ethernet480 237,238,239,240,241,242,243,244 Ethernet61/1 61 400000 rs
Ethernet488 229,230,231,232,233,234,235,236 Ethernet62/1 62 400000 rs
Ethernet496 249,250,251,252,253,254,255,256 Ethernet63/1 63 400000 rs
Ethernet504 245,246,247,248,249,250,251,252 Ethernet64/1 64 400000 rs
Ethernet512 258 Ethernet65 65 10000 none
Ethernet513 257 Ethernet66 66 10000 none

View File

@ -34,7 +34,7 @@ bcm_device:
sai_field_group_auto_prioritize: 1
#l3_intf_vlan_split_egress for MTU at L3IF
l3_intf_vlan_split_egress : 1
bcm_tunnel_term_compatible_mode: 1
---
device:
0:
@ -1073,14 +1073,6 @@ device:
PORT_ID: 258
:
PC_PHYS_PORT_ID: 253
?
PORT_ID: 152
:
PC_PHYS_PORT_ID: 257
?
PORT_ID: 50
:
PC_PHYS_PORT_ID: 258
...
---
device:
@ -1093,13 +1085,6 @@ device:
ENABLE: 1
SPEED: 10000
NUM_LANES: 1
?
PORT_ID: [[50, 50], [152, 152]]
:
ENABLE: 1
MAX_FRAME_SIZE: 9416
SPEED: 10000
NUM_LANES: 1
?
PORT_ID: [[1, 4],
[17, 20],
@ -1118,7 +1103,7 @@ device:
[238, 241],
[255, 258]]
:
ENABLE: 0
ENABLE: 1
SPEED: 400000
NUM_LANES: 8
FEC_MODE: PC_FEC_RS544_2XN

View File

@ -1 +0,0 @@
../x86_64-arista_common/pcie.yaml

View File

@ -49,52 +49,52 @@
],
"thermals": [
{
"name": "Board sensor",
"controllable": false
"name": "Cpu temp sensor"
},
{
"name": "TH4 exhaust temp sensor",
"controllable": false
"name": "CPU board temp sensor"
},
{
"name": "Inlet temp sensor",
"controllable": false
"name": "Back-panel temp sensor"
},
{
"name": "CPU board temp sensor",
"controllable": false
"name": "Board sensor"
},
{
"name": "Back panel temp sensor",
"controllable": false
"name": "Switch board middle sensor"
},
{
"name": "Front panel temp sensor",
"controllable": false
"name": "Switch board left sensor"
},
{
"name": "Power supply 1 hotspot sensor",
"controllable": false
"name": "Front-panel temp sensor"
},
{
"name": "Power supply 1 inlet temp sensor",
"controllable": false
"name": "Switch chip diode 1 sensor"
},
{
"name": "Power supply 1 exhaust temp sensor",
"controllable": false
"name": "Switch chip diode 2 sensor"
},
{
"name": "Power supply 2 hotspot sensor",
"controllable": false
"name": "Front-panel temp sensor"
},
{
"name": "Power supply 2 inlet temp sensor",
"controllable": false
"name": "Power supply 1 inlet temp sensor"
},
{
"name": "Power supply 2 exhaust temp sensor",
"controllable": false
"name": "Power supply 1 secondary hotspot sensor"
},
{
"name": "Power supply 1 primary hotspot sensor"
},
{
"name": "Power supply 2 inlet temp sensor"
},
{
"name": "Power supply 2 secondary hotspot sensor"
},
{
"name": "Power supply 2 primary hotspot sensor"
}
],
"sfps": [
@ -2154,24 +2154,6 @@
"Ethernet64/8"
]
}
},
"Ethernet512": {
"index": "65",
"lanes": "258",
"breakout_modes": {
"1x10G": [
"Ethernet65"
]
}
},
"Ethernet513": {
"index": "66",
"lanes": "257",
"breakout_modes": {
"1x10G": [
"Ethernet66"
]
}
}
}
}

View File

@ -20,8 +20,6 @@ miim_intr_enable.0=0
module_64ports.0=1
multicast_l2_range.0=511
oversubscribe_mode=1
sai_tunnel_global_sip_mask_enable=1
bcm_tunnel_term_compatible_mode=1
parity_correction=1
parity_enable=1
pbmp_xport_xe.0=0x3ffffffffffffffffffffffffffffffffffffffe

View File

@ -20,8 +20,6 @@ miim_intr_enable.0=0
module_64ports.0=1
multicast_l2_range.0=511
oversubscribe_mode=1
sai_tunnel_global_sip_mask_enable=1
bcm_tunnel_term_compatible_mode=1
parity_correction=1
parity_enable=1
pbmp_xport_xe.0=0x3ffffffffffffffffffffffffffffffffffffffe

View File

@ -186,6 +186,11 @@
id: 6f37
name: 'Performance counters: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon
D R3 QPI Link 0/1 (rev 03)'
- bus: ff
dev: 0b
fn: '3'
id: '0001'
name: 'System peripheral: Arastra Inc. Device 0001 (rev 03)'
- bus: ff
dev: 0c
fn: '0'

View File

@ -16,8 +16,6 @@ miim_intr_enable.0=0
module_64ports.0=1
multicast_l2_range.0=511
oversubscribe_mode=1
sai_tunnel_global_sip_mask_enable=1
bcm_tunnel_term_compatible_mode=1
parity_correction=1
parity_enable=1
pbmp_xport_xe.0=0x3ffffffffffffffffffffffffffffffffffffffe

View File

@ -4,6 +4,12 @@
<phy_addr>0</phy_addr>
<mode>retimer</mode>
<topology>1</topology>
<tx-taps>
<PAM4>2,-8,17,0,0</PAM4>
<NRZ>0,-8,17,0,0</NRZ>
</tx-taps>
<tx-taps-scale>0,0,1,0,0</tx-taps-scale>
<lane id="0" tx-polarity="0" rx-polarity="0" />
<lane id="1" tx-polarity="0" rx-polarity="0" />
<lane id="2" tx-polarity="0" rx-polarity="0" />
@ -20,23 +26,4 @@
<lane id="13" tx-polarity="0" rx-polarity="0" />
<lane id="14" tx-polarity="0" rx-polarity="0" />
<lane id="15" tx-polarity="0" rx-polarity="0" />
<PAM4>
<lane id="0" tx-taps="0,0,-8,117,-2,0,0"/>
<lane id="1" tx-taps="0,0,-8,117,-2,0,0"/>
<lane id="2" tx-taps="0,0,-8,117,-2,0,0"/>
<lane id="3" tx-taps="0,0,-8,117,-2,0,0"/>
<lane id="4" tx-taps="0,0,-8,117,-2,0,0"/>
<lane id="5" tx-taps="0,0,-8,117,-2,0,0"/>
<lane id="6" tx-taps="0,0,-8,117,-2,0,0"/>
<lane id="7" tx-taps="0,0,-8,117,-2,0,0"/>
<lane id="8" tx-taps="0,10,-22,93,-2,0,0"/>
<lane id="9" tx-taps="0,10,-22,93,-2,0,0"/>
<lane id="10" tx-taps="0,10,-22,93,-2,0,0"/>
<lane id="11" tx-taps="0,10,-22,93,-2,0,0"/>
<lane id="12" tx-taps="0,10,-22,93,-2,0,0"/>
<lane id="13" tx-taps="0,10,-22,93,-2,0,0"/>
<lane id="14" tx-taps="0,10,-22,93,-2,0,0"/>
<lane id="15" tx-taps="0,10,-22,93,-2,0,0"/>
</PAM4>
</root>

View File

@ -1 +0,0 @@
../x86_64-arista_common/pcie.yaml

View File

@ -7,15 +7,20 @@ bus "i2c-23" "SCD 0000:01:00.0 SMBus master 1 bus 4"
bus "i2c-24" "SCD 0000:01:00.0 SMBus master 1 bus 5"
bus "i2c-107" "SCD 0000:00:18.7 SMBus master 0 bus 0"
chip "tmp464-i2c-19-48"
chip "max6581-i2c-19-4d"
label temp1 "Board sensor"
label temp2 "TH4 exhaust temp sensor"
label temp3 "Inlet temp sensor"
label temp3 "Left edge PCB rear temp sensor"
label temp4 "Inlet temp sensor"
ignore temp5
ignore temp6
label temp7 "Diode temp sensor 1"
label temp8 "Diode temp sensor 2"
chip "dps800-i2c-22-58"
label temp1 "Power supply 1 hotspot sensor"
label temp2 "Power supply 1 inlet temp sensor"
ignore temp3 "Power supply 1 exhaust temp sensor"
label temp3 "Power supply 1 exhaust temp sensor"
chip "dps800-i2c-23-58"
label temp1 "Power supply 2 hotspot sensor"

View File

@ -186,6 +186,11 @@
id: 6f37
name: 'Performance counters: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon
D R3 QPI Link 0/1 (rev 03)'
- bus: ff
dev: 0b
fn: '3'
id: '0001'
name: 'System peripheral: Arastra Inc. Device 0001 (rev 03)'
- bus: ff
dev: 0c
fn: '0'

View File

@ -174,6 +174,11 @@
id: 6f37
name: 'Performance counters: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon
D R3 QPI Link 0/1 (rev 03)'
- bus: ff
dev: 0b
fn: '3'
id: '0001'
name: 'System peripheral: Arastra Inc. Device 0001 (rev 03)'
- bus: ff
dev: 0c
fn: '0'

View File

@ -90,6 +90,11 @@
id: 15ee
name: 'Host bridge: Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function
6'
- bus: '00'
dev: '18'
fn: '7'
id: '0001'
name: 'Host bridge: Arista Networks, Inc. Device 0001'
- bus: '01'
dev: '00'
fn: '0'

View File

@ -14,7 +14,8 @@
{%- set switch_subtype = DEVICE_METADATA['localhost']['subtype'] -%}
{%- if 'dualtor' in switch_subtype.lower() %}
{%- set IPinIP_sock =
'sai_tunnel_underlay_route_mode=1
'sai_tunnel_support=1
sai_tunnel_underlay_route_mode=1
host_as_route_disable=1
l3_ecmp_levels=2' -%}
{%- set map_prio = 'sai_remap_prio_on_tnl_egress=1' -%}
@ -1048,6 +1049,5 @@ serdes_preemphasis_116=0x103706
serdes_preemphasis_117=0x133c06
{{ mmu_sock }}
sai_tunnel_support=1
{{ IPinIP_sock }}
phy_an_lt_msft=1

View File

@ -6,7 +6,8 @@
{%- set switch_subtype = DEVICE_METADATA['localhost']['subtype'] -%}
{%- if 'dualtor' in switch_subtype.lower() %}
{%- set IPinIP_sock =
'sai_tunnel_underlay_route_mode=1
'sai_tunnel_support=1
sai_tunnel_underlay_route_mode=1
host_as_route_disable=1
l3_ecmp_levels=2' -%}
{%- set map_prio = 'sai_remap_prio_on_tnl_egress=1' -%}
@ -955,6 +956,5 @@ serdes_preemphasis_130=0x580c
serdes_preemphasis_131=0x580c
mmu_init_config="MSFT-TH2-Tier0"
sai_tunnel_support=1
{{ IPinIP_sock }}
phy_an_lt_msft=1

View File

@ -6,7 +6,8 @@
{%- set switch_subtype = DEVICE_METADATA['localhost']['subtype'] -%}
{%- if 'dualtor' in switch_subtype.lower() %}
{%- set IPinIP_sock =
'sai_tunnel_underlay_route_mode=1
'sai_tunnel_support=1
sai_tunnel_underlay_route_mode=1
host_as_route_disable=1
l3_ecmp_levels=2' -%}
{%- set map_prio = 'sai_remap_prio_on_tnl_egress=1' -%}
@ -959,6 +960,5 @@ serdes_preemphasis_130=0x580c
serdes_preemphasis_131=0x580c
mmu_init_config="MSFT-TH2-Tier0"
sai_tunnel_support=1
{{ IPinIP_sock }}
phy_an_lt_msft=1

View File

@ -14,7 +14,8 @@
{%- set switch_subtype = DEVICE_METADATA['localhost']['subtype'] -%}
{%- if 'dualtor' in switch_subtype.lower() %}
{%- set IPinIP_sock =
'sai_tunnel_underlay_route_mode=1
'sai_tunnel_support=1
sai_tunnel_underlay_route_mode=1
host_as_route_disable=1
l3_ecmp_levels=2' -%}
{%- set map_prio = 'sai_remap_prio_on_tnl_egress=1' -%}
@ -1047,6 +1048,5 @@ serdes_preemphasis_116=0x105004
serdes_preemphasis_117=0x105004
{{ mmu_sock }}
sai_tunnel_support=1
{{ IPinIP_sock }}
phy_an_lt_msft=1

View File

@ -173,6 +173,11 @@
id: 6f37
name: 'Performance counters: Intel Corporation Xeon E7 v4/Xeon E5 v4/Xeon E3 v4/Xeon
D R3 QPI Link 0/1 (rev 03)'
- bus: ff
dev: 0b
fn: '3'
id: '0001'
name: 'System peripheral: Arastra Inc. Device 0001 (rev 03)'
- bus: ff
dev: 0c
fn: '0'

View File

@ -64,6 +64,11 @@
id: '1578'
name: 'Encryption controller: Advanced Micro Devices, Inc. [AMD] Carrizo Platform
Security Processor'
- bus: '00'
dev: 09
fn: '0'
id: '0001'
name: 'Host bridge: Arista Networks, Inc. Device 0001'
- bus: '00'
dev: 09
fn: '2'

View File

@ -1,2 +1 @@
SYNCD_SHM_SIZE=1gb
usemsi=1

View File

@ -1 +0,0 @@
../x86_64-arista_common/pcie.yaml

View File

@ -860,5 +860,3 @@ dma_desc_aggregator_timeout_usec.BCM8869X=1000
dma_desc_aggregator_enable_specific_MDB_LPM.BCM8869X=1
dma_desc_aggregator_enable_specific_MDB_FEC.BCM8869X=1
sai_pfc_dlr_init_capability=0
sai_default_cpu_tx_tc=7
sai_disable_srcmacqedstmac_ctrl=1

View File

@ -152,6 +152,11 @@
id: '1466'
name: 'Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh)
Data Fabric: Device 18h; Function 6'
- bus: '00'
dev: '18'
fn: '7'
id: '0001'
name: 'Host bridge: Arista Networks, Inc. Device 0001'
- bus: '04'
dev: '00'
fn: '0'

View File

@ -1,3 +1,2 @@
SYNCD_SHM_SIZE=1gb
usemsi=1
dmasize=512M

View File

@ -152,6 +152,11 @@
id: '1466'
name: 'Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh)
Data Fabric: Device 18h; Function 6'
- bus: '00'
dev: '18'
fn: '7'
id: '0001'
name: 'Host bridge: Arista Networks, Inc. Device 0001'
- bus: '04'
dev: '00'
fn: '0'

View File

@ -1,3 +1,2 @@
SYNCD_SHM_SIZE=1gb
usemsi=1
dmasize=512M

View File

@ -1014,5 +1014,3 @@ appl_param_nof_ports_per_modid=64
xflow_macsec_secure_chan_to_num_secure_assoc_encrypt=2
xflow_macsec_secure_chan_to_num_secure_assoc_decrypt=2
sai_pfc_dlr_init_capability=0
sai_default_cpu_tx_tc=7
sai_disable_srcmacqedstmac_ctrl=1

View File

@ -453,17 +453,17 @@ fabric_connect_mode=FE
fabric_logical_port_base=512
# Fabric lane mapping
lane_to_serdes_map_fabric_lane0=rx0:tx3
lane_to_serdes_map_fabric_lane0=rx0:tx0
lane_to_serdes_map_fabric_lane1=rx1:tx1
lane_to_serdes_map_fabric_lane2=rx2:tx2
lane_to_serdes_map_fabric_lane3=rx3:tx0
lane_to_serdes_map_fabric_lane3=rx3:tx3
lane_to_serdes_map_fabric_lane4=rx4:tx4
lane_to_serdes_map_fabric_lane5=rx5:tx5
lane_to_serdes_map_fabric_lane6=rx6:tx6
lane_to_serdes_map_fabric_lane7=rx7:tx7
lane_to_serdes_map_fabric_lane8=rx8:tx9
lane_to_serdes_map_fabric_lane8=rx8:tx10
lane_to_serdes_map_fabric_lane9=rx9:tx11
lane_to_serdes_map_fabric_lane10=rx10:tx10
lane_to_serdes_map_fabric_lane10=rx10:tx9
lane_to_serdes_map_fabric_lane11=rx11:tx8
lane_to_serdes_map_fabric_lane12=rx12:tx12
lane_to_serdes_map_fabric_lane13=rx13:tx15
@ -475,15 +475,15 @@ lane_to_serdes_map_fabric_lane18=rx18:tx16
lane_to_serdes_map_fabric_lane19=rx19:tx19
lane_to_serdes_map_fabric_lane20=rx20:tx21
lane_to_serdes_map_fabric_lane21=rx21:tx23
lane_to_serdes_map_fabric_lane22=rx22:tx22
lane_to_serdes_map_fabric_lane23=rx23:tx20
lane_to_serdes_map_fabric_lane24=rx24:tx25
lane_to_serdes_map_fabric_lane22=rx22:tx20
lane_to_serdes_map_fabric_lane23=rx23:tx22
lane_to_serdes_map_fabric_lane24=rx24:tx26
lane_to_serdes_map_fabric_lane25=rx25:tx24
lane_to_serdes_map_fabric_lane26=rx26:tx27
lane_to_serdes_map_fabric_lane27=rx27:tx26
lane_to_serdes_map_fabric_lane26=rx26:tx25
lane_to_serdes_map_fabric_lane27=rx27:tx27
lane_to_serdes_map_fabric_lane28=rx28:tx31
lane_to_serdes_map_fabric_lane29=rx29:tx29
lane_to_serdes_map_fabric_lane30=rx30:tx30
lane_to_serdes_map_fabric_lane29=rx29:tx30
lane_to_serdes_map_fabric_lane30=rx30:tx29
lane_to_serdes_map_fabric_lane31=rx31:tx28
lane_to_serdes_map_fabric_lane32=rx32:tx32
lane_to_serdes_map_fabric_lane33=rx33:tx33
@ -522,17 +522,17 @@ lane_to_serdes_map_fabric_lane65=rx65:tx65
lane_to_serdes_map_fabric_lane66=rx66:tx66
lane_to_serdes_map_fabric_lane67=rx67:tx67
lane_to_serdes_map_fabric_lane68=rx68:tx68
lane_to_serdes_map_fabric_lane69=rx69:tx70
lane_to_serdes_map_fabric_lane70=rx70:tx71
lane_to_serdes_map_fabric_lane71=rx71:tx69
lane_to_serdes_map_fabric_lane69=rx69:tx69
lane_to_serdes_map_fabric_lane70=rx70:tx70
lane_to_serdes_map_fabric_lane71=rx71:tx71
lane_to_serdes_map_fabric_lane72=rx72:tx75
lane_to_serdes_map_fabric_lane73=rx73:tx74
lane_to_serdes_map_fabric_lane74=rx74:tx73
lane_to_serdes_map_fabric_lane75=rx75:tx72
lane_to_serdes_map_fabric_lane76=rx76:tx76
lane_to_serdes_map_fabric_lane76=rx76:tx79
lane_to_serdes_map_fabric_lane77=rx77:tx78
lane_to_serdes_map_fabric_lane78=rx78:tx77
lane_to_serdes_map_fabric_lane79=rx79:tx79
lane_to_serdes_map_fabric_lane79=rx79:tx76
lane_to_serdes_map_fabric_lane80=rx80:tx80
lane_to_serdes_map_fabric_lane81=rx81:tx81
lane_to_serdes_map_fabric_lane82=rx82:tx83
@ -543,11 +543,11 @@ lane_to_serdes_map_fabric_lane86=rx86:tx84
lane_to_serdes_map_fabric_lane87=rx87:tx87
lane_to_serdes_map_fabric_lane88=rx88:tx90
lane_to_serdes_map_fabric_lane89=rx89:tx88
lane_to_serdes_map_fabric_lane90=rx90:tx89
lane_to_serdes_map_fabric_lane91=rx91:tx91
lane_to_serdes_map_fabric_lane90=rx90:tx91
lane_to_serdes_map_fabric_lane91=rx91:tx89
lane_to_serdes_map_fabric_lane92=rx92:tx93
lane_to_serdes_map_fabric_lane93=rx93:tx94
lane_to_serdes_map_fabric_lane94=rx94:tx92
lane_to_serdes_map_fabric_lane93=rx93:tx92
lane_to_serdes_map_fabric_lane94=rx94:tx94
lane_to_serdes_map_fabric_lane95=rx95:tx95
lane_to_serdes_map_fabric_lane96=rx96:tx96
lane_to_serdes_map_fabric_lane97=rx97:tx97
@ -557,30 +557,30 @@ lane_to_serdes_map_fabric_lane100=rx100:tx100
lane_to_serdes_map_fabric_lane101=rx101:tx101
lane_to_serdes_map_fabric_lane102=rx102:tx102
lane_to_serdes_map_fabric_lane103=rx103:tx103
lane_to_serdes_map_fabric_lane104=rx104:tx104
lane_to_serdes_map_fabric_lane105=rx105:tx107
lane_to_serdes_map_fabric_lane106=rx106:tx106
lane_to_serdes_map_fabric_lane107=rx107:tx105
lane_to_serdes_map_fabric_lane108=rx108:tx108
lane_to_serdes_map_fabric_lane104=rx104:tx105
lane_to_serdes_map_fabric_lane105=rx105:tx106
lane_to_serdes_map_fabric_lane106=rx106:tx107
lane_to_serdes_map_fabric_lane107=rx107:tx104
lane_to_serdes_map_fabric_lane108=rx108:tx111
lane_to_serdes_map_fabric_lane109=rx109:tx109
lane_to_serdes_map_fabric_lane110=rx110:tx110
lane_to_serdes_map_fabric_lane111=rx111:tx111
lane_to_serdes_map_fabric_lane112=rx112:tx115
lane_to_serdes_map_fabric_lane113=rx113:tx114
lane_to_serdes_map_fabric_lane111=rx111:tx108
lane_to_serdes_map_fabric_lane112=rx112:tx114
lane_to_serdes_map_fabric_lane113=rx113:tx113
lane_to_serdes_map_fabric_lane114=rx114:tx112
lane_to_serdes_map_fabric_lane115=rx115:tx113
lane_to_serdes_map_fabric_lane116=rx116:tx118
lane_to_serdes_map_fabric_lane117=rx117:tx119
lane_to_serdes_map_fabric_lane118=rx118:tx116
lane_to_serdes_map_fabric_lane119=rx119:tx117
lane_to_serdes_map_fabric_lane120=rx120:tx121
lane_to_serdes_map_fabric_lane121=rx121:tx122
lane_to_serdes_map_fabric_lane122=rx122:tx120
lane_to_serdes_map_fabric_lane123=rx123:tx123
lane_to_serdes_map_fabric_lane124=rx124:tx124
lane_to_serdes_map_fabric_lane125=rx125:tx127
lane_to_serdes_map_fabric_lane126=rx126:tx126
lane_to_serdes_map_fabric_lane127=rx127:tx125
lane_to_serdes_map_fabric_lane115=rx115:tx115
lane_to_serdes_map_fabric_lane116=rx116:tx117
lane_to_serdes_map_fabric_lane117=rx117:tx116
lane_to_serdes_map_fabric_lane118=rx118:tx119
lane_to_serdes_map_fabric_lane119=rx119:tx118
lane_to_serdes_map_fabric_lane120=rx120:tx123
lane_to_serdes_map_fabric_lane121=rx121:tx120
lane_to_serdes_map_fabric_lane122=rx122:tx122
lane_to_serdes_map_fabric_lane123=rx123:tx121
lane_to_serdes_map_fabric_lane124=rx124:tx127
lane_to_serdes_map_fabric_lane125=rx125:tx125
lane_to_serdes_map_fabric_lane126=rx126:tx124
lane_to_serdes_map_fabric_lane127=rx127:tx126
lane_to_serdes_map_fabric_lane128=rx128:tx128
lane_to_serdes_map_fabric_lane129=rx129:tx129
lane_to_serdes_map_fabric_lane130=rx130:tx130
@ -593,12 +593,12 @@ lane_to_serdes_map_fabric_lane136=rx136:tx139
lane_to_serdes_map_fabric_lane137=rx137:tx138
lane_to_serdes_map_fabric_lane138=rx138:tx137
lane_to_serdes_map_fabric_lane139=rx139:tx136
lane_to_serdes_map_fabric_lane140=rx140:tx143
lane_to_serdes_map_fabric_lane140=rx140:tx140
lane_to_serdes_map_fabric_lane141=rx141:tx142
lane_to_serdes_map_fabric_lane142=rx142:tx141
lane_to_serdes_map_fabric_lane143=rx143:tx140
lane_to_serdes_map_fabric_lane144=rx144:tx145
lane_to_serdes_map_fabric_lane145=rx145:tx144
lane_to_serdes_map_fabric_lane143=rx143:tx143
lane_to_serdes_map_fabric_lane144=rx144:tx144
lane_to_serdes_map_fabric_lane145=rx145:tx145
lane_to_serdes_map_fabric_lane146=rx146:tx146
lane_to_serdes_map_fabric_lane147=rx147:tx147
lane_to_serdes_map_fabric_lane148=rx148:tx148
@ -614,8 +614,8 @@ lane_to_serdes_map_fabric_lane157=rx157:tx158
lane_to_serdes_map_fabric_lane158=rx158:tx157
lane_to_serdes_map_fabric_lane159=rx159:tx156
lane_to_serdes_map_fabric_lane160=rx160:tx160
lane_to_serdes_map_fabric_lane161=rx161:tx162
lane_to_serdes_map_fabric_lane162=rx162:tx161
lane_to_serdes_map_fabric_lane161=rx161:tx161
lane_to_serdes_map_fabric_lane162=rx162:tx162
lane_to_serdes_map_fabric_lane163=rx163:tx163
lane_to_serdes_map_fabric_lane164=rx164:tx164
lane_to_serdes_map_fabric_lane165=rx165:tx165
@ -639,11 +639,11 @@ lane_to_serdes_map_fabric_lane182=rx182:tx180
lane_to_serdes_map_fabric_lane183=rx183:tx183
lane_to_serdes_map_fabric_lane184=rx184:tx186
lane_to_serdes_map_fabric_lane185=rx185:tx184
lane_to_serdes_map_fabric_lane186=rx186:tx187
lane_to_serdes_map_fabric_lane187=rx187:tx185
lane_to_serdes_map_fabric_lane188=rx188:tx190
lane_to_serdes_map_fabric_lane186=rx186:tx185
lane_to_serdes_map_fabric_lane187=rx187:tx187
lane_to_serdes_map_fabric_lane188=rx188:tx188
lane_to_serdes_map_fabric_lane189=rx189:tx189
lane_to_serdes_map_fabric_lane190=rx190:tx188
lane_to_serdes_map_fabric_lane190=rx190:tx190
lane_to_serdes_map_fabric_lane191=rx191:tx191
#
@ -1014,5 +1014,3 @@ appl_param_nof_ports_per_modid=64
xflow_macsec_secure_chan_to_num_secure_assoc_encrypt=2
xflow_macsec_secure_chan_to_num_secure_assoc_decrypt=2
sai_pfc_dlr_init_capability=0
sai_default_cpu_tx_tc=7
sai_disable_srcmacqedstmac_ctrl=1

View File

@ -0,0 +1,41 @@
# name lanes alias index role speed asic_port_name coreId corePortId numVoq
Ethernet0 72,73,74,75 Ethernet1/1 1 Ext 100000 Eth0-ASIC0 1 1 8
Ethernet8 80,81,82,83 Ethernet2/1 2 Ext 100000 Eth8-ASIC0 1 2 8
Ethernet16 88,89,90,91 Ethernet3/1 3 Ext 100000 Eth16-ASIC0 1 3 8
Ethernet24 96,97,98,99 Ethernet4/1 4 Ext 100000 Eth24-ASIC0 1 4 8
Ethernet32 104,105,106,107 Ethernet5/1 5 Ext 100000 Eth32-ASIC0 1 5 8
Ethernet40 112,113,114,115 Ethernet6/1 6 Ext 100000 Eth40-ASIC0 1 6 8
Ethernet48 120,121,122,123 Ethernet7/1 7 Ext 100000 Eth48-ASIC0 1 7 8
Ethernet56 128,129,130,131 Ethernet8/1 8 Ext 100000 Eth56-ASIC0 1 8 8
Ethernet64 136,137,138,139 Ethernet9/1 9 Ext 100000 Eth64-ASIC0 1 9 8
Ethernet72 64,65,66,67 Ethernet10/1 10 Ext 100000 Eth72-ASIC0 0 10 8
Ethernet80 56,57,58,59 Ethernet11/1 11 Ext 100000 Eth80-ASIC0 0 11 8
Ethernet88 48,49,50,51 Ethernet12/1 12 Ext 100000 Eth88-ASIC0 0 12 8
Ethernet96 40,41,42,43 Ethernet13/1 13 Ext 100000 Eth96-ASIC0 0 13 8
Ethernet104 32,33,34,35 Ethernet14/1 14 Ext 100000 Eth104-ASIC0 0 14 8
Ethernet112 24,25,26,27 Ethernet15/1 15 Ext 100000 Eth112-ASIC0 0 15 8
Ethernet120 16,17,18,19 Ethernet16/1 16 Ext 100000 Eth120-ASIC0 0 16 8
Ethernet128 8,9,10,11 Ethernet17/1 17 Ext 100000 Eth128-ASIC0 0 17 8
Ethernet136 0,1,2,3 Ethernet18/1 18 Ext 100000 Eth136-ASIC0 0 18 8
Ethernet144 72,73,74,75 Ethernet19/1 19 Ext 100000 Eth0-ASIC1 1 1 8
Ethernet152 80,81,82,83 Ethernet20/1 20 Ext 100000 Eth8-ASIC1 1 2 8
Ethernet160 88,89,90,91 Ethernet21/1 21 Ext 100000 Eth16-ASIC1 1 3 8
Ethernet168 96,97,98,99 Ethernet22/1 22 Ext 100000 Eth24-ASIC1 1 4 8
Ethernet176 104,105,106,107 Ethernet23/1 23 Ext 100000 Eth32-ASIC1 1 5 8
Ethernet184 112,113,114,115 Ethernet24/1 24 Ext 100000 Eth40-ASIC1 1 6 8
Ethernet192 120,121,122,123 Ethernet25/1 25 Ext 100000 Eth48-ASIC1 1 7 8
Ethernet200 128,129,130,131 Ethernet26/1 26 Ext 100000 Eth56-ASIC1 1 8 8
Ethernet208 136,137,138,139 Ethernet27/1 27 Ext 100000 Eth64-ASIC1 1 9 8
Ethernet216 64,65,66,67 Ethernet28/1 28 Ext 100000 Eth72-ASIC1 0 10 8
Ethernet224 56,57,58,59 Ethernet29/1 29 Ext 100000 Eth80-ASIC1 0 11 8
Ethernet232 48,49,50,51 Ethernet30/1 30 Ext 100000 Eth88-ASIC1 0 12 8
Ethernet240 40,41,42,43 Ethernet31/1 31 Ext 100000 Eth96-ASIC1 0 13 8
Ethernet248 32,33,34,35 Ethernet32/1 32 Ext 100000 Eth104-ASIC1 0 14 8
Ethernet256 24,25,26,27 Ethernet33/1 33 Ext 100000 Eth112-ASIC1 0 15 8
Ethernet264 16,17,18,19 Ethernet34/1 34 Ext 100000 Eth120-ASIC1 0 16 8
Ethernet272 8,9,10,11 Ethernet35/1 35 Ext 100000 Eth128-ASIC1 0 17 8
Ethernet280 0,1,2,3 Ethernet36/1 36 Ext 100000 Eth136-ASIC1 0 18 8
Ethernet-Rec0 249 Recirc0/0 37 Rec 400000 Rcy0-ASIC0 0 49 8
Ethernet-IB0 250 Recirc0/1 38 Inb 400000 Rcy1-ASIC0 1 50 8
Ethernet-Rec1 249 Recirc0/0 39 Rec 400000 Rcy0-ASIC1 0 49 8
Ethernet-IB1 250 Recirc0/1 40 Inb 400000 Rcy1-ASIC1 1 50 8

View File

@ -1031,5 +1031,3 @@ serdes_tx_taps_36=nrz:-8:89:-29:0:0:0
xflow_macsec_secure_chan_to_num_secure_assoc_encrypt=2
xflow_macsec_secure_chan_to_num_secure_assoc_decrypt=4
sai_pfc_dlr_init_capability=0
sai_default_cpu_tx_tc=7
sai_disable_srcmacqedstmac_ctrl=1

View File

@ -471,17 +471,17 @@ fabric_connect_mode=FE
fabric_logical_port_base=512
# Fabric lane mapping
lane_to_serdes_map_fabric_lane0=rx0:tx3
lane_to_serdes_map_fabric_lane0=rx0:tx0
lane_to_serdes_map_fabric_lane1=rx1:tx1
lane_to_serdes_map_fabric_lane2=rx2:tx2
lane_to_serdes_map_fabric_lane3=rx3:tx0
lane_to_serdes_map_fabric_lane3=rx3:tx3
lane_to_serdes_map_fabric_lane4=rx4:tx4
lane_to_serdes_map_fabric_lane5=rx5:tx5
lane_to_serdes_map_fabric_lane6=rx6:tx6
lane_to_serdes_map_fabric_lane7=rx7:tx7
lane_to_serdes_map_fabric_lane8=rx8:tx9
lane_to_serdes_map_fabric_lane8=rx8:tx10
lane_to_serdes_map_fabric_lane9=rx9:tx11
lane_to_serdes_map_fabric_lane10=rx10:tx10
lane_to_serdes_map_fabric_lane10=rx10:tx9
lane_to_serdes_map_fabric_lane11=rx11:tx8
lane_to_serdes_map_fabric_lane12=rx12:tx12
lane_to_serdes_map_fabric_lane13=rx13:tx15
@ -493,15 +493,15 @@ lane_to_serdes_map_fabric_lane18=rx18:tx16
lane_to_serdes_map_fabric_lane19=rx19:tx19
lane_to_serdes_map_fabric_lane20=rx20:tx21
lane_to_serdes_map_fabric_lane21=rx21:tx23
lane_to_serdes_map_fabric_lane22=rx22:tx22
lane_to_serdes_map_fabric_lane23=rx23:tx20
lane_to_serdes_map_fabric_lane24=rx24:tx25
lane_to_serdes_map_fabric_lane22=rx22:tx20
lane_to_serdes_map_fabric_lane23=rx23:tx22
lane_to_serdes_map_fabric_lane24=rx24:tx26
lane_to_serdes_map_fabric_lane25=rx25:tx24
lane_to_serdes_map_fabric_lane26=rx26:tx27
lane_to_serdes_map_fabric_lane27=rx27:tx26
lane_to_serdes_map_fabric_lane26=rx26:tx25
lane_to_serdes_map_fabric_lane27=rx27:tx27
lane_to_serdes_map_fabric_lane28=rx28:tx31
lane_to_serdes_map_fabric_lane29=rx29:tx29
lane_to_serdes_map_fabric_lane30=rx30:tx30
lane_to_serdes_map_fabric_lane29=rx29:tx30
lane_to_serdes_map_fabric_lane30=rx30:tx29
lane_to_serdes_map_fabric_lane31=rx31:tx28
lane_to_serdes_map_fabric_lane32=rx32:tx32
lane_to_serdes_map_fabric_lane33=rx33:tx33
@ -540,17 +540,17 @@ lane_to_serdes_map_fabric_lane65=rx65:tx65
lane_to_serdes_map_fabric_lane66=rx66:tx66
lane_to_serdes_map_fabric_lane67=rx67:tx67
lane_to_serdes_map_fabric_lane68=rx68:tx68
lane_to_serdes_map_fabric_lane69=rx69:tx70
lane_to_serdes_map_fabric_lane70=rx70:tx71
lane_to_serdes_map_fabric_lane71=rx71:tx69
lane_to_serdes_map_fabric_lane69=rx69:tx69
lane_to_serdes_map_fabric_lane70=rx70:tx70
lane_to_serdes_map_fabric_lane71=rx71:tx71
lane_to_serdes_map_fabric_lane72=rx72:tx75
lane_to_serdes_map_fabric_lane73=rx73:tx74
lane_to_serdes_map_fabric_lane74=rx74:tx73
lane_to_serdes_map_fabric_lane75=rx75:tx72
lane_to_serdes_map_fabric_lane76=rx76:tx76
lane_to_serdes_map_fabric_lane76=rx76:tx79
lane_to_serdes_map_fabric_lane77=rx77:tx78
lane_to_serdes_map_fabric_lane78=rx78:tx77
lane_to_serdes_map_fabric_lane79=rx79:tx79
lane_to_serdes_map_fabric_lane79=rx79:tx76
lane_to_serdes_map_fabric_lane80=rx80:tx80
lane_to_serdes_map_fabric_lane81=rx81:tx81
lane_to_serdes_map_fabric_lane82=rx82:tx83
@ -561,11 +561,11 @@ lane_to_serdes_map_fabric_lane86=rx86:tx84
lane_to_serdes_map_fabric_lane87=rx87:tx87
lane_to_serdes_map_fabric_lane88=rx88:tx90
lane_to_serdes_map_fabric_lane89=rx89:tx88
lane_to_serdes_map_fabric_lane90=rx90:tx89
lane_to_serdes_map_fabric_lane91=rx91:tx91
lane_to_serdes_map_fabric_lane90=rx90:tx91
lane_to_serdes_map_fabric_lane91=rx91:tx89
lane_to_serdes_map_fabric_lane92=rx92:tx93
lane_to_serdes_map_fabric_lane93=rx93:tx94
lane_to_serdes_map_fabric_lane94=rx94:tx92
lane_to_serdes_map_fabric_lane93=rx93:tx92
lane_to_serdes_map_fabric_lane94=rx94:tx94
lane_to_serdes_map_fabric_lane95=rx95:tx95
lane_to_serdes_map_fabric_lane96=rx96:tx96
lane_to_serdes_map_fabric_lane97=rx97:tx97
@ -575,30 +575,30 @@ lane_to_serdes_map_fabric_lane100=rx100:tx100
lane_to_serdes_map_fabric_lane101=rx101:tx101
lane_to_serdes_map_fabric_lane102=rx102:tx102
lane_to_serdes_map_fabric_lane103=rx103:tx103
lane_to_serdes_map_fabric_lane104=rx104:tx104
lane_to_serdes_map_fabric_lane105=rx105:tx107
lane_to_serdes_map_fabric_lane106=rx106:tx106
lane_to_serdes_map_fabric_lane107=rx107:tx105
lane_to_serdes_map_fabric_lane108=rx108:tx108
lane_to_serdes_map_fabric_lane104=rx104:tx105
lane_to_serdes_map_fabric_lane105=rx105:tx106
lane_to_serdes_map_fabric_lane106=rx106:tx107
lane_to_serdes_map_fabric_lane107=rx107:tx104
lane_to_serdes_map_fabric_lane108=rx108:tx111
lane_to_serdes_map_fabric_lane109=rx109:tx109
lane_to_serdes_map_fabric_lane110=rx110:tx110
lane_to_serdes_map_fabric_lane111=rx111:tx111
lane_to_serdes_map_fabric_lane112=rx112:tx115
lane_to_serdes_map_fabric_lane113=rx113:tx114
lane_to_serdes_map_fabric_lane111=rx111:tx108
lane_to_serdes_map_fabric_lane112=rx112:tx114
lane_to_serdes_map_fabric_lane113=rx113:tx113
lane_to_serdes_map_fabric_lane114=rx114:tx112
lane_to_serdes_map_fabric_lane115=rx115:tx113
lane_to_serdes_map_fabric_lane116=rx116:tx118
lane_to_serdes_map_fabric_lane117=rx117:tx119
lane_to_serdes_map_fabric_lane118=rx118:tx116
lane_to_serdes_map_fabric_lane119=rx119:tx117
lane_to_serdes_map_fabric_lane120=rx120:tx121
lane_to_serdes_map_fabric_lane121=rx121:tx122
lane_to_serdes_map_fabric_lane122=rx122:tx120
lane_to_serdes_map_fabric_lane123=rx123:tx123
lane_to_serdes_map_fabric_lane124=rx124:tx124
lane_to_serdes_map_fabric_lane125=rx125:tx127
lane_to_serdes_map_fabric_lane126=rx126:tx126
lane_to_serdes_map_fabric_lane127=rx127:tx125
lane_to_serdes_map_fabric_lane115=rx115:tx115
lane_to_serdes_map_fabric_lane116=rx116:tx117
lane_to_serdes_map_fabric_lane117=rx117:tx116
lane_to_serdes_map_fabric_lane118=rx118:tx119
lane_to_serdes_map_fabric_lane119=rx119:tx118
lane_to_serdes_map_fabric_lane120=rx120:tx123
lane_to_serdes_map_fabric_lane121=rx121:tx120
lane_to_serdes_map_fabric_lane122=rx122:tx122
lane_to_serdes_map_fabric_lane123=rx123:tx121
lane_to_serdes_map_fabric_lane124=rx124:tx127
lane_to_serdes_map_fabric_lane125=rx125:tx125
lane_to_serdes_map_fabric_lane126=rx126:tx124
lane_to_serdes_map_fabric_lane127=rx127:tx126
lane_to_serdes_map_fabric_lane128=rx128:tx128
lane_to_serdes_map_fabric_lane129=rx129:tx129
lane_to_serdes_map_fabric_lane130=rx130:tx130
@ -611,12 +611,12 @@ lane_to_serdes_map_fabric_lane136=rx136:tx139
lane_to_serdes_map_fabric_lane137=rx137:tx138
lane_to_serdes_map_fabric_lane138=rx138:tx137
lane_to_serdes_map_fabric_lane139=rx139:tx136
lane_to_serdes_map_fabric_lane140=rx140:tx143
lane_to_serdes_map_fabric_lane140=rx140:tx140
lane_to_serdes_map_fabric_lane141=rx141:tx142
lane_to_serdes_map_fabric_lane142=rx142:tx141
lane_to_serdes_map_fabric_lane143=rx143:tx140
lane_to_serdes_map_fabric_lane144=rx144:tx145
lane_to_serdes_map_fabric_lane145=rx145:tx144
lane_to_serdes_map_fabric_lane143=rx143:tx143
lane_to_serdes_map_fabric_lane144=rx144:tx144
lane_to_serdes_map_fabric_lane145=rx145:tx145
lane_to_serdes_map_fabric_lane146=rx146:tx146
lane_to_serdes_map_fabric_lane147=rx147:tx147
lane_to_serdes_map_fabric_lane148=rx148:tx148
@ -632,8 +632,8 @@ lane_to_serdes_map_fabric_lane157=rx157:tx158
lane_to_serdes_map_fabric_lane158=rx158:tx157
lane_to_serdes_map_fabric_lane159=rx159:tx156
lane_to_serdes_map_fabric_lane160=rx160:tx160
lane_to_serdes_map_fabric_lane161=rx161:tx162
lane_to_serdes_map_fabric_lane162=rx162:tx161
lane_to_serdes_map_fabric_lane161=rx161:tx161
lane_to_serdes_map_fabric_lane162=rx162:tx162
lane_to_serdes_map_fabric_lane163=rx163:tx163
lane_to_serdes_map_fabric_lane164=rx164:tx164
lane_to_serdes_map_fabric_lane165=rx165:tx165
@ -657,11 +657,11 @@ lane_to_serdes_map_fabric_lane182=rx182:tx180
lane_to_serdes_map_fabric_lane183=rx183:tx183
lane_to_serdes_map_fabric_lane184=rx184:tx186
lane_to_serdes_map_fabric_lane185=rx185:tx184
lane_to_serdes_map_fabric_lane186=rx186:tx187
lane_to_serdes_map_fabric_lane187=rx187:tx185
lane_to_serdes_map_fabric_lane188=rx188:tx190
lane_to_serdes_map_fabric_lane186=rx186:tx185
lane_to_serdes_map_fabric_lane187=rx187:tx187
lane_to_serdes_map_fabric_lane188=rx188:tx188
lane_to_serdes_map_fabric_lane189=rx189:tx189
lane_to_serdes_map_fabric_lane190=rx190:tx188
lane_to_serdes_map_fabric_lane190=rx190:tx190
lane_to_serdes_map_fabric_lane191=rx191:tx191
#
@ -1031,5 +1031,3 @@ serdes_tx_taps_36=nrz:-7:85:-25:0:0:0
xflow_macsec_secure_chan_to_num_secure_assoc_encrypt=2
xflow_macsec_secure_chan_to_num_secure_assoc_decrypt=4
sai_pfc_dlr_init_capability=0
sai_default_cpu_tx_tc=7
sai_disable_srcmacqedstmac_ctrl=1

View File

@ -0,0 +1,77 @@
# name lanes alias index role speed asic_port_name coreId corePortId numVoq
Ethernet0 72,73,74,75 Ethernet1/1 1 Ext 100000 Eth0-ASIC0 1 1 8
Ethernet4 76,77,78,79 Ethernet1/5 1 Ext 100000 Eth4-ASIC0 1 2 8
Ethernet8 80,81,82,83 Ethernet2/1 2 Ext 100000 Eth8-ASIC0 1 3 8
Ethernet12 84,85,86,87 Ethernet2/5 2 Ext 100000 Eth12-ASIC0 1 4 8
Ethernet16 88,89,90,91 Ethernet3/1 3 Ext 100000 Eth16-ASIC0 1 5 8
Ethernet20 92,93,94,95 Ethernet3/5 3 Ext 100000 Eth20-ASIC0 1 6 8
Ethernet24 96,97,98,99 Ethernet4/1 4 Ext 100000 Eth24-ASIC0 1 7 8
Ethernet28 100,101,102,103 Ethernet4/5 4 Ext 100000 Eth28-ASIC0 1 8 8
Ethernet32 104,105,106,107 Ethernet5/1 5 Ext 100000 Eth32-ASIC0 1 9 8
Ethernet36 108,109,110,111 Ethernet5/5 5 Ext 100000 Eth36-ASIC0 1 10 8
Ethernet40 112,113,114,115 Ethernet6/1 6 Ext 100000 Eth40-ASIC0 1 11 8
Ethernet44 116,117,118,119 Ethernet6/5 6 Ext 100000 Eth44-ASIC0 1 12 8
Ethernet48 120,121,122,123 Ethernet7/1 7 Ext 100000 Eth48-ASIC0 1 13 8
Ethernet52 124,125,126,127 Ethernet7/5 7 Ext 100000 Eth52-ASIC0 1 14 8
Ethernet56 128,129,130,131 Ethernet8/1 8 Ext 100000 Eth56-ASIC0 1 15 8
Ethernet60 132,133,134,135 Ethernet8/5 8 Ext 100000 Eth60-ASIC0 1 16 8
Ethernet64 136,137,138,139 Ethernet9/1 9 Ext 100000 Eth64-ASIC0 1 17 8
Ethernet68 140,141,142,143 Ethernet9/5 9 Ext 100000 Eth68-ASIC0 1 18 8
Ethernet72 64,65,66,67 Ethernet10/1 10 Ext 100000 Eth72-ASIC0 0 19 8
Ethernet76 68,69,70,71 Ethernet10/5 10 Ext 100000 Eth76-ASIC0 0 20 8
Ethernet80 56,57,58,59 Ethernet11/1 11 Ext 100000 Eth80-ASIC0 0 21 8
Ethernet84 60,61,62,63 Ethernet11/5 11 Ext 100000 Eth84-ASIC0 0 22 8
Ethernet88 48,49,50,51 Ethernet12/1 12 Ext 100000 Eth88-ASIC0 0 23 8
Ethernet92 52,53,54,55 Ethernet12/5 12 Ext 100000 Eth92-ASIC0 0 24 8
Ethernet96 40,41,42,43 Ethernet13/1 13 Ext 100000 Eth96-ASIC0 0 25 8
Ethernet100 44,45,46,47 Ethernet13/5 13 Ext 100000 Eth100-ASIC0 0 26 8
Ethernet104 32,33,34,35 Ethernet14/1 14 Ext 100000 Eth104-ASIC0 0 27 8
Ethernet108 36,37,38,39 Ethernet14/5 14 Ext 100000 Eth108-ASIC0 0 28 8
Ethernet112 24,25,26,27 Ethernet15/1 15 Ext 100000 Eth112-ASIC0 0 29 8
Ethernet116 28,29,30,31 Ethernet15/5 15 Ext 100000 Eth116-ASIC0 0 30 8
Ethernet120 16,17,18,19 Ethernet16/1 16 Ext 100000 Eth120-ASIC0 0 31 8
Ethernet124 20,21,22,23 Ethernet16/5 16 Ext 100000 Eth124-ASIC0 0 32 8
Ethernet128 8,9,10,11 Ethernet17/1 17 Ext 100000 Eth128-ASIC0 0 33 8
Ethernet132 12,13,14,15 Ethernet17/5 17 Ext 100000 Eth132-ASIC0 0 34 8
Ethernet136 0,1,2,3 Ethernet18/1 18 Ext 100000 Eth136-ASIC0 0 35 8
Ethernet140 4,5,6,7 Ethernet18/5 18 Ext 100000 Eth140-ASIC0 0 36 8
Ethernet144 72,73,74,75 Ethernet19/1 19 Ext 100000 Eth144-ASIC1 1 1 8
Ethernet148 76,77,78,79 Ethernet19/5 19 Ext 100000 Eth148-ASIC1 1 2 8
Ethernet152 80,81,82,83 Ethernet20/1 20 Ext 100000 Eth152-ASIC1 1 3 8
Ethernet156 84,85,86,87 Ethernet20/5 20 Ext 100000 Eth156-ASIC1 1 4 8
Ethernet160 88,89,90,91 Ethernet21/1 21 Ext 100000 Eth160-ASIC1 1 5 8
Ethernet164 92,93,94,95 Ethernet21/5 21 Ext 100000 Eth164-ASIC1 1 6 8
Ethernet168 96,97,98,99 Ethernet22/1 22 Ext 100000 Eth168-ASIC1 1 7 8
Ethernet172 100,101,102,103 Ethernet22/5 22 Ext 100000 Eth172-ASIC1 1 8 8
Ethernet176 104,105,106,107 Ethernet23/1 23 Ext 100000 Eth176-ASIC1 1 9 8
Ethernet180 108,109,110,111 Ethernet23/5 23 Ext 100000 Eth180-ASIC1 1 10 8
Ethernet184 112,113,114,115 Ethernet24/1 24 Ext 100000 Eth184-ASIC1 1 11 8
Ethernet188 116,117,118,119 Ethernet24/5 24 Ext 100000 Eth188-ASIC1 1 12 8
Ethernet192 120,121,122,123 Ethernet25/1 25 Ext 100000 Eth192-ASIC1 1 13 8
Ethernet196 124,125,126,127 Ethernet25/5 25 Ext 100000 Eth196-ASIC1 1 14 8
Ethernet200 128,129,130,131 Ethernet26/1 26 Ext 100000 Eth200-ASIC1 1 15 8
Ethernet204 132,133,134,135 Ethernet26/5 26 Ext 100000 Eth204-ASIC1 1 16 8
Ethernet208 136,137,138,139 Ethernet27/1 27 Ext 100000 Eth208-ASIC1 1 17 8
Ethernet212 140,141,142,143 Ethernet27/5 27 Ext 100000 Eth212-ASIC1 1 18 8
Ethernet216 64,65,66,67 Ethernet28/1 28 Ext 100000 Eth216-ASIC1 0 19 8
Ethernet220 68,69,70,71 Ethernet28/5 28 Ext 100000 Eth220-ASIC1 0 20 8
Ethernet224 56,57,58,59 Ethernet29/1 29 Ext 100000 Eth224-ASIC1 0 21 8
Ethernet228 60,61,62,63 Ethernet29/5 29 Ext 100000 Eth228-ASIC1 0 22 8
Ethernet232 48,49,50,51 Ethernet30/1 30 Ext 100000 Eth232-ASIC1 0 23 8
Ethernet236 52,53,54,55 Ethernet30/5 30 Ext 100000 Eth236-ASIC1 0 24 8
Ethernet240 40,41,42,43 Ethernet31/1 31 Ext 100000 Eth240-ASIC1 0 25 8
Ethernet244 44,45,46,47 Ethernet31/5 31 Ext 100000 Eth244-ASIC1 0 26 8
Ethernet248 32,33,34,35 Ethernet32/1 32 Ext 100000 Eth248-ASIC1 0 27 8
Ethernet252 36,37,38,39 Ethernet32/5 32 Ext 100000 Eth252-ASIC1 0 28 8
Ethernet256 24,25,26,27 Ethernet33/1 33 Ext 100000 Eth256-ASIC1 0 29 8
Ethernet260 28,29,30,31 Ethernet33/5 33 Ext 100000 Eth260-ASIC1 0 30 8
Ethernet264 16,17,18,19 Ethernet34/1 34 Ext 100000 Eth264-ASIC1 0 31 8
Ethernet268 20,21,22,23 Ethernet34/5 34 Ext 100000 Eth268-ASIC1 0 32 8
Ethernet272 8,9,10,11 Ethernet35/1 35 Ext 100000 Eth272-ASIC1 0 33 8
Ethernet276 12,13,14,15 Ethernet35/5 35 Ext 100000 Eth276-ASIC1 0 34 8
Ethernet280 0,1,2,3 Ethernet36/1 36 Ext 100000 Eth280-ASIC1 0 35 8
Ethernet284 4,5,6,7 Ethernet36/5 36 Ext 100000 Eth284-ASIC1 0 36 8
Ethernet-Rec0 221 Recirc0/0 37 Rec 400000 Rcy0-ASIC0 0 221 8
Ethernet-IB0 222 Recirc0/1 38 Inb 400000 Rcy1-ASIC0 1 222 8
Ethernet-Rec1 221 Recirc0/0 39 Rec 400000 Rcy0-ASIC1 0 221 8
Ethernet-IB1 222 Recirc0/1 40 Inb 400000 Rcy1-ASIC1 1 222 8

View File

@ -1051,5 +1051,3 @@ appl_param_nof_ports_per_modid=64
xflow_macsec_secure_chan_to_num_secure_assoc_encrypt=2
xflow_macsec_secure_chan_to_num_secure_assoc_decrypt=4
sai_pfc_dlr_init_capability=0
sai_default_cpu_tx_tc=7
sai_disable_srcmacqedstmac_ctrl=1

View File

@ -453,17 +453,17 @@ fabric_connect_mode=FE
fabric_logical_port_base=512
# Fabric lane mapping
lane_to_serdes_map_fabric_lane0=rx0:tx3
lane_to_serdes_map_fabric_lane0=rx0:tx0
lane_to_serdes_map_fabric_lane1=rx1:tx1
lane_to_serdes_map_fabric_lane2=rx2:tx2
lane_to_serdes_map_fabric_lane3=rx3:tx0
lane_to_serdes_map_fabric_lane3=rx3:tx3
lane_to_serdes_map_fabric_lane4=rx4:tx4
lane_to_serdes_map_fabric_lane5=rx5:tx5
lane_to_serdes_map_fabric_lane6=rx6:tx6
lane_to_serdes_map_fabric_lane7=rx7:tx7
lane_to_serdes_map_fabric_lane8=rx8:tx9
lane_to_serdes_map_fabric_lane8=rx8:tx10
lane_to_serdes_map_fabric_lane9=rx9:tx11
lane_to_serdes_map_fabric_lane10=rx10:tx10
lane_to_serdes_map_fabric_lane10=rx10:tx9
lane_to_serdes_map_fabric_lane11=rx11:tx8
lane_to_serdes_map_fabric_lane12=rx12:tx12
lane_to_serdes_map_fabric_lane13=rx13:tx15
@ -475,15 +475,15 @@ lane_to_serdes_map_fabric_lane18=rx18:tx16
lane_to_serdes_map_fabric_lane19=rx19:tx19
lane_to_serdes_map_fabric_lane20=rx20:tx21
lane_to_serdes_map_fabric_lane21=rx21:tx23
lane_to_serdes_map_fabric_lane22=rx22:tx22
lane_to_serdes_map_fabric_lane23=rx23:tx20
lane_to_serdes_map_fabric_lane24=rx24:tx25
lane_to_serdes_map_fabric_lane22=rx22:tx20
lane_to_serdes_map_fabric_lane23=rx23:tx22
lane_to_serdes_map_fabric_lane24=rx24:tx26
lane_to_serdes_map_fabric_lane25=rx25:tx24
lane_to_serdes_map_fabric_lane26=rx26:tx27
lane_to_serdes_map_fabric_lane27=rx27:tx26
lane_to_serdes_map_fabric_lane26=rx26:tx25
lane_to_serdes_map_fabric_lane27=rx27:tx27
lane_to_serdes_map_fabric_lane28=rx28:tx31
lane_to_serdes_map_fabric_lane29=rx29:tx29
lane_to_serdes_map_fabric_lane30=rx30:tx30
lane_to_serdes_map_fabric_lane29=rx29:tx30
lane_to_serdes_map_fabric_lane30=rx30:tx29
lane_to_serdes_map_fabric_lane31=rx31:tx28
lane_to_serdes_map_fabric_lane32=rx32:tx32
lane_to_serdes_map_fabric_lane33=rx33:tx33
@ -522,17 +522,17 @@ lane_to_serdes_map_fabric_lane65=rx65:tx65
lane_to_serdes_map_fabric_lane66=rx66:tx66
lane_to_serdes_map_fabric_lane67=rx67:tx67
lane_to_serdes_map_fabric_lane68=rx68:tx68
lane_to_serdes_map_fabric_lane69=rx69:tx70
lane_to_serdes_map_fabric_lane70=rx70:tx71
lane_to_serdes_map_fabric_lane71=rx71:tx69
lane_to_serdes_map_fabric_lane69=rx69:tx69
lane_to_serdes_map_fabric_lane70=rx70:tx70
lane_to_serdes_map_fabric_lane71=rx71:tx71
lane_to_serdes_map_fabric_lane72=rx72:tx75
lane_to_serdes_map_fabric_lane73=rx73:tx74
lane_to_serdes_map_fabric_lane74=rx74:tx73
lane_to_serdes_map_fabric_lane75=rx75:tx72
lane_to_serdes_map_fabric_lane76=rx76:tx76
lane_to_serdes_map_fabric_lane76=rx76:tx79
lane_to_serdes_map_fabric_lane77=rx77:tx78
lane_to_serdes_map_fabric_lane78=rx78:tx77
lane_to_serdes_map_fabric_lane79=rx79:tx79
lane_to_serdes_map_fabric_lane79=rx79:tx76
lane_to_serdes_map_fabric_lane80=rx80:tx80
lane_to_serdes_map_fabric_lane81=rx81:tx81
lane_to_serdes_map_fabric_lane82=rx82:tx83
@ -543,11 +543,11 @@ lane_to_serdes_map_fabric_lane86=rx86:tx84
lane_to_serdes_map_fabric_lane87=rx87:tx87
lane_to_serdes_map_fabric_lane88=rx88:tx90
lane_to_serdes_map_fabric_lane89=rx89:tx88
lane_to_serdes_map_fabric_lane90=rx90:tx89
lane_to_serdes_map_fabric_lane91=rx91:tx91
lane_to_serdes_map_fabric_lane90=rx90:tx91
lane_to_serdes_map_fabric_lane91=rx91:tx89
lane_to_serdes_map_fabric_lane92=rx92:tx93
lane_to_serdes_map_fabric_lane93=rx93:tx94
lane_to_serdes_map_fabric_lane94=rx94:tx92
lane_to_serdes_map_fabric_lane93=rx93:tx92
lane_to_serdes_map_fabric_lane94=rx94:tx94
lane_to_serdes_map_fabric_lane95=rx95:tx95
lane_to_serdes_map_fabric_lane96=rx96:tx96
lane_to_serdes_map_fabric_lane97=rx97:tx97
@ -557,30 +557,30 @@ lane_to_serdes_map_fabric_lane100=rx100:tx100
lane_to_serdes_map_fabric_lane101=rx101:tx101
lane_to_serdes_map_fabric_lane102=rx102:tx102
lane_to_serdes_map_fabric_lane103=rx103:tx103
lane_to_serdes_map_fabric_lane104=rx104:tx104
lane_to_serdes_map_fabric_lane105=rx105:tx107
lane_to_serdes_map_fabric_lane106=rx106:tx106
lane_to_serdes_map_fabric_lane107=rx107:tx105
lane_to_serdes_map_fabric_lane108=rx108:tx108
lane_to_serdes_map_fabric_lane104=rx104:tx105
lane_to_serdes_map_fabric_lane105=rx105:tx106
lane_to_serdes_map_fabric_lane106=rx106:tx107
lane_to_serdes_map_fabric_lane107=rx107:tx104
lane_to_serdes_map_fabric_lane108=rx108:tx111
lane_to_serdes_map_fabric_lane109=rx109:tx109
lane_to_serdes_map_fabric_lane110=rx110:tx110
lane_to_serdes_map_fabric_lane111=rx111:tx111
lane_to_serdes_map_fabric_lane112=rx112:tx115
lane_to_serdes_map_fabric_lane113=rx113:tx114
lane_to_serdes_map_fabric_lane111=rx111:tx108
lane_to_serdes_map_fabric_lane112=rx112:tx114
lane_to_serdes_map_fabric_lane113=rx113:tx113
lane_to_serdes_map_fabric_lane114=rx114:tx112
lane_to_serdes_map_fabric_lane115=rx115:tx113
lane_to_serdes_map_fabric_lane116=rx116:tx118
lane_to_serdes_map_fabric_lane117=rx117:tx119
lane_to_serdes_map_fabric_lane118=rx118:tx116
lane_to_serdes_map_fabric_lane119=rx119:tx117
lane_to_serdes_map_fabric_lane120=rx120:tx121
lane_to_serdes_map_fabric_lane121=rx121:tx122
lane_to_serdes_map_fabric_lane122=rx122:tx120
lane_to_serdes_map_fabric_lane123=rx123:tx123
lane_to_serdes_map_fabric_lane124=rx124:tx124
lane_to_serdes_map_fabric_lane125=rx125:tx127
lane_to_serdes_map_fabric_lane126=rx126:tx126
lane_to_serdes_map_fabric_lane127=rx127:tx125
lane_to_serdes_map_fabric_lane115=rx115:tx115
lane_to_serdes_map_fabric_lane116=rx116:tx117
lane_to_serdes_map_fabric_lane117=rx117:tx116
lane_to_serdes_map_fabric_lane118=rx118:tx119
lane_to_serdes_map_fabric_lane119=rx119:tx118
lane_to_serdes_map_fabric_lane120=rx120:tx123
lane_to_serdes_map_fabric_lane121=rx121:tx120
lane_to_serdes_map_fabric_lane122=rx122:tx122
lane_to_serdes_map_fabric_lane123=rx123:tx121
lane_to_serdes_map_fabric_lane124=rx124:tx127
lane_to_serdes_map_fabric_lane125=rx125:tx125
lane_to_serdes_map_fabric_lane126=rx126:tx124
lane_to_serdes_map_fabric_lane127=rx127:tx126
lane_to_serdes_map_fabric_lane128=rx128:tx128
lane_to_serdes_map_fabric_lane129=rx129:tx129
lane_to_serdes_map_fabric_lane130=rx130:tx130
@ -593,12 +593,12 @@ lane_to_serdes_map_fabric_lane136=rx136:tx139
lane_to_serdes_map_fabric_lane137=rx137:tx138
lane_to_serdes_map_fabric_lane138=rx138:tx137
lane_to_serdes_map_fabric_lane139=rx139:tx136
lane_to_serdes_map_fabric_lane140=rx140:tx143
lane_to_serdes_map_fabric_lane140=rx140:tx140
lane_to_serdes_map_fabric_lane141=rx141:tx142
lane_to_serdes_map_fabric_lane142=rx142:tx141
lane_to_serdes_map_fabric_lane143=rx143:tx140
lane_to_serdes_map_fabric_lane144=rx144:tx145
lane_to_serdes_map_fabric_lane145=rx145:tx144
lane_to_serdes_map_fabric_lane143=rx143:tx143
lane_to_serdes_map_fabric_lane144=rx144:tx144
lane_to_serdes_map_fabric_lane145=rx145:tx145
lane_to_serdes_map_fabric_lane146=rx146:tx146
lane_to_serdes_map_fabric_lane147=rx147:tx147
lane_to_serdes_map_fabric_lane148=rx148:tx148
@ -614,8 +614,8 @@ lane_to_serdes_map_fabric_lane157=rx157:tx158
lane_to_serdes_map_fabric_lane158=rx158:tx157
lane_to_serdes_map_fabric_lane159=rx159:tx156
lane_to_serdes_map_fabric_lane160=rx160:tx160
lane_to_serdes_map_fabric_lane161=rx161:tx162
lane_to_serdes_map_fabric_lane162=rx162:tx161
lane_to_serdes_map_fabric_lane161=rx161:tx161
lane_to_serdes_map_fabric_lane162=rx162:tx162
lane_to_serdes_map_fabric_lane163=rx163:tx163
lane_to_serdes_map_fabric_lane164=rx164:tx164
lane_to_serdes_map_fabric_lane165=rx165:tx165
@ -639,11 +639,11 @@ lane_to_serdes_map_fabric_lane182=rx182:tx180
lane_to_serdes_map_fabric_lane183=rx183:tx183
lane_to_serdes_map_fabric_lane184=rx184:tx186
lane_to_serdes_map_fabric_lane185=rx185:tx184
lane_to_serdes_map_fabric_lane186=rx186:tx187
lane_to_serdes_map_fabric_lane187=rx187:tx185
lane_to_serdes_map_fabric_lane188=rx188:tx190
lane_to_serdes_map_fabric_lane186=rx186:tx185
lane_to_serdes_map_fabric_lane187=rx187:tx187
lane_to_serdes_map_fabric_lane188=rx188:tx188
lane_to_serdes_map_fabric_lane189=rx189:tx189
lane_to_serdes_map_fabric_lane190=rx190:tx188
lane_to_serdes_map_fabric_lane190=rx190:tx190
lane_to_serdes_map_fabric_lane191=rx191:tx191
#
@ -1051,5 +1051,3 @@ appl_param_nof_ports_per_modid=64
xflow_macsec_secure_chan_to_num_secure_assoc_encrypt=2
xflow_macsec_secure_chan_to_num_secure_assoc_decrypt=4
sai_pfc_dlr_init_capability=0
sai_default_cpu_tx_tc=7
sai_disable_srcmacqedstmac_ctrl=1

View File

@ -0,0 +1,41 @@
# name lanes alias index role speed asic_port_name coreId corePortId numVoq
Ethernet0 72,73,74,75,76,77,78,79 Ethernet1/1 1 Ext 400000 Eth0-ASIC0 1 1 8
Ethernet8 80,81,82,83,84,85,86,87 Ethernet2/1 2 Ext 400000 Eth8-ASIC0 1 2 8
Ethernet16 88,89,90,91,92,93,94,95 Ethernet3/1 3 Ext 400000 Eth16-ASIC0 1 3 8
Ethernet24 96,97,98,99,100,101,102,103 Ethernet4/1 4 Ext 400000 Eth24-ASIC0 1 4 8
Ethernet32 104,105,106,107,108,109,110,111 Ethernet5/1 5 Ext 400000 Eth32-ASIC0 1 5 8
Ethernet40 112,113,114,115,116,117,118,119 Ethernet6/1 6 Ext 400000 Eth40-ASIC0 1 6 8
Ethernet48 120,121,122,123,124,125,126,127 Ethernet7/1 7 Ext 400000 Eth48-ASIC0 1 7 8
Ethernet56 128,129,130,131,132,133,134,135 Ethernet8/1 8 Ext 400000 Eth56-ASIC0 1 8 8
Ethernet64 136,137,138,139,140,141,142,143 Ethernet9/1 9 Ext 400000 Eth64-ASIC0 1 9 8
Ethernet72 64,65,66,67,68,69,70,71 Ethernet10/1 10 Ext 400000 Eth72-ASIC0 0 10 8
Ethernet80 56,57,58,59,60,61,62,63 Ethernet11/1 11 Ext 400000 Eth80-ASIC0 0 11 8
Ethernet88 48,49,50,51,52,53,54,55 Ethernet12/1 12 Ext 400000 Eth88-ASIC0 0 12 8
Ethernet96 40,41,42,43,44,45,46,47 Ethernet13/1 13 Ext 400000 Eth96-ASIC0 0 13 8
Ethernet104 32,33,34,35,36,37,38,39 Ethernet14/1 14 Ext 400000 Eth104-ASIC0 0 14 8
Ethernet112 24,25,26,27,28,29,30,31 Ethernet15/1 15 Ext 400000 Eth112-ASIC0 0 15 8
Ethernet120 16,17,18,19,20,21,22,23 Ethernet16/1 16 Ext 400000 Eth120-ASIC0 0 16 8
Ethernet128 8,9,10,11,12,13,14,15 Ethernet17/1 17 Ext 400000 Eth128-ASIC0 0 17 8
Ethernet136 0,1,2,3,4,5,6,7 Ethernet18/1 18 Ext 400000 Eth136-ASIC0 0 18 8
Ethernet144 72,73,74,75,76,77,78,79 Ethernet19/1 19 Ext 400000 Eth0-ASIC1 1 1 8
Ethernet152 80,81,82,83,84,85,86,87 Ethernet20/1 20 Ext 400000 Eth8-ASIC1 1 2 8
Ethernet160 88,89,90,91,92,93,94,95 Ethernet21/1 21 Ext 400000 Eth16-ASIC1 1 3 8
Ethernet168 96,97,98,99,100,101,102,103 Ethernet22/1 22 Ext 400000 Eth24-ASIC1 1 4 8
Ethernet176 104,105,106,107,108,109,110,111 Ethernet23/1 23 Ext 400000 Eth32-ASIC1 1 5 8
Ethernet184 112,113,114,115,116,117,118,119 Ethernet24/1 24 Ext 400000 Eth40-ASIC1 1 6 8
Ethernet192 120,121,122,123,124,125,126,127 Ethernet25/1 25 Ext 400000 Eth48-ASIC1 1 7 8
Ethernet200 128,129,130,131,132,133,134,135 Ethernet26/1 26 Ext 400000 Eth56-ASIC1 1 8 8
Ethernet208 136,137,138,139,140,141,142,143 Ethernet27/1 27 Ext 400000 Eth64-ASIC1 1 9 8
Ethernet216 64,65,66,67,68,69,70,71 Ethernet28/1 28 Ext 400000 Eth72-ASIC1 0 10 8
Ethernet224 56,57,58,59,60,61,62,63 Ethernet29/1 29 Ext 400000 Eth80-ASIC1 0 11 8
Ethernet232 48,49,50,51,52,53,54,55 Ethernet30/1 30 Ext 400000 Eth88-ASIC1 0 12 8
Ethernet240 40,41,42,43,44,45,46,47 Ethernet31/1 31 Ext 400000 Eth96-ASIC1 0 13 8
Ethernet248 32,33,34,35,36,37,38,39 Ethernet32/1 32 Ext 400000 Eth104-ASIC1 0 14 8
Ethernet256 24,25,26,27,28,29,30,31 Ethernet33/1 33 Ext 400000 Eth112-ASIC1 0 15 8
Ethernet264 16,17,18,19,20,21,22,23 Ethernet34/1 34 Ext 400000 Eth120-ASIC1 0 16 8
Ethernet272 8,9,10,11,12,13,14,15 Ethernet35/1 35 Ext 400000 Eth128-ASIC1 0 17 8
Ethernet280 0,1,2,3,4,5,6,7 Ethernet36/1 36 Ext 400000 Eth136-ASIC1 0 18 8
Ethernet-Rec0 249 Recirc0/0 37 Rec 400000 Rcy0-ASIC0 0 49 8
Ethernet-IB0 250 Recirc0/1 38 Inb 400000 Rcy1-ASIC0 1 50 8
Ethernet-Rec1 249 Recirc0/0 39 Rec 400000 Rcy0-ASIC1 0 49 8
Ethernet-IB1 250 Recirc0/1 40 Inb 400000 Rcy1-ASIC1 1 50 8

View File

@ -152,6 +152,11 @@
id: '1466'
name: 'Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh)
Data Fabric: Device 18h; Function 6'
- bus: '00'
dev: '18'
fn: '7'
id: '0001'
name: 'Host bridge: Arista Networks, Inc. Device 0001'
- bus: '04'
dev: '00'
fn: '0'

View File

@ -1,4 +1,3 @@
SYNCD_SHM_SIZE=1gb
usemsi=1
dmasize=64M
macsec_enabled=1

View File

@ -1 +0,0 @@
[]

View File

@ -1,9 +0,0 @@
#!/bin/bash
declare -r CPLD_SETREG_PATH="/sys/bus/platform/devices/e1031.smc/setreg"
sync ; sync
umount -fa > /dev/null 2&>1
# Board level power cycle
echo "0x0113 0xAA" > ${CPLD_SETREG_PATH}

View File

@ -1,8 +0,0 @@
#!/bin/bash
REBOOT_USER=$(logname)
REBOOT_TIME=$(date)
declare -r REBOOT_CAUSE_FILE="/host/reboot-cause/reboot-cause.txt"
echo "User issued 'reboot' with platform-specific command [User: ${REBOOT_USER}, Time: ${REBOOT_TIME}]" > ${REBOOT_CAUSE_FILE}
sync

View File

@ -24,6 +24,7 @@ class Common:
SET_METHOD_IPMI = 'ipmitool'
NULL_VAL = 'N/A'
HOST_CHK_CMD = ["docker"]
REF_KEY = '$ref:'
def __init__(self, conf=None):
@ -184,12 +185,11 @@ class Common:
return True
def is_host(self):
"""
Test whether current process is running on the host or an docker
return True for host and False for docker
"""
docker_env_file = '/.dockerenv'
return os.path.exists(docker_env_file) is False
try:
subprocess.call(self.HOST_CHK_CMD, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
except FileNotFoundError:
return False
return True
def load_json_file(self, path):
"""

View File

@ -1,2 +0,0 @@
{%- set default_topo = 't0' %}
{%- include 'buffers_config.j2' %}

View File

@ -1,41 +0,0 @@
{%- set default_cable = '5m' %}
{%- macro generate_port_lists(PORT_ALL) %}
{# Generate list of ports #}
{% for port_idx in range(0,24) %}
{% if PORT_ALL.append("Ethernet%d" % (port_idx * 4)) %}{% endif %}
{% endfor %}
{%- endmacro %}
{%- macro generate_buffer_pool_and_profiles() %}
"BUFFER_POOL": {
"ingress_lossless_pool": {
"size": "8192000",
"type": "ingress",
"mode": "dynamic",
"xoff": "196608"
},
"egress_lossless_pool": {
"size": "8388608",
"type": "egress",
"mode": "static"
}
},
"BUFFER_PROFILE": {
"ingress_lossy_profile": {
"pool":"[BUFFER_POOL|ingress_lossless_pool]",
"size":"0",
"dynamic_th":"3"
},
"egress_lossless_profile": {
"pool":"[BUFFER_POOL|egress_lossless_pool]",
"size":"0",
"static_th":"8388608"
},
"egress_lossy_profile": {
"pool":"[BUFFER_POOL|egress_lossless_pool]",
"size":"1518",
"dynamic_th":"3"
}
},
{%- endmacro %}

View File

@ -1,41 +0,0 @@
{%- set default_cable = '300m' %}
{%- macro generate_port_lists(PORT_ALL) %}
{# Generate list of ports #}
{% for port_idx in range(0,24) %}
{% if PORT_ALL.append("Ethernet%d" % (port_idx * 4)) %}{% endif %}
{% endfor %}
{%- endmacro %}
{%- macro generate_buffer_pool_and_profiles() %}
"BUFFER_POOL": {
"ingress_lossless_pool": {
"size": "8192000",
"type": "ingress",
"mode": "dynamic",
"xoff": "196608"
},
"egress_lossless_pool": {
"size": "8388608",
"type": "egress",
"mode": "static"
}
},
"BUFFER_PROFILE": {
"ingress_lossy_profile": {
"pool":"[BUFFER_POOL|ingress_lossless_pool]",
"size":"0",
"dynamic_th":"3"
},
"egress_lossless_profile": {
"pool":"[BUFFER_POOL|egress_lossless_pool]",
"size":"0",
"static_th":"8388608"
},
"egress_lossy_profile": {
"pool":"[BUFFER_POOL|egress_lossless_pool]",
"size":"1518",
"dynamic_th":"3"
}
},
{%- endmacro %}

View File

@ -1,3 +0,0 @@
{
"copp_rx_rate":15000
}

View File

@ -1,145 +0,0 @@
{
"COPP_GROUP": {
"copp-system-lacp": {
"cir":"250",
"cbs":"250"
},
"copp-system-udld": {
"cir":"250",
"cbs":"250"
},
"copp-system-stp": {
"cir":"8000",
"cbs":"8000"
},
"copp-system-bfd": {
"cir":"750",
"cbs":"750"
},
"copp-system-lldp": {
"cir":"250",
"cbs":"250"
},
"copp-system-vrrp": {
"cir":"250",
"cbs":"250"
},
"copp-system-iccp": {
"cir":"2500",
"cbs":"2500"
},
"copp-system-ospf": {
"cir":"2500",
"cbs":"2500"
},
"copp-system-bgp": {
"cir":"5000",
"cbs":"5000"
},
"copp-system-pim": {
"cir":"2500",
"cbs":"2500"
},
"copp-system-igmp": {
"cir":"1000",
"cbs":"1000"
},
"copp-system-suppress": {
"cir":"1500",
"cbs":"1500"
},
"copp-system-arp": {
"cir":"1500",
"cbs":"1500"
},
"copp-system-dhcp": {
"cir":"150",
"cbs":"150"
},
"copp-system-icmp": {
"cir":"500",
"cbs":"500"
},
"copp-system-ip2me": {
"cir":"3000",
"cbs":"3000"
},
"copp-system-subnet": {
"cir":"1000",
"cbs":"1000"
},
"copp-system-mtu": {
"cir":"250",
"cbs":"250"
},
"copp-system-sflow": {
"cir":"4000",
"cbs":"4000"
}
},
"SCHEDULER": {
"copp-scheduler-policy@23": {
"pir": "250"
},
"copp-scheduler-policy@22": {
"pir": "250"
},
"copp-scheduler-policy@21": {
"pir": "8000"
},
"copp-scheduler-policy@20": {
"pir": "750"
},
"copp-scheduler-policy@19": {
"pir": "2500"
},
"copp-scheduler-policy@18": {
"pir": "250"
},
"copp-scheduler-policy@17": {
"pir": "250"
},
"copp-scheduler-policy@16": {
"pir": "2500"
},
"copp-scheduler-policy@15": {
"pir": "2500"
},
"copp-scheduler-policy@14": {
"pir": "5000"
},
"copp-scheduler-policy@13": {
"pir": "2500"
},
"copp-scheduler-policy@12": {
"pir": "1000"
},
"copp-scheduler-policy@11": {
"pir": "1500"
},
"copp-scheduler-policy@10": {
"pir": "1500"
},
"copp-scheduler-policy@9": {
"pir": "150"
},
"copp-scheduler-policy@8": {
"pir": "500"
},
"copp-scheduler-policy@7": {
"pir": "3000"
},
"copp-scheduler-policy@6": {
"pir": "1000"
},
"copp-scheduler-policy@4": {
"pir": "250"
},
"copp-scheduler-policy@3": {
"pir": "4000"
},
"copp-scheduler-policy@1": {
"pir": "100"
}
}
}

View File

@ -1,157 +0,0 @@
bcm_num_cos=8
bcm_stat_interval=2000000
bcm_tunnel_term_compatible_mode=1
cdma_timeout_usec=3000000
flow_init_mode=0
ifa_enable=0
ifp_inports_support_enable=1
ipv6_lpm_128b_enable=0x1
l2xmsg_mode=1
#Default L3 profile
l2_mem_entries=32768
l3_alpm_enable=2
l3_alpm_ipv6_128b_bkt_rsvd=1
l3_max_ecmp_mode=1
l3_mem_entries=16348
lpm_scaling_enable=0
memlist_enable=1
reglist_enable=1
scache_filename=/tmp/brcm_bcm_scache
schan_intr_enable=0
stable_size=0x5500000
tdma_timeout_usec=3000000
pfc_deadlock_seq_control=1
#Port and PHY configs
core_clock_frequency=668
pbmp_xport_xe=0x1ffffffe
port_gmii_mode_33=1
port_gmii_mode_17=1
port_gmii_mode_1=1
portmap_1=1:1
portmap_2=2:1
portmap_3=3:1
portmap_4=4:1
portmap_5=5:1
portmap_6=6:1
portmap_7=7:1
portmap_8=8:1
portmap_9=9:1
portmap_10=10:1
portmap_11=11:1
portmap_12=12:1
portmap_13=13:1
portmap_14=14:1
portmap_15=15:1
portmap_16=16:1
portmap_17=17:1
portmap_18=18:1
portmap_19=19:1
portmap_20=20:1
portmap_21=21:1
portmap_22=22:1
portmap_23=23:1
portmap_24=24:1
portmap_25=64:10
portmap_26=63:10
portmap_27=62:10
portmap_28=61:10
portmap_29=69:100
portmap_33=73:100
phy_chain_tx_lane_map_physical{33.0}=0x2301
phy_chain_rx_lane_map_physical{33.0}=0x2301
phy_port_primary_and_offset_1=0x0100
phy_port_primary_and_offset_2=0x0101
phy_port_primary_and_offset_3=0x0102
phy_port_primary_and_offset_4=0x0103
phy_port_primary_and_offset_5=0x0104
phy_port_primary_and_offset_6=0x0105
phy_port_primary_and_offset_7=0x0106
phy_port_primary_and_offset_8=0x0107
phy_port_primary_and_offset_9=0x0900
phy_port_primary_and_offset_10=0x0901
phy_port_primary_and_offset_11=0x0902
phy_port_primary_and_offset_12=0x0903
phy_port_primary_and_offset_13=0x0904
phy_port_primary_and_offset_14=0x0905
phy_port_primary_and_offset_15=0x0906
phy_port_primary_and_offset_16=0x0907
phy_port_primary_and_offset_17=0x1200
phy_port_primary_and_offset_18=0x1201
phy_port_primary_and_offset_19=0x1202
phy_port_primary_and_offset_20=0x1203
phy_port_primary_and_offset_21=0x1204
phy_port_primary_and_offset_22=0x1205
phy_port_primary_and_offset_23=0x1206
phy_port_primary_and_offset_24=0x1207
port_phy_addr_1=0x0
port_phy_addr_2=0x1
port_phy_addr_3=0x2
port_phy_addr_4=0x3
port_phy_addr_5=0x4
port_phy_addr_6=0x5
port_phy_addr_7=0x6
port_phy_addr_8=0x7
port_phy_addr_9=0x9
port_phy_addr_10=0xa
port_phy_addr_11=0xb
port_phy_addr_12=0xc
port_phy_addr_13=0xd
port_phy_addr_14=0xe
port_phy_addr_15=0xf
port_phy_addr_16=0x10
port_phy_addr_17=0x12
port_phy_addr_18=0x13
port_phy_addr_19=0x14
port_phy_addr_20=0x15
port_phy_addr_21=0x16
port_phy_addr_22=0x17
port_phy_addr_23=0x18
port_phy_addr_24=0x19
port_phy_addr_25=0x20
port_phy_addr_26=0x21
port_phy_addr_27=0x22
port_phy_addr_28=0x23
phy_force_firmware_load_26=0x01
phy_force_firmware_load_27=0x01
phy_force_firmware_load_28=0x01
phy_pcs_repeater_25=0x01
phy_pcs_repeater_26=0x01
phy_pcs_repeater_27=0x01
phy_pcs_repeater_28=0x01
phy_fiber_pref_ge=1
phy_automedium_ge=0
dport_map_port_1=8
dport_map_port_2=7
dport_map_port_3=6
dport_map_port_4=5
dport_map_port_5=4
dport_map_port_6=3
dport_map_port_7=2
dport_map_port_8=1
dport_map_port_9=16
dport_map_port_10=15
dport_map_port_11=14
dport_map_port_12=13
dport_map_port_13=12
dport_map_port_14=11
dport_map_port_15=10
dport_map_port_16=9
dport_map_port_17=24
dport_map_port_18=23
dport_map_port_19=22
dport_map_port_20=21
dport_map_port_21=20
dport_map_port_22=19
dport_map_port_23=18
dport_map_port_24=17
dport_map_port_25=25
dport_map_port_26=26
dport_map_port_27=27
dport_map_port_28=28
sai_preinit_cmd_file=/usr/share/sonic/hwsku/sai_preinit_cmd.soc

View File

@ -1,17 +0,0 @@
# PG lossless profiles.
# speed cable size xon xoff threshold xon_offset
10000 5m 9427 0 50176 1 3584
25000 5m 9427 0 50176 1 3584
40000 5m 9427 0 50176 1 3584
50000 5m 9427 0 50176 1 3584
100000 5m 9427 0 50176 1 3584
10000 40m 9427 0 50176 1 3584
25000 40m 9427 0 50176 1 3584
40000 40m 9427 0 50176 1 3584
50000 40m 9427 0 50176 1 3584
100000 40m 9427 0 50176 1 3584
10000 300m 9427 0 50176 1 3584
25000 300m 9427 0 50176 1 3584
40000 300m 9427 0 50176 1 3584
50000 300m 9427 0 50176 1 3584
100000 300m 9427 0 50176 1 3584

View File

@ -1,31 +0,0 @@
# name lanes alias index speed autoneg
Ethernet0 8 oneGigE1/1 1 1000 1
Ethernet1 7 oneGigE1/2 2 1000 1
Ethernet2 6 oneGigE1/3 3 1000 1
Ethernet3 5 oneGigE1/4 4 1000 1
Ethernet4 4 oneGigE1/5 5 1000 1
Ethernet5 3 oneGigE1/6 6 1000 1
Ethernet6 2 oneGigE1/7 7 1000 1
Ethernet7 1 oneGigE1/8 8 1000 1
Ethernet8 16 oneGigE1/9 9 1000 1
Ethernet9 15 oneGigE1/10 10 1000 1
Ethernet10 14 oneGigE1/11 11 1000 1
Ethernet11 13 oneGigE1/12 12 1000 1
Ethernet12 12 oneGigE1/13 13 1000 1
Ethernet13 11 oneGigE1/14 14 1000 1
Ethernet14 10 oneGigE1/15 15 1000 1
Ethernet15 9 oneGigE1/16 16 1000 1
Ethernet16 24 oneGigE1/17 17 1000 1
Ethernet17 23 oneGigE1/18 18 1000 1
Ethernet18 22 oneGigE1/19 19 1000 1
Ethernet19 21 oneGigE1/20 20 1000 1
Ethernet20 20 oneGigE1/21 21 1000 1
Ethernet21 19 oneGigE1/22 22 1000 1
Ethernet22 18 oneGigE1/23 23 1000 1
Ethernet23 17 oneGigE1/24 24 1000 1
Ethernet24 64 tenGigE1/25 25 10000 0
Ethernet25 63 tenGigE1/26 26 10000 0
Ethernet26 62 tenGigE1/27 27 10000 0
Ethernet27 61 tenGigE1/28 28 10000 0
Ethernet28 69,70,71,72 hundredGigE1/29 29 100000 0
Ethernet32 73,74,75,76 hundredGigE1/30 30 100000 0

View File

@ -1 +0,0 @@
{%- include 'qos_config_t1.j2' %}

View File

@ -1,175 +0,0 @@
{%- set PORT_ALL = [] %}
{%- for port in PORT %}
{%- if PORT_ALL.append(port) %}{% endif %}
{%- endfor %}
{%- if PORT_ALL | sort_by_port_index %}{% endif %}
{%- set port_names_list_all = [] %}
{%- for port in PORT_ALL %}
{%- if port_names_list_all.append(port) %}{% endif %}
{%- endfor %}
{%- set port_names_all = port_names_list_all | join(',') -%}
{%- set PORT_ACTIVE = [] %}
{%- if DEVICE_NEIGHBOR is not defined %}
{%- set PORT_ACTIVE = PORT_ALL %}
{%- else %}
{%- for port in DEVICE_NEIGHBOR.keys() %}
{%- if PORT_ACTIVE.append(port) %}{%- endif %}
{%- endfor %}
{%- endif %}
{%- if PORT_ACTIVE | sort_by_port_index %}{% endif %}
{%- set port_names_list_active = [] %}
{%- for port in PORT_ACTIVE %}
{%- if port_names_list_active.append(port) %}{%- endif %}
{%- endfor %}
{%- set port_names_active = port_names_list_active | join(',') -%}
{%- set pfc_to_pg_map_supported_asics = ['mellanox', 'barefoot', 'marvell'] -%}
{
{% if generate_tc_to_pg_map is defined %}
{{- generate_tc_to_pg_map() }}
{% else %}
"TC_TO_PRIORITY_GROUP_MAP": {
"AZURE": {
"0": "0",
"1": "0",
"2": "0",
"3": "3",
"4": "4",
"5": "0",
"6": "0",
"7": "7"
}
},
{% endif %}
"MAP_PFC_PRIORITY_TO_QUEUE": {
"AZURE": {
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7"
}
},
"TC_TO_QUEUE_MAP": {
"AZURE": {
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7"
}
},
"DSCP_TO_TC_MAP": {
"AZURE": {
"0" : "1",
"1" : "1",
"2" : "1",
"3" : "3",
"4" : "4",
"5" : "2",
"6" : "1",
"7" : "1",
"8" : "0",
"9" : "1",
"10": "1",
"11": "1",
"12": "1",
"13": "1",
"14": "1",
"15": "1",
"16": "1",
"17": "1",
"18": "1",
"19": "1",
"20": "1",
"21": "1",
"22": "1",
"23": "1",
"24": "1",
"25": "1",
"26": "1",
"27": "1",
"28": "1",
"29": "1",
"30": "1",
"31": "1",
"32": "1",
"33": "1",
"34": "1",
"35": "1",
"36": "1",
"37": "1",
"38": "1",
"39": "1",
"40": "1",
"41": "1",
"42": "1",
"43": "1",
"44": "1",
"45": "1",
"46": "5",
"47": "1",
"48": "6",
"49": "1",
"50": "1",
"51": "1",
"52": "1",
"53": "1",
"54": "1",
"55": "1",
"56": "1",
"57": "1",
"58": "1",
"59": "1",
"60": "1",
"61": "1",
"62": "1",
"63": "1"
}
},
"SCHEDULER": {
"scheduler.0": {
"type" : "DWRR",
"weight": "14"
},
"scheduler.1": {
"type" : "DWRR",
"weight": "15"
}
},
{% if asic_type in pfc_to_pg_map_supported_asics %}
"PFC_PRIORITY_TO_PRIORITY_GROUP_MAP": {
"AZURE": {
"3": "3",
"4": "4"
}
},
{% endif %}
"PORT_QOS_MAP": {
{% for port in PORT_ACTIVE %}
"{{ port }}": {
"dscp_to_tc_map" : "[DSCP_TO_TC_MAP|AZURE]",
"tc_to_queue_map" : "[TC_TO_QUEUE_MAP|AZURE]",
"tc_to_pg_map" : "[TC_TO_PRIORITY_GROUP_MAP|AZURE]",
"pfc_to_queue_map": "[MAP_PFC_PRIORITY_TO_QUEUE|AZURE]",
{% if asic_type in pfc_to_pg_map_supported_asics %}
"pfc_to_pg_map" : "[PFC_PRIORITY_TO_PRIORITY_GROUP_MAP|AZURE]",
{% endif %}
"pfc_enable" : "3,4"
}{% if not loop.last %},{% endif %}
{% endfor %}
}
}

View File

@ -1 +0,0 @@
SAI_INIT_CONFIG_FILE=/usr/share/sonic/hwsku/hx5-e3224f-24x1G+4x10G.config.bcm

View File

@ -1,2 +0,0 @@
m0 load 0 0x0 /usr/share/sonic/hwsku/linkscan_led_fw.bin
m0 load 0 0x3800 /usr/share/sonic/hwsku/custom_led.bin

View File

@ -1 +0,0 @@
Dell-E3224F t1

View File

@ -1,13 +0,0 @@
{
"FEATURE": {
"tam": {
"state": "disabled"
},
"telemetry": {
"state": "disabled"
},
"nat": {
"state": "disabled"
}
}
}

View File

@ -1,4 +0,0 @@
CONSOLE_PORT=0x3f8
CONSOLE_DEV=0
VAR_LOG_SIZE=512
ONIE_PLATFORM_EXTRA_CMDLINE_LINUX="intel_iommu=off irqfixup"

View File

@ -1,7 +0,0 @@
# LED microprocessor initialization for Dell E3224F
#
#
#Led0
#led auto on
m0 load 0 0x3800 /usr/share/sonic/hwsku/custom_led.bin
led start

Some files were not shown because too many files have changed in this diff Show More