Commit Graph

1926 Commits

Author SHA1 Message Date
Myron Sosyak
0ab28bfd3d
Add thrift 0.13.0 (#8307)
#### Why I did it
To bump thrift version to 0.13.0, to fix some dependencies issues.

#### How I did it
As there are dependencies between thrift and saithrinft server  (bf3630316c/test/saithrift) which is used by syncd-rpc to update thrift version, I also need to make changes in saithrinft server, and then SAI ref point should be updated in sairedis, and then sairedis ref point should be updated too. It is too many change, so I decided to add thrift 0.13.0 as separeate target to be able to work and test father changes in saithrinft and one when appropriate changes will be merged to SAI and ref points will be updated I will squash this and the old thrift target.  I was not able to build thrift deb pkg by original rules, so I copied `debian `folder from the old version and tune it for newer one.

#### How to verify it
```
make init
make configure PLATFORM=vs
make target/debs/buster/libthrift_0.13.0_amd64.deb
```

```
2021-09-01 06:10:14 -07:00
vdahiya12
c7fcbe1ab3
[sonic-platform-daemons][sonic-platform-common] submodule update (#8577)
This PR updates the following commits in sonic-platform-daemons

e038bc2 [xcvrd] initial support for integrating vendor specfic class objects for calling Y-Cable API's inside xcvrd (#197)
57e3d78 Fix issue#8230 (#210)
f63fc94 [thermalctld] Use interval set in thermal policy if available (#164)
8b2227d [CI] Sum up Azp unit test code coverage (#209)
b880c48 [xrcvd]: Added unit test for sfp oir events (#205)
4a32b5a [y-cable] fix for logging the xcvrd metrics before writing the state to the State-DB (#208)
53e1532 (origin/shilong-test) Add str conversion for numeric xcvr info fields to xcvrd (#200)
03a4add Introduce mgmtinit delay after transceiver module insertion (#201)

This PR updates the following commits in sonic-platform-common
0dc71c1 Add y-cable driver for simulated mux (#213)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-08-30 15:56:41 -07:00
Shi Su
1b1be0292e
[sonic-sairedis] Update submodule (#8592)
Update the sonic-sairedis submodule. The following is a list of new commits in the submodule.

f85322e Advance SAI submodule (#911)
66c1a3d [syncd] Check warm vids right after discover (#907)
1020de7 Change the log severity leve from ERROR to NOTICE if getStatus is not supported by vendor (#908)
5349a9d Add support for BFD notification (#903)
6ff9100 [MACsec]: Fix Bug: MACsec device will be terminated exceptionally if the MACsec port was disabled in runtime (#875)
b91f75f [sairedis] Add warning on double switch id allocation
518b93a [tests] Adapt tests to armhf arch
36106e9 [vslib] Unify bulkCreate for entries with perf timer
88cf0f7 [vslib] Remove dead code
f282690 Simplify declare every entry macro reuse
b28e5e3 [tests] Add missing memory header
980bba4 Add missing pyext in makefile
00ffa62 Update aspell
4a5d3b5 Add SwitchBCM81724 tests
8a7b712 Remove dead code from SwitchBCM81724
71834d2 Fix supported object list size bug on SwitchBCM81724
0da464b Add SwitchBCM56850 tests
4d7956b Add SwitchMLNX2700 tests
2e418ab [saivs] Refactor headers
a4b15a6 Correct entry in SaiUnittests
b5a2f63 Update aspell
923ab2f Add SwitchContainer tests
484beb1 Add Switch tests
cc2e078 Add SwitchConfig tests
724ce74 Add TrafficFilterPipes tests
03e4923 Add HostInterfaceInfo tests
5db4e72 Add TrafficForwarder tests
1b4d6d1 Add SwitchConfigContainer tests
7a32cd6 Add Signal tests
7c016f0 Add SelectableFd tests
21e735d Update SaiUnittests tests
353a058 Add SaiUnittests tests
5572102 Fix ContextConfigContainer tests
0fd06c9 Move error to throw on sai unittests
3c3b369 Add db channel from context config to VS
330c561 Fix ResourceLimiterContainer
30f5825 Add missing files for ResourceLimiter tests
8a871ee Update aspell
467e228 Add ResourceLimiterParser tests
f6b35da Add ResourceLimiterContainer tests
99f04e9 Remove default ctr/dtr from struct MACsecManager
9381f2d Add ResourceLimiter tests
ab2ef9d Add RealObjectIdManager tests
5f6b004 Add NetMsgRegistrar tests
8142375 Add MACsecIngressFilter tests
888197d Add MACsecEgressFilter tests
8ed6e36 Add MACsecAttr tests
b14b598 Add LaneMapFileParser tests
38a52ac Add LaneMapContainer tests
2997892 Add LaneMap tests
734c7ef Add SaiAttrWrap tests
c6e7ac0 Add FdbInfo tests
7ed640d Add EventQueue tests
752d424 Add EventPayloadPacket tests
85042f4 Add EventPayloadNetLinkMsg tests
8bf97ed Add CorePortIndexMapFileParser tests
ff7c6c5 Add CorePortIndexMapContainer tests
4598078 Add CorePortIndexMap tests
d6f7435 Add vslib ContextConfigContainer tests
bc27a04 Add sairedis api tests
9a96cd7 Fix tam tests
a3bc56e Move tam api to separate test
9d1032b Add sairedis tam api tests
f1570e5 Add sairedis lib tests
91ce42c Check for null pointer on bulk entries apis
78252c7 Update interface query tests
cf956b6 Fix error code on dbg dump
e7e1d80 Fix api query when unspecified api passed
cd93183 Tests rename fix qosmaps to qosmap
5e9e0c9 Rename fix qosmaps to qosmap
5b67e6b Add virtual router tests
0d946cf Fix lag tests
27bbde7 Add udf tests
31a3613 Add tunnel tests
3366e47 Update tam tests
5b06fb3 Add tam tests
02d6d89 Add system port tests
9224e13 Add switch tests
c2c0af8 Add stp tests
2192040 Add segment route tests
702dff6 Add scheduler group tests
24e3d92 Add sample packet tests
fda4f80 Add rpf group tests
5ecab66 Add router interface tests
9114865 Add route tests
895129e Add queue tests
e01707f Add qos map tests
8162205 Add port tests
46d15e9 Add policer tests
36cf6d1 Add next hop group tests
2200e38 Add next hop tests
1b2bf3c Fix lag tests
27a2b90 Add neighbor tests
fc28438 Add nat tests
7468777 Add mpls tests
82ca7e5 Add mirror tests
adbcfd9 Add mcast fdb tests
d624231 Add macsec tests
72cfe42 Add lag tests
9f1b54b Add l2mc group tests
d16bc95 Add l2mc tests
3d07e59 Fix isolation tests
85e5ac0 Add isolation group tests
1c4c11f Add ipcm group tests
b6ed3e0 Add ipcm tests
78e8b68 Add fdb tests
8af035b Add dtel tests
b56c601 Add counter tests
7c61b13 Add buffer tests
fe6a041 Add bridge tests
ec96469 Add bmtor tests
f6d5d7d Add bfd tests
d3419e0 Add acl tests
14a26b1 Add hash and hostif tests
18a09f9 Move hostintf to hostif name in lib and libvs
a02b593 Add vs vlan tests
3122b37 Update wred tests
312627f Remove comments from test makefile
466a589 Update unittests
2418585 Preapre unittests skeleton
31718cf [unittest] Add unittest skeleton
a4e2d28 [syncd] Fix defines in Makefile.am
a4bc9e4 Remove unnecessary include from Makefiles
b2e368e Update debian/libsaimetadata-dev.install
222a5b0 Update .gitignore
f77ed71 Bring back pyext module
6942de0 Propagate inc and src merge
378bfff Merge include and src for lib and vslib
89c004a Whitespace refactor
3b02209 Simplify SaiInterface macros
b7ec50a Add find cross include tool
ce6ad22 Remove unnecessary include from SaiInterface.h
8172de2 Remove unnecessary comments for include
50bfd42 Move common SAI includes to configure.ac
f40a168 Refactor Makefile.am files even more
c91b117 [pyext] Update Makefile.am with top_srcdir
0a0ff45 [sairedis] Update Makefile.am
7b1a0b9 Rename saiserialize.cpp to SaiSerialize.cpp
47dac40 [vslib] Move sai_vs.cpp to sai_vs_interfacequery.cpp
39d003c Add check for configure conflict code-coverage/enable-debug
add29e0 Move DBGFLAGS initialization to configure.ac
e75abb7 Refactor all Makefile.am
9bb541a Remove white spaces from line endings
2e0b74b Add TODO for future split single file binaries
5b71d21 Propagate Notifications changes
aaa519f Move Notificatios to libsaimeta
855be73 Move SelectableChannel classes to libsaimeta
016b5d9 [tests] [sairedis] Update include to use direct name
0fffcb0 Propagate PerformanceIntervalTimer changes
9d17b0a Move PerformanceIntervalTimer to libsaimeta
cc5ab4c Move joinFieldValues to libsaimeta
638ca82 Move getHardwareInfo to libsaimeta
3951504 [vslib] Fix VirtualObjectIdManager multi arch logging
5b888a3 Remove unused SAIFLAGS from makefiles
c9f05ea Remove ../ from includes
737393d Move SaiInterface to meta directory
e13991a [debian] Update install to include only sai*.h files
8e3a8fb [meta] Make swap lib naming for better read in Makefile.am
f1b632c Update autoclean.sh
6f319f8 Update .gitignore
2021-08-28 16:57:04 -07:00
Shi Su
f78f6772f9
[sonic-swss-common] Update submodule (#8591)
[schema] Add BFD session table
2021-08-26 12:53:51 -07:00
Praveen Madhusudhana
92d4bfef10
[yang]: SONiC Yang model support for LLDP (#8120) 2021-08-26 10:30:59 -07:00
Qi Luo
48da159616
Simple refactor test code hostcfgd_test.py (#8515)
Simple refactor test code
2021-08-26 08:06:00 -07:00
Shilong Liu
c44dbf0fe0
[build] Fix reproducible build issues (#8548)
* [build] Fix reproducible build issues
2021-08-26 18:21:18 +08:00
Junchao-Mellanox
442bf5fe1d
[submodule] Update submodule pointer for sonic-linux-kernel (#8576)
0fe396e [Mellanox] Remove incorrectly generated patch allegedly avoiding kernel deadlock but causes one (#231)
2021-08-25 13:20:40 -07:00
Renuka Manavalan
7c44033550
[submodule]: update sonic-utilities (#8560)
* e12c1c8 (origin/master, origin/HEAD) disk_check: Script updated (#1747)
* 27502f0 [dhcp_relay] Update CLI reference document and add a new API for ip address type (#1717)
* cd3ee78 [Config] Update config command of kdump (#1700)
* 4cb3b72 [Show] Update the subcommands of Kdump. (#1682)
* c03342f [sfputil] Gracefully handle improper 'specification_compliance' field (#1741)
* 103de86 [CLI][MPLS][Show] Fixed show and config mpls cli bug where invalid interfaces would pasâ#1770)
* 04cc047 [route_check] Filter out VNET routes (#1612)
* 9395ebd [show][platform] Revise chassis info fallback to only fall back on pmon crash (#1751)
2021-08-24 23:10:09 -07:00
shlomibitton
948ad541da
Update sonic-swss-common submodule (#8565)
508202b 2021-08-24 Add a new field for FLEX_COUNTER_TABLE to indicate delay for flex counters (#523)
9fd7dbf 2021-08-20 [logger] Make map access thread safe and proper terminate thread (#510)
e4c3d0b 2021-08-20 Test with coverage output, publish gcov on Azure pipelines (#517)
ef21bec 2021-08-18 Update schema.h to include config_db DHCP and state_db counter table (#521)
4e4eb9d 2021-08-19 [schema] Add next hop group table to schema (#475)

Signed-off-by: Shlomi Bitton <shlomibi@nvidia.com>
2021-08-24 18:03:08 -07:00
vdahiya12
92dbbf1e3a
[sonic-platform-common] submodule update (#8559)
Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>

c17c370 [Y-Cable][Broadcom] Broadcom implementation of YCable class which inherits from YCableBase required for Y-Cable API's in sonic-platform-daemons (#208)
2021-08-24 11:14:35 -07:00
shlomibitton
5ff87e16a9
[sonic-utilities] submodule update (#8557)
27502f0 2021-08-23 [dhcp_relay] Update CLI reference document and add a new API for ip address type (#1717)
2021-08-24 00:01:37 -07:00
Lior Avramov
f5ec889f59
[sonic-cfggen] Allow cfggen to work on system without ports (#7999)
#### Why I did it
Allow cfggen to work on system without ports in platform.json or in port_config.ini

#### How I did it
Add json write of PORT section only if the dictionary that contains the ports is not empty.  

#### How to verify it
sonic-cfggen -k ACS-MSN3700 -H -j /etc/sonic/init_cfg.json --print-data
2021-08-23 03:28:59 -07:00
Prince George
26c6e7f68f
submodule update for sonic-linux-kernel (#8544)
Signed-off-by: Prince George <prgeor@microsoft.com>
2021-08-23 09:55:15 +05:30
Saikrishna Arcot
07a0a0958e
ifupdown2: Don't check for new IP addresses if dhcp-wait is set to no (#8535)
Add a patch in ifupdown2 such that if DHCP is used for an interface, and
the policy setting sets dhcp-wait to no (meaning don't wait for dhclient
to acquire an IP address), then don't check to see if the interface has
a new IP address, since dhclient will still be working.

Fixes #8512.

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2021-08-20 20:28:35 -07:00
kellyyeh
dab9c6983c
Changed DHCP table name to DHCP_RELAY (#8476)
* Changed DHCP table name to DHCP_RELAY
2021-08-20 09:18:48 -07:00
kellyyeh
f0e640f7e6
Add DHCPv6 Relay Agent (#8251)
* Added DHCPv6 Relay

* Added DHCPv6 Counter
2021-08-20 09:11:40 -07:00
SuvarnaMeenakshi
348d2a7cf5
[sonic-utilities]: Advance submodule (#8505)
Why I did it
Update sonic-utilities submodule to include below commits:
29f4a16 Global and Interface commands for IPv6 Link local address enhancements (#1159)
a99d56d Improve config error handling on version_info (#1760)
5002745 Load the database global_db. (#1752)
Signed-off-by: Suvarna Meenakshi <sumeenak@microsoft.com>
2021-08-19 11:22:31 -07:00
Junhua Zhai
0d84f13cbc
[submodule]: update sonic-sairedis to latest (#8516)
For gearbox support on arista_7280cr3mk, the following commit in sonic-sairedis is needed:
2021-07-21 c20321c Kamil Cudnik: [meta] Allow objects with the same key exist on different switches (#865)
2021-08-18 11:35:25 -07:00
minionatwork
3f095f1699
[multi-asic] Fix for sonic-cfggen exception during platform string read (#8229)
Fix for sonic-cfggen exception during platform string read during fresh install and start of sonic in multi asic, /var/run/redisX/ is created after database docker is started.
2021-08-17 19:01:01 -07:00
Guohan Lu
e6ea527acd
[submodule]: update sonic-utilities (#8494)
* 0a145e8 2021-08-17 | Revert "[config][generic-update] Implementing patch sorting (#1599)" (HEAD, origin/master, origin/HEAD) [Guohan Lu]
* dbcc6fd 2021-08-16 | [config reload]: fix the condition for checking if system is starting (#1766) (HEAD, origin/master, origin/HEAD) [Guohan Lu]
* 2c7cfaa 2021-08-17 | [sonic-package-manager] switch from poetry-semver to semantic_version due to bugs found in poetry-semver (#1710) [Stepan Blyshchak]
* 7821a3f 2021-08-13 | [vnet_route_check] don't hardcode prefix length of /24 (#1756) [Stepan Blyshchak]
* 4175cb9 2021-08-11 | [show priority-group drop counters] Add user info output when user want to check PG counters and polling are disabled (#1678) [Andriy Yurkiv]
* 920bb87 2021-08-10 | [config][generic-update] Implementing patch sorting (#1599) [Mohamed Ghoneim]
* 30907c4 2021-08-06 | [config][interface][speed] Fixed the config interface speed in multiasic issue (#1739) [Marty Y. Lok]
* 4b88e0e 2021-08-06 | [minigraph] Donot enable PFC watchdog for MgmtTsToR (#1734) [Blueve]

Signed-off-by: Guohan Lu <lguohan@gmail.com>
2021-08-17 15:46:00 -07:00
Vaibhav Hemant Dixit
b67b69bede
[advance submodule] Update sonic-swss master head to latest (#8486)
Update sonic-swss submodule to include the latest changes:

Add autoconf-archive package to lgtm Azure/sonic-swss#1868
[cfgmgr] Update Makefile.am to consume lib zmq Azure/sonic-swss#1864
Fix warmboot issue PR##8367 Azure/sonic-swss#1866
2021-08-16 17:00:09 -07:00
Stepan Blyshchak
8a2ba14677
[libteam][warm-reboot] fix issue in teamd warm-reboot that teamd starts (#8227)
with state of tdport from previous warm-reboot.

In case LAG was down before reboot, lacp->wr is not cleared.
In lacp_event_watch_port_flush_data we incremented nr_of_tdports and add
tdport to lacp->wr.state. In case lacp->wr.state already had this tdport
we do not set new state for tdport but appened a new item in
lacp->wr.state. In case we preformed warm-reboot and PortChannel member
was down, after reboot PortChannel member became up next warm-reboot
will initialize teamd with PortChannel member in down state.

Fix this issue by calling stop_wr_mode() when LAG was down. This was probably intended but missed.

#### Why I did it

To fix an issue seen in warm-reboot-sad test cases.

#### How I did it

I fixed it in SONiC libteam patch that adds warm-reboot support. Details in commit description.

#### How to verify it

Run warm-reboot-sad test on t0-56 topology.
2021-08-16 02:54:09 -07:00
Praveen Chaudhary
144a7bcaf8
[sonic-frr]: Checkout gracefully if branch exists already. (#8289)
If branch exist already, today FRR build fails. Branch may exist on rebuild.
With this PR, we will Checkout branch gracefully if branch exists already.

Signed-off-by: Praveen Chaudhary<pchaudhary@linkedin.com>
2021-08-15 00:01:31 -07:00
Christian Svensson
e42f93b446
[frrcfgd]: Fix constant casing for prefix-list mode (#8454)
Fix #6943

This change makes the template match PREFIX_SET and the documentation.

Signed-off-by: Christian Svensson <blue@cmd.nu>
2021-08-12 23:34:27 -07:00
Saikrishna Arcot
c8b5daed27 Upgrade to ifupdown2 3.0.0 with a patch to fix using broadcast addresses
In version 3.0.0, If a broadcast address is specified in
/etc/network/interfaces, then when ifup is run, it will fail with an
error saying `'str' object has no attribute 'packed'`. This appears to
be because it expects all attributes for an interface to be "packable"
into a compact binary representation. However, it doesn't actually
convert the broadcast address into an IPNetwork object (other addresses
are handled).

Therefore, convert the broadcast address it reads in from a str to an
IPNetwork object.

Also explicitly specify the scope of the loopback address in
/etc/network/interfaces as host scope. Otherwise, it will get added as
global scope by default. As part of this, use JSON to parse ip's output
instead of text, for robustness.

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2021-08-12 23:18:01 -07:00
Saikrishna Arcot
d5fa614648 Fix tacacs build in Bullseye
strncpy calls need to be mindful about the destination buffer size
passed in and doing an explicit null termination.

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2021-08-12 23:18:01 -07:00
vdahiya12
b5041a31f7
[sonic-platform-common] submodule update (#8452)
This PR for submodule update adds the following commits
ce51894 [Y-Cable] add the definition inside setup.py to include sonic_y_cable.credo as a package (#211)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-08-12 23:16:11 -07:00
Shi Su
b7c6d70a4e
[FRR]: Upgrade FRR to frr-7.5.1-s1 tag (#8443)
Update FRR 7.5.1 head.
2021-08-12 21:41:04 -07:00
Venkatesan Mahalingam
f73ffa0913
[DPB] Allow BGP_NEIGHBOR YANG model with just IP as the key (#7992)
Why I did it
[DPB] BGP_NEIGHBOR yang model causing DPB errors.

How I did it
Allowed the BGP_NEIGHBOR list with just IP as the key to allow the current BGP neighbor table in the community.

How to verify it
Built the SONIC YANG models.
2021-08-12 21:39:01 -07:00
kellyyeh
520c02b09c
Parse DHCP table (#8268) 2021-08-12 14:32:23 -07:00
Andriy Yurkiv
141dcbf594
[sonic-swss] submodule update (#8434)
d8ca31c (origin/master, origin/HEAD, master) [vnet/vxlan] Add support of multiple mappers for the VxLAN tunnel (#1843)
7280e19 [orchagent][ports] Add port reference increment / decrement to lag member add / remove flows (#1825)
0217b66 [nhg]: Add support for weight in nexthop group member. (#1853)
df96059 VOQ: Nexthop for remote VOQ LC should be created on inband OIF. (#1823)
8f7ea14 Code changes to support IPv6 Link local enhancements (#1463)
8674b3c Open record file in append mode (#1845)
Signed-off-by: Andriy Yurkiv <ayurkiv@nvidia.com>
2021-08-12 11:13:24 -07:00
carl-nokia
7432e477c0
[sonic-device-data]: add port_type to OPTIONAL_PORT_ATTRIBUTES (#8370)
enable automated test suites to selectively run relevant tests ( or not run tests ) based upon a new port_type identifier in hwsku.json

How I did it
Modified the valid optional fields in validity check for hwsku.json per recommendation from Joe in
https://github.com/Azure/sonic-mgmt/pull/2654/files

Co-authored-by: Carl Keene <keene@nokia.com>
2021-08-11 02:13:15 -07:00
Rajkumar-Marvell
d6433d1adc
[reboot-cause] Fixed determine-reboot-cause.service failure. (#8210)
Signed-off-by: Rajkumar Pennadam Ramamoorthy rpennadamram@marvell.com

Why I did it
Install sonic image from ONIE. Once system is up, execute "config reload" command.

Root cause is that "determine-reboot-cause.service" was in failed state.
root@sonic:/host/reboot-cause# systemctl list-units --failed
UNIT LOAD ACTIVE SUB DESCRIPTION
● determine-reboot-cause.service loaded failed failed Reboot cause determination service

How I did it
Fixed the issue by setting default reason to "REBOOT_CAUSE_UNKNOWN" instead of "None".

How to verify it
Check " determine-reboot-cause.service' loaded successfully post image installation from ONIE.
Verify "reboot-cause.txt" file is created and config reload succeeds.
2021-08-10 11:22:09 -07:00
shlomibitton
76d5223c9a
[hostcfgd] Delay hostcfgd and aaastatsd for faster boot time (#7965)
#### Why I did it
hostcfgd is starting at the same time as 'create_switch' method is called on orchagent process.
This introduce a degradation on the function execution time which eventually cause the fast-boot flow and a boot scenarion in general to run slower (~6 seconds).
This change will delay the start time of this daemon.
The aaastatsd will delay as well since it has a dependency on hostcfgd, so it is required to delay both.
90 seconds determined as the maximum allowed downtime for control plane to come back up on fast-boot flow.

#### How I did it
Add two timers for hostcfgd and aaastatsd  services in order to delay the startup of these services.

#### How to verify it
Install an image with this change and observe the daemons start 90 seconds after the system boot.
2021-08-10 04:22:58 -07:00
vdahiya12
8275f297ef
[sonic-platform-common] submodule update (#8396)
This PR updates the following commits

cd3cca7 [Y-Cable][Credo] Credo implementation of YCable class which inherits from YCableBase required for Y-Cable API's in sonic-platform-daemons (#203)
bd694b2 Load interval from thermal_policy.json (#178)
c43dc17 [sonic_y_cable] add abstract class YCableBase required for Y-cable API support for multiple vendors (#186)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-08-10 00:34:55 -07:00
tjchadaga
504de9f305
Fix TH3 Warm-reboot failure due to Tunnel termination SAI failure (#8395) 2021-08-09 19:26:50 -07:00
trzhang-msft
105ef78ffa
fix (#8393) 2021-08-09 17:42:38 -07:00
lguohan
4e0b2751a8
[openssh]: move build dep installation to sonic-slave-buster (#8381)
install build dep causes dpkg lock issue in parallel build

Signed-off-by: Guohan Lu <lguohan@gmail.com>
2021-08-09 13:48:18 -07:00
trzhang-msft
62347850be
test dhcp acl (#8359) 2021-08-09 11:20:26 -07:00
trzhang-msft
8608af711d
caclmgrd: monitor state_db to update dhcp acl (#8222)
* monitor mux_cable_table in state_db to update dhcp acl
2021-08-07 10:45:02 -07:00
Ying Xie
6b4fe48693
[utilities] advance utilities submodule head (#8356)
Advance utilities submodule head to include:
* b540f5f 2021-08-05 | [fast-reboot] revert the change of disabling counter polling before fast-reboot (#1744) (HEAD -> master, github/master) [Ying Xie]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2021-08-07 03:20:57 -07:00
Neetha John
9acf0744a1
Revert "Revert "Update default cable len to 0m for TD2"" (#8354)
* Update default cable len to 0m for TD2 (#8298)
* Update sonic-cfggen tests with the correct cable len

Signed-off-by: Neetha John <nejo@microsoft.com>

As part of the buffer reclamation efforts for TD2, setting the default cable len to 0m which means unused ports will have a cable len of 0m.

Why I did it
To align with the changes in Azure/sonic-swss#1830

How to verify it
- With the default cable len set to 0m and the associated changes in swss, CABLE_LENGTH table had '0m' set for unused ports and accordingly more space was reserved for the shared pool
- Cfggen tests passed with the cable len update
2021-08-06 10:36:10 -07:00
ArthiSivanantham
9a13200383
SONiC Yang model for sFlow feature (#7473)
* SONiC YANG model support for sFlow feature.
Signed-off-by: Arthi Sivanantham <arthi_sivanantham@dell.com>
2021-08-06 10:32:11 -07:00
arlakshm
302f889415
[multi-asic]: remove load_sonic_global_db_config calls (#8173)
#### Why I did it
Remove the call to `SonicDBConfig.load_sonic_global_db_config()` in the multi asic functions.
The expection is the client calling this function will call `SonicDBConfig.load_sonic_global_db_config()`

This PR is dependent on the PR https://github.com/Azure/sonic-utilities/pull/1712 
#### How to verify it
compile sonic-utilities
2021-08-06 00:55:52 -07:00
bingwang-ms
948ba5bd08
[submodule]: update sonic-utilities (#8348)
This PR is to update sonic-utilities for master branch
Changes including
```
54b74a2 [LLDP] Fix lldpshow script to enable display multiple MAC addresses on the same remote physical interface (#1657)
0d53b7a [sonic_installer] don't print errors when installing an image not supporting app ext (#1719)
394e2fb Implement script null_route_helper (#1737)
```

Signed-off-by: bingwang <bingwang@microsoft.com>
2021-08-05 19:04:39 -07:00
Qi Luo
1fd09bb7bc
[sonic-snmpagent] Update submodule (#8349)
Includes below commits:
```
43b5e1a 2021-08-04 | CPU Spike because of redundant and flooded keyspace notifis handled (#230) [Vivek Reddy]
4d6bb79 2021-08-02 | Non-block reading counters to tolerate corrupted/delayed counters in COUNTERS_DB (#229) [Qi Luo]
```
2021-08-05 18:39:36 -07:00
Qi Luo
1270da8afd
[sonic-swss-common] Update submodule (#8344)
Includes below commits
```
e95a466 2021-08-04 | Fix: DBInterface::get() return nullable strings (#516) [Qi Luo]
f89b2ac 2021-07-29 | [netlink]refill netlink cache when failing to get the link object by name. (#506) [wangshengjun]
22b8715 2021-07-26 | Fix test_ConfigDBSubscribe timing risk (#512) [Qi Luo]
27dbcea 2021-07-26 | added missing headers for building with gcc-10.3 (#494) [Denis Pronin]
7f6ab6d 2021-07-25 | Modify the hardcode separator ":" to variable. (#473) [PJHsieh]
```
2021-08-05 07:53:45 -07:00
Praveen-Brcm
1bc3fdbf25
Updating sonic-swss submodule (#8340)
Mclag enhacements support code changes. (#1331)
[crm] Fix for Issue Azure/sonic-buildimage#8036 (#1829)
2021-08-04 18:10:10 -07:00
Raphael Tryster
2bb9f0b314
[build]: Fix changelong for systemd-sonic-generator (#8317)
Malformed changelog file causes build to fail when SONIC_PROFILING_ON = y.

Signed-off-by: Raphael Tryster <raphaelt@nvidia.com>
2021-08-04 10:00:43 -07:00
Renuka Manavalan
08ffa01de8
[submodule]: Update submodule sonic-utilities (#8311)
Included commits:
* dd01b56 disk_check updates: 
* 8a74d03 [CLI][show][bgp] Fix the show ip bgp network command 
* 679a4ba [MACsec]: Allow upgrade-docker for macsec container
* e9c73e8 [CLI][MPLS][Show] Added multi ASIC support for 'show mpls command'.
2021-08-04 09:54:35 -07:00
jusherma
e13f5246b9
[build] Always use -j1 for libsnmp to avoid race condition (#8324)
I have been seeing intermittent (~40%) build failures with the same error described in PR https://github.com/Azure/sonic-buildimage/pull/6592, even with that fix present

```
/usr/bin/ld: mibgroup/ip-forward-mib/ipCidrRouteTable/.libs/ipCidrRouteTable_interface.o: file not recognized: file truncated
...
libtool:   error: 'mibgroup/ip-forward-mib/inetCidrRouteTable/inetCidrRouteTable_interface.lo' is not a valid libtool object
make[5]: *** [Makefile:1020: libnetsnmpmibs.la] Error 1
make[5]: *** Waiting for unfinished jobs....
```

#### How I did it

Use `-j1` for the libsnmp build regardless of the value of `$(MULTIARCH_QEMU_ENVIRON)`

#### How to verify it

Performed 10 builds of the libsnmp target (`target/debs/buster/libsnmp-base_5.7.3+dfsg-5_all.deb`) with and without this change. Without the change, hit the error 40% of the time. With the change did not see the error at all

Signed-off-by: Justin Sherman <jusherma@cisco.com>
2021-08-04 00:56:29 -07:00
lguohan
75afb13ad3
[k8s]: disable http_proxy for docker by default (#8328)
disable http_proxy for docker by default. by default, we should not use proxy.

Signed-off-by: Guohan Lu <lguohan@gmail.com>
2021-08-04 00:30:43 -07:00
Praveen-Brcm
82b6bcfbb3
MCLAG enhacements ICCPd initial code commit (#4819)
* MCLAG enhacements ICCPd initial code commit
* Resolving the merge conflicts with orighin
* L3 MCLAG Enhancements and Unique IP Changes.
* Addressed review comments

Co-authored-by: Tapash Das <tapash.das@broadcom.com>
2021-08-03 17:32:50 -07:00
Vaibhav Hemant Dixit
4d92f94b19
[advance submodule] Update sonic-swss master head to latest (#8313)
Update sonic-swss submodule head to include below fixes:

Ignore ALREADY_EXIST error in FDB creation (Azure/sonic-swss#1815)
Update MACsec SA PN counter to support SAI API 1.8 (Azure/sonic-swss#1818)
[swss]: Allow portsyncd to run on system without ports (Azure/sonic-swss#1808)
[debugcounterorch] check if counter type is supported before querying… (Azure/sonic-swss#1789)
[configure.ac] Add the option of passing libnl path to configure script (Azure/sonic-swss#1824)
refactor(fdbsyncd): Convert files with dos2unix (Azure/sonic-swss#1828)
[VS] Fix for VS test failures (Azure/sonic-swss#1836)
Td2: Reclaim buffer from unused ports (Azure/sonic-swss#1830)
[gearbox] Set context for phys based on configs (Azure/sonic-swss#1826)
[Dynamic Buffer Calc] Bug fix: Don't create lossless buffer profile for active ports without speed configured (Azure/sonic-swss#1822)
Bridge mac setting, fix statedb time format (Azure/sonic-swss#1844)
[cfgmgr]: Introduce common libs. (Azure/sonic-swss#1842)
2021-08-03 09:10:22 -07:00
vdahiya12
2b5d3ab0bb
[sonic-utilities] submodule update (#8279)
this PR updates the following commits

c2ac2d2 [show] fix show muxcable metrics <port> for sorted output (#1731)
4422911 [fwutil]: Update command reference doc: per component FW update.
(#1708)
b83d2bf [minigraph][port_config] Use imported config.main and add
conditional patch (#1724)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-07-30 17:12:10 -07:00
abdosi
9bf577ae23
[submodule]: update telemetry submodule (#8282)
0443e66050256a87f8e92db7cd3c36cc139ebe14 (HEAD -> master, origin/master, origin/HEAD) Remove DB Directory removal as part of make clean (#84)
   085f29d1247f0333e6038751fa445b6068fcf987 Fix unhandled nil err check to prevent rpc causing a crash (#78)

Signed-off-by: Abhishek Dosi <abdosi@microsoft.com>
2021-07-29 16:53:41 -07:00
vganesan-nokia
25b31e1f4e
[bgpcfgd][voq] Fix for unit test failure in bgp config for voq switch (#8278)
The unit test failure was due to missing bgp graceful restart select
defer time configuration in voq_chassis.conf. Modified sample output
data file voq_chassis.conf to include this configuration.

Signed-off-by: vedganes <vedavinayagam.ganesan@nokia.com>
2021-07-29 07:59:01 -07:00
vganesan-nokia
f9231723f9
[multiasic][voq][bgpconf] Fix for the issue of same BGP router id in all asics (#8049)
For multiasic, the back end asics use ip addresss of Loopback4096 for BGP router id. In VOQ multi-asic chassis there are no back end asics. All the asics are front end and the iBGP connections are established via Ethernet-IB of asics. Since these asics are not designated as BackEnd, the ip address of interface Loopback0 is used as BGP router id. Since the ip address of Loopback0 is same for all the asics in the line card, same router id is used for voq iBGP configurations and hence the iBGP connections are not established. Changes are done to fix this
2021-07-26 12:54:52 -07:00
vganesan-nokia
d78382b47c
[voq][minigraph] Add admin_status attribute for inband interface (#8050)
Why I did it
In the config_db.json generated by minigraph "admin_status" attribute is missing for the VOQ inband interface port in the PORT table.

How I did it
Changes done to add admin_status attribute for voq inband interface port, if it exists in the PORT table keys.
2021-07-26 11:32:40 -07:00
Shi Su
8a48be9b74
Reduce route selection deferral timer for bgp graceful restart (#7533)
Why I did it
There are scenarios that End-of-RIB comes from a part of the peers arrives after reconciliation. In such scenarios, if the route selection deferral timer has the default value of 360 seconds, FRR would not set up routes and all routes would be removed after reconciliation. This PR reduces the route selection deferral timer so that at least routes to parts of the peers get restored at the point of reconciliation.

Fix #7488

How I did it
Reduce route selection deferral timer for bgp graceful restart to 15 seconds.
2021-07-26 10:16:19 -07:00
shlomibitton
bef5477d0f
[dhcp_relay] Enhance DHCP monitor application to support DHCPv6 (#8060)
#### Why I did it

Enhance DHCP monitor application following the implementation PR: https://github.com/Azure/sonic-buildimage/pull/7772

#### How I did it

Add the support for monitoring DHCPv6 packets.

#### How to verify it

Install an image with this PR and the implementation PR.
2021-07-26 08:41:20 -07:00
SuvarnaMeenakshi
a3a7944543
[sonic-saidredis]: Advance submodule (#8153)
Update sonic-sairedis submodule to include below commits:
84fa50a Revert "[vs]: Start syncd by passing context configuration file and global context index. (#832)" (#859)
736dc3b Remove redudnant mention of platform cisco-8000 (#856)
969ad94 Support for cisco-8000 platform for sonic-sairedis/syncd (#823)
1eacd05 [sairedis] Client/Server add support for SAI stats api (#855)
59fedfa [sairedis] Client/Server support SAI fdb flush api (#853)
5c2aaae [syncd] bulk OID remove requires RID (#854)
7da0894 [sairedis] Client/Server support SAI query API (#848)
443ad36 [sairedis] Style refactor cleanup (#850)

Signed-off-by: Suvarna Meenakshi <sumeenak@microsoft.com>
2021-07-24 16:37:46 -07:00
賓少鈺
aa59bfeab7
[PDE]: introduce the SONiC Platform Development Env (#7510)
The PDE silicon test harness and platform test harness can be found in
src/sonic-platform-pdk-pde
2021-07-24 16:24:43 -07:00
Stepan Blyshchak
5361794ffd
[sonic-cfggen] remove lazy_re workaround due to many optimizations done (#8226)
lazy_re had an issue when importing sonic-cfggen in another application that
uses re.search(). There is no much improvement of lazy_re today after many 
other good optimization work done for sonic-cfggen. It served as a quick 
temporary solution.

Some quick test for fast-reboot and warm-reboot done on top of 201911 branch:

Fast-reboot: from ASIC reset to ports in up state:
with lazy_re: 18 sec
without lazy_re: 18 sec

Warm-reboot: LAG restoration time:
with lazy_re: 73 sec
without lazy_re: 72 sec

So, there is no real optimization since the number of sonic-cfggen calls is greatly 
reduced in latest SONiC. This means it is time to revert this change.

Signed-off-by: Stepan Blyschak <stepanb@nvidia.com>
2021-07-24 05:35:09 -07:00
Qi Luo
f5d9df0d5d
[sonic-swss-common] Update submodule (#8246)
Includes below commits

a90529f 2021-07-22 | Fix DBInterface blocking operations (#505) [Qi Luo]
e6a0a56 2021-07-20 | Reimplement swig properties (#504) [Qi Luo]
a0ed7a0 2021-07-19 | modify the logger for more flexable change of log level (#498) [emil mihaylov]
2021-07-22 11:50:24 -07:00
DavidZagury
dec8803546
[sonic-platform-common] Update submodule (#8240)
To include:
> e168f1d 2021-07-19 pettershao-ragilenetworks: [python coverage] fix result color bar (Azure/sonic-platform-common#202)
> 87c81de 2021-07-13 Prince George: Fix Xcvrd crash due to invalid key access in type_of_media_interface, host_electrical_interface, connector_dict (Azure/sonic-platform-common#206)
> 4533f82 2021-06-21 ngoc-do: Add a template function that returns list of asics on module (Azure/sonic-platform-common#185)
> 1e860c5 2021-06-18 Aravind Mani: Fix decode error when parsing EEPROM fields (Azure/sonic-platform-common#199)
> 93641f3 2021-06-17 Sujin Kang: Unifying the platform api for get_pcie_aer_stats with PcieBase (Azure/sonic-platform-common#197)
2021-07-22 06:58:41 -07:00
arlakshm
c31c869fc8
[sonic-utilities] Update submodule (#8237)
This update includes the following commits

acb5d84 Neetha John     2021-07-20      [configlet] Python3 compatible syntax for extracting a key from the dict (#1721)
9b7c58b arlakshm        2021-07-20      Load the  database global_db only once for show cli  (#1712)

Signed-off-by: Arvindsrinivasan Lakshmi Narasimhan <arlakshm@microsoft.com>
2021-07-21 15:20:37 -07:00
Akhilesh Samineni
a31ee03bbe
FRR patches to support IPv6 Link local enhancements. (#5584)
As per HLD - Azure/SONiC#625

FRR Patches:

0009-Link-local-scope-was-not-set-while-binding-socket-for-bgp-ipv6-link-local-neighbors.patch
Files modified : bgpd_network.c and bgpd/bgp_zebra.c
Fix for : Link local scope was not set while binding socket with local address causing socket errors for bgp ipv6 link local neighbors.

0010-VRF-interface-lookup-was-still-done-in-the-default-vrf.patch
Files modified : staticd/static_zebra.c
Fix for : VRF interface lookup was still done in the default-vrf which was causing the interface lookup to fail. Due to this static-route pointing to link-local was not getting installed.

0011-Changes-to-send-ipv6-link-local-address-as-nexthop-to-fpmsyncd.patch
Files modified : zebra/zebra_fpm_netlink.c
Fix for : Made changes to send ipv6 address as nexthop to fpmsyncd.

Depends on:
Azure/sonic-utilities#1159
Azure/sonic-swss#1463

Signed-off-by: Akhilesh Samineni akhilesh.samineni@broadcom.com
2021-07-20 07:53:34 -07:00
Nazarii Hnydyn
91ff807b21
[pbh]: Add YANG model (#7461)
* [pbh]: Add YANG model.
Signed-off-by: Nazarii Hnydyn <nazariig@nvidia.com>
2021-07-19 15:53:14 -07:00
Stepan Blyshchak
e362cab8ac
[hostcfgd] differentiate between UnitFileState and UnitFilePreset (#8169)
It can be that service is not enabled but UnitFilePreset=enabled (case
for Application Extension):

```
    Loaded: loaded (/lib/systemd/system/cpu-report.service; disabled; vendor preset: enabled)
```

This makes existing logic skip enabling the service.

Signed-off-by: Stepan Blyschak <stepanb@nvidia.com>
2021-07-19 12:13:27 -07:00
Praveen-Brcm
c89b62e4da
[sonic-utilities] Update submodule (#8203)
List of commits (newest first):

Azure/sonic-utilities@0efd297 (origin/master, origin/HEAD) mclag enhancements as per HLD at Azure/SONiC#596 (#1138)
Azure/sonic-utilities@e98bbb6 Reworked IP validation in "config interface ip add/remove" command (#1709)
Azure/sonic-utilities@866d1d7 [minigraph][port_config] Consume port_config.json while reloading minigraph (#1705)
Azure/sonic-utilities@9ae6f6b [debug dump util] Match Infrastructure (#1666)
Azure/sonic-utilities@8fe7e26 Coverage uses top level directory as source (#1711)
Azure/sonic-utilities@3f0b690 [MPLS][CLI] added config/show CLI for MPLS interface, MPLS CRM threshold config, updated CLI reference manual
Azure/sonic-utilities@e8b6c5c [ci] Fix python coverage color bar (#1692)
Azure/sonic-utilities@888701b [Mellanox] Remove mstdump from Mellanoxs collect dump script (#1706)
Azure/sonic-utilities@4818360 [sonic-package-manager] support warm/fast reboot for extension packages (#1554)
Azure/sonic-utilities@793b847 [show priority-group drop counters] Remove backup with cached PG drop counters after 'config reload' (#1679)
Azure/sonic-utilities@24fe1ac [show][config] support for interface alias for muxcable commands (#1699)
Azure/sonic-utilities@186d851 Pcieutil to load the platform api first instead of using common api (#1672)
Azure/sonic-utilities@7a82c06 [Mellanox] Update mellanox dump generation to include SDK dumps (#1640)
Azure/sonic-utilities@38f8c06 [sfputil] Expose error status fetched from STATE_DB or platform API to CLI (#1658)
Azure/sonic-utilities@c5d00ae [pfcwd] Fix the return code in invalid case (#1691)
Azure/sonic-utilities@57dc403 [ci]: Fix config prompt question issue (#1693)
Azure/sonic-utilities@5708497 [show] fix show version (#1686)
Azure/sonic-utilities@9041ba0 [config] Adding sanity checks for config reload (#1664)
Azure/sonic-utilities@2cdadb5 [config]: Create portchannel with LACP key (#1473)
Azure/sonic-utilities@6f74ba5 [vnet_route_check] Fix logic for getting VNET routes from ASIC DB (#1653)
Azure/sonic-utilities@54fee0f Add range check on portchannel min-links (#1630)
2021-07-17 03:06:01 -07:00
lguohan
4157ea9b78
[sonic-yang]: format test sonic yang json file (#8200)
Signed-off-by: Guohan Lu <lguohan@gmail.com>
2021-07-16 22:23:11 -07:00
Qi Luo
ec624e280c
Replace swsssdk.ConfigDBConnector and SonicDBConfig with swsscommon implementation in system-health (#8186)
swsssdk will be deprecated. Use swsscommon instead.
2021-07-16 19:56:24 -07:00
Nazarii Hnydyn
aca80a685c
[submodule]: Advance sonic-swss-common to pick up PBH changes. (#8188)
*Jun 23, 2021 - Fix config prompt question issue (#500) b65e257
*Jul 14, 2021 - [pbh]: Add PBH DB schema. (#495) 1d067ca

Signed-off-by: Nazarii Hnydyn <nazariig@nvidia.com>
2021-07-16 18:23:49 -07:00
Mohamed Ghoneim
62d3c245b8
[sonic-yang] Backlinks are none when there is 0 backlinks (#8187)
Backlinks are none when there is 0 backlinks. without this change backlinks.number() 
throws an exception when backlinks==None.
2021-07-16 07:40:27 -07:00
shlomibitton
604becdd5c
[dhcp_relay] DHCP relay support for IPv6 (#7772)
Why I did it
Currently SONiC use the 'isc-dhcp-relay' package to allow DHCP relay functionality on IPv4 networks only.
This will allow the IPv6 functionality along the IPv4 type.

How I did it
Edit supervisord template to start DHCPv6 instances when configured to do so on Config DB.
Align cfg unit test to the new change.
Add DHCPv6 relay minigraph parsing support and a suitable t0 topology xml file for UT.

How to verify it
Configure DHCPv6 agents as described on the feature HLD: Azure/SONiC#765
Test it with real client/server with IPv6 or use the dedicated automatic test: Azure/sonic-mgmt#3565
Signed-off-by: Shlomi Bitton <shlomibi@nvidia.com>

* Split docker-dhcp-relay.supervisord.conf.j2 template into several files for easier code maintenance
2021-07-16 07:31:05 -07:00
Renuka Manavalan
c5dff0c640
Revert "Revert "[Kubernetes]: The kube server could be used as http-proxy for docker (#7469)" (#8023)" (#8158)
This reverts commit 7236fa98e8.

Restore original PR #7469
2021-07-15 19:48:55 -07:00
Rajkumar-Marvell
5c0e4b2167
[sonic-linux-kernel] submodule update (#8182)
14a4212 [Marvell] CPU1 failure on continuous reboot  (#228)
53e75e5 hwmon: (pmbus_core) Do not enable PEC if adapter doesn't (#215)

Signed-off-by: Rajkumar Pennadam Ramamoorthy <rpennadamram@marvell.com>
2021-07-15 00:01:13 -07:00
DavidZagury
11c40debd7
[sonic-platform-daemons] Update submodule (#8165)
To include:
> 66e7817 2021-07-13 [pcied] Fix pcied failure to load due to 'pcied NameError: name 'self' is not defined' (Azure/sonic-platform-daemons#198) 
> 3df6757 2021-07-08 [ci] fix result color bar in the code coverage report (Azure/sonic-platform-daemons#196)
2021-07-14 20:41:09 -07:00
Raphael Tryster
c508a10c08
[submodule] Update sonic-snmpagent submodule (#7859)
Update sonic-snmpagent submodule to pick up new commits:

21d7d97 2021-07-12 Fix: SonicV2Connector behavior change: get_all will return empty dict if (#226)
0813b42 2021-07-12 Entries under .1.3.6.1.2.1.31.1.1.1.18 OID should return the "description" field of PORT_TABLE entries in APPL_DB or CONFIG_DB. (#224)
7a78703 2021-07-08 Install dotnet core to fix python gcov warning for code covery color bar showing (#215)
e0f36a5 2021-06-30 [multi-asic]: Udpate to use SonicDBConfig from swsscommon (#219)
266bd15 2021-06-10 Restored snmp vlan support per RFC1213 and added the missing support for RFC2863 (#218)
2021-07-13 08:00:42 -07:00
Junchao-Mellanox
e013f2693a
[submodule] Update submodule pointer for swss (#8128)
#### Why I did it
Update submodule pointer for swss to include recent changes

4f1d726 [portsorch] fix errors when moving port from one lag to another. (#1797)
ae44701 [orchagent] Put port configuration to APPL_DB according to autoneg mode (#1769)
5295f91 Add failure handling for SAI get operations (#1768)
7c7c451 Revert recirc port change (#1813)
5528ebf Cleanup code (#1814)
2021-07-13 01:48:37 -07:00
vdahiya12
709d0f4fba
[sonic-platform-daemons] submodule update (#8076)
2d2749a [xcvrd] add debug logs for y_cable change events/probes (#195)
b2c6102 Collect asic info and store in CHASSIS_STATE_DB (#175)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-07-12 12:02:48 -07:00
shlomibitton
36d77fbb0d
Add DHCPv6 to minigraph.py and improve unit test (#8125)
Why I did it
Allow deploying DHCPv6 servers following the implementation PR: #7772

How I did it
Add DHCPv6 to minigraph.py on sonic-cfggen tool and improve the unit test to cover this change.

How to verify it
Try to deploy a switch with DHCPv6 servers.

Signed-off-by: Shlomi Bitton <shlomibi@nvidia.com>
2021-07-12 10:39:18 -07:00
Shi Su
c85abcb30d
[bgpcfgd] Remove unnecessary dependency for StaticRouteMgr (#8037)
Why I did it
Static route configuration should not depend on BGP_ASN. Remove the dependency on BGP_ASN for StaticRouteMgr.
Fix #8027

How I did it
Check if BGP_ASN field before configuring static route redistribution and wait until BGP_ASN is available to enable static route redistribution.

How to verify it
Add unit test to cover the scenario and verify the functionality on a virtual switch.
2021-07-09 14:24:50 -07:00
Raphael Tryster
79300a9a53
Increase min-links limit for portchannel from 128 to 1024. (#7265)
#### Why I did it

Restrict the min-links parameter in "config portchannel" to the range 1-1024.
Fixes Azure/sonic-buildimage#6781 in conjunction with https://github.com/Azure/sonic-buildimage/pull/1630.
Align YANG model with limits in libteam and sonic-utilties.

#### How I did it

PR 1630 in sonic-utilities prevents CLI user from entering a value outside the allowed range.  This PR does the following:

- Increases the maximum value of min-links from 128 to 1024.
- Provides validation in libteam, incorporating as a patch the code in https://git.kernel.org/pub/scm/linux/kernel/git/jpirko/libteam.git/commit/?id=69a7494bb77dc10bb27076add07b380dbd778592.
- Updates the Yang model upper limit from 128 to 1024 (was inconsistent with libteam value).
- Updates the Yang model lower limit from 1 to 0, since 0 is set as default in sonic-utilities which would fail its new range check otherwise.
- Added Yang tests for valid and invalid value.

#### How to verify it

config portchannel add PortChannel0004 --min-links 1024

Command should be accepted.

show interfaces portchannel

Output should show PortChannel0004, no errors on CLI.

config portchannel add PortChannel0005 --min-links 1025

Command should be rejected

show interfaces portchannel

Output should not show PortChannel0005 , no errors on CLI.

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


#### Description for the changelog

Updates YANG model to allow up to 1024 min_links for portchannel.  Fixes Azure/sonic-buildimage#6781 in conjunction with https://github.com/Azure/sonic-buildimage/pull/1630.
2021-07-08 08:28:58 -07:00
shlomibitton
776a446d76
[dhcp_relay] Disable dhcp_relay for ToRRouter switches type by the feature manager (#7789)
- Why I did it
Currently dhcp packets are disabled by the COPP manager for non ToRRouter type switches.
Even if the feature is enabled, DHCP packets wont hook to the CPU since the COPP manager will not trap this packets.
This change is to disable dhcp_relay by default for non ToRRouter switches from init_cfg.json.
With this approach, if the user want to enable the feature for non ToRRouter switches, manual enablement is required by the 'feature' configuration.
This is to keep the current approach for MSFT production issue with dhcp relay for non ToRRouter switched and allow the user to decide if to use it or not.

- How I did it
Configure dhcp_relay 'disabled' by default on init_cfg.json for non ToRRouter switches.
Remove the exclusion of dhcp packets on copp_cfg.json

- How to verify it
Enable dhcp_relay feature on a non ToRRouter switch.
Unit-tests modified so the default values on mocked CONFIG DB in 'test_vectors.py' for dhcp_relay will be 'disabled'.
This is by the change for 'init_cfg.json.j2'.
For ToRRouter the state will change from 'disabled' to 'enabled'.
Another test case added for a 'ToR' switch type, this is to test the state is 'enabled' if the user configured it to be so.
2021-07-08 09:10:46 +03:00
VenkatCisco
487dd46ed6
Support L1 & L3 Config generation in SONiC (#7637)
Why I did it
This provides support for: PR #7074.

How I did it
Extend sonic-config-engine/config_samples.py to provide support for l1 & l3
2021-07-07 22:57:58 -07:00
anamehra
3b30127913
[multi-asic] Fixed systemd-sonic-generator for multi-asic (#7954)
Why I did it

systemd-sonic-generator limits multi-asic unit file instances to 10 (single digit instance number 0 - 10). This limitation needs to be removed to handle more than 10 asics.
MAX_NUM_TARGETS and MAX_NUM_INSTALL_LINES limits to 15 which is not sufficient for systems with more than 15 asics.
Inside get_unit_files(), strcmp produce incorrect results due to non null terminated string being compared.

 Added build UT support for systemd-sonic-generator
2021-07-07 17:14:21 -07:00
Stepan Blyshchak
82b3a39a3a
[sonic-sairedis] udpate submodule (#8043)
Changes:

3c485e5 [recorder] Fix incorrect attribute enum value capability query (#843)
677ebca [sairedis] Client/Server support zmq configuration file (#845)
7c70e34 [sairedis] Add support for bulk api in client/server (#844)
76d28a6 [pyext] Use SAI autogenerated saiswig.i (#837)
9949c48 [vslib] implement query for SAI_DEBUG_COUNTER_TYPE enum values (#842)
e385212 [MPLS] Minor tweaks to VS for MPLS support for CRM polling of MPLS In-segments and NHs.
d819f97 [meta] Add support for ignored attributes names (#836)
c163238 Add cisco-8000 checks to syncd_init_common (#839)
9aed2ff [sairedis] Add support for client server architecture (#838)

Signed-off-by: Stepan Blyschak <stepanb@nvidia.com>
2021-07-07 14:50:03 +03:00
DavidZagury
0c722aaa36
[sonic-utilities] Update submodule (#8072)
Updates:
888701b [Mellanox] Remove mstdump from Mellanoxs collect dump script ([Azure/sonic-utilities#1706])
4818360 [sonic-package-manager] support warm/fast reboot for extension packages ([Azure/sonic-utilities#1554])
793b847 [show priority-group drop counters] Remove backup with cached PG drop counters after 'config reload' ([Azure/sonic-utilities#1679])
24fe1ac [show][config] support for interface alias for muxcable commands ([Azure/sonic-utilities#1699])
2021-07-07 14:43:32 +03:00
Qi Luo
f14430b29b
Replace swsssdk with swsscommon in sonic-host-services (#8034)
#### Why I did it
swsssdk will be deprecated. Use swsscommon instead.

#### How to verify it
Unit test
2021-07-06 02:07:45 -07:00
Shilong Liu
863b05e572
Bug fix for reproducible build (#8061) 2021-07-06 12:52:45 +08:00
shlomibitton
fe6e4c336d
Update sonic-swss submodule (#8057)
[flex-counters] Delay flex counters stats init for faster boot time (https://github.com/Azure/sonic-swss/pull/1803)
[mirror] Detach session dst ip from route orch LPM calculation regardless of session status at session CONFIG DB removal (https://github.com/Azure/sonic-swss/pull/1800)
[Dynamic Buffer Calc] Support dynamic buffer calculation on top of port auto negotiation (https://github.com/Azure/sonic-swss/pull/1762)
[neighorch] VOQ encap index change handling (https://github.com/Azure/sonic-swss/pull/1729)
[neighorch] Mac for voq neighbors in VS platforms (https://github.com/Azure/sonic-swss/pull/1724)
[acl mirror action] Mirror session ref count fix at acl rule attachment (https://github.com/Azure/sonic-swss/pull/1761)
2021-07-05 07:56:16 -07:00
shlomibitton
d99595a0e9
[hostcfgd] Enhance hostcfgd to check feature state and run less system calls (#7987)
Why I did it
Currently hostcfgd is implemented in a way each feature which is enabled/disabled triggering execution of systemctl enable/unmask commands which eventually trigger 'systemctl daemon-reload' command.
Each call like this cost 0.6s and overall add a overhead of ~12 seconds of CPU time.
This change will verify the desired state of a feature and the current state of this feature on systemd and trigger a system call only when must.

How I did it
Check each feature status on systemd before executing a system call to enable and reload the systemctl daemon.

How to verify it
Build an image with this change and observe less system calls are executed.

Signed-off-by: Shlomi Bitton <shlomibi@nvidia.com>
2021-07-03 21:12:28 -07:00
Samuel Angebault
17f0217f30
[Arista] Chassis device configurations (#7529)
Add configurations for the following chassis elements

Fabrics 7804R3-FM, 7808R3-FM and 7808R3A-FM
Linecard 7800R3-48CQ2
Supervisor 7800-SUP*
2021-06-30 18:16:20 -07:00
Stephen Sun
7ddb8af21f
[sonic-utilities] Update submodule (#8028)
186d8513 Pcieutil to load the platform api first instead of using common api (#1672)
7a82c069 [Mellanox] Update mellanox dump generation to include SDK dumps (#1640)
38f8c068 [sfputil] Expose error status fetched from STATE_DB or platform API to CLI (#1658)
c5d00ae4 [pfcwd] Fix the return code in invalid case (#1691)
57dc4032 [ci]: Fix config prompt question issue (#1693)

Signed-off-by: Stephen Sun <stephens@nvidia.com>
2021-06-30 10:20:28 -07:00
Ying Xie
7236fa98e8
Revert "[Kubernetes]: The kube server could be used as http-proxy for docker (#7469)" (#8023)
This change causes nightly test to fail due to the fake proxy IP is not reachable.

Reverts #7469

This reverts commit f7ed82f44a.
2021-06-29 18:43:53 -07:00
Aravindu Maneti
5acf2348ba
SONiC Yang model support for COPP (#7199)
* SONiC Yang model support for COPP
* Tables: COPP_GROUP, COPP_TRAP.
2021-06-29 09:39:08 -07:00
Stepan Blyshchak
9ce7c6d9fe
[hostcfgd] Configure service auto-restart in hostcfgd. (#5744)
Before this change, a process running inside every SONiC container dealt with FEATURE table 'auto_restart' field and depending on the value decided whether a container has to be killed or not.
If killed service auto restart mechanism restarts the container.
This change moves the logic from container to the host daemon - hostcfgd.
The 'auto_restart' handling is kept in supervisor-proc-exit-listener but now it is not required for container that wants to support auto restart feature.

hostcfgd refactoring - move feature handling in another class.
override systemd service Restart= setting from hostcfgd.
remove default systemd Restart=always.
Signed-off-by: Stepan Blyshchak stepanb@nvidia.com

- Why I did it

Remove the need to deal with container orchestration logic from the container itself. Leave this logic to the orchestrator - host OS.

- How I did it

hostcfgd configures 'Restart=' value for systemd service.

- How to verify it

root@r-tigon-11:/home/admin# sudo config feature autorestart lldp enabled
root@r-tigon-11:/home/admin# show feature status | grep lldp
lldp            enabled   enabled
root@r-tigon-11:/home/admin# docker exec -it lldp pkill -9 lldpd
root@r-tigon-11:/home/admin# docker ps -a | grep lldp
65058396277c        docker-lldp:latest                   "/usr/bin/docker-lld…"   2 days ago          Exited (0) 20 seconds ago                       lldp
root@r-tigon-11:/home/admin# docker ps -a | grep lldp
65058396277c        docker-lldp:latest                   "/usr/bin/docker-lld…"   2 days ago          Up 5 seconds                            lldp
root@r-tigon-11:/home/admin# sudo config feature autorestart lldp disabled
root@r-tigon-11:/home/admin# docker exec -it lldp pkill -9 lldpd
root@r-tigon-11:/home/admin# docker ps -a | grep lldp
65058396277c        docker-lldp:latest                   "/usr/bin/docker-lld…"   2 days ago          Up 35 seconds                           lldp
root@r-tigon-11:/home/admin# docker ps -a | grep lldp
65058396277c        docker-lldp:latest                   "/usr/bin/docker-lld…"   2 days ago          Exited (0) 3 seconds ago                       lldp
root@r-tigon-11:/home/admin# docker ps -a | grep lldp
65058396277c        docker-lldp:latest                   "/usr/bin/docker-lld…"   2 days ago          Exited (0) 39 seconds ago                       lldp
root@r-tigon-11:/home/admin#
2021-06-29 09:06:21 -07:00
Stephen Sun
abbf627b8a
[sonic-swss] submodule update (#8010)
Advance submodule head for sonic-swss

32261636 [BufferOrch] Don't call SAI API for BUFFER_POOL/PROFILE handling in case the op is DEL and the SAI OID is NULL (Azure/sonic-swss#1786)
6c88e47a [Dynamic Buffer Calc][Mellanox] Bug fixes and enhancements for the lua plugins for buffer pool calculation and headroom checking (Azure/sonic-swss#1781)
e86b900d [MPLS] sonic-swss changes for MPLS (Azure/sonic-swss#1686)
4c8e2b53 [Dynamic Buffer Calc] Avoid creating lossy PG for admin down ports during initialization (Azure/sonic-swss#1776)
36021246 [VS test stability] Skip flaky test for DPB (Azure/sonic-swss#1807)
c37cc1c5 Support for in-band-mgmt via management VRF (Azure/sonic-swss#1726)
1e3a532d Fix config prompt question issue (Azure/sonic-swss#1799)

Signed-off-by: Stephen Sun <stephens@nvidia.com>
2021-06-29 17:30:29 +03:00
thomas.cappleman@metaswitch.com
101b1fa08b
[build]: Fix sonic-cfggen contextlib err (#7996)
A recent version of contextlib2 (https://pypi.org/project/contextlib2/21.6.0/#history) has broken Python2 compatibility, so the version picked up by netaddr when using Python2 must be specified, or else builds fail

Co-authored-by: Tom Zhu <tom.zhu@metaswitch.com>
2021-06-28 17:15:03 -07:00
Joe LeVeque
9f114cab6c
[sonic-py-common] Clear environment variables before running device_info tests (#7273)
#### Why I did it

To ensure any environment variables which are configured in the build/test environment do not influence the behavior of sonic-py-common during unit tests. For example, variables which might be set by continuous integration pipelines.

#### How I did it

Add class-scoped pytest fixture to `TestDeviceInfo` class which stashes the current environment variables, clears them and yields. Once all the test cases in the class finish, the fixture will restore the original environment variables.

Also remove unnecessary unittest-style setup and teardown functions from interface_test.py
2021-06-28 09:30:53 -07:00
Sudharsan Dhamal Gopalarathnam
dbd086bf98
[sonic-ztp] submodule update (#7984)
Advance submodule update with the following changes:
4475750 Config reload fix (#29)
cf60d5e [ci]: add proper azp (#26)
f0fbfe7 [CI] Set up CI with Azure Pipelines (#25)
879d7bd Include port default fec configuration to be included in ZTP configuration (#24)
a6ae955 Add a pre-defined plugin to download a list of files (#23)
6f0305b [MultiDB] Add multidb support to sonic-ztp (#16)
2021-06-27 09:56:27 +03:00
judyjoseph
e5a6a45fa5
[multi-asic] Make asic-id in DEVICE_METADATA optional (#7866)
Discussion and requirement in Chassis discussion forum to NOT make the asic-id field in the DEVICE_METADATA mandatory. If this field "asic-id" is not present the orchagent will be started without the -i <asic_id> parameter

Ref: https://github.com/Azure/sonic-buildimage/blob/master/dockers/docker-orchagent/orchagent.sh#L39

How I did it
Made the check to see if the asic-id is valid and update the asic-id field in the DEVICE_METADATA
2021-06-25 15:56:26 -07:00
Sudharsan Dhamal Gopalarathnam
3a7f6cf46d
[sonic-utilities] submodule update (#7937)
5708497 [show] fix show version (#1686)
9041ba0 [config] Adding sanity checks for config reload (#1664)
2cdadb5 [config]: Create portchannel with LACP key (#1473)
6f74ba5 [vnet_route_check] Fix logic for getting VNET routes from ASIC DB (#1653)
54fee0f Add range check on portchannel min-links (#1630)
2021-06-25 11:04:38 -07:00
Stephen Sun
0a92ce18cf
[sonic-platform-daemons] Advance submodule head (#7961)
53639ded [xcvrd] Add bitmap support for SFP error event (#184)
2fc05b21 Refactor Pcied and add unittest (#189)

Signed-off-by: Stephen Sun <stephens@nvidia.com>
2021-06-25 10:54:19 -07:00
Neetha John
dc5d52f404
[minigraph] Update parsing logic for Storage backend devices (#7944)
Signed-off-by: Neetha John <nejo@microsoft.com>

Why I did it
The current logic generates 'VLAN_SUB_INTERFACE' table if the device type is backend and cluster name contains 'str'. This is not a reliable method to determine a storage backend device

How I did it
Updated the logic to generate 'VLAN_SUB_INTERFACE' table if any of the following conditions hold true
 - device is of type backend and ResourceType attribute is None
 - device is of type backend and ResourceType attribute contains "Storage"
 - device is of type backend and graph contains "Subinterface" section

Also updated the logic to set "is_storage_device" to True
 - For Backend, if any of the above conditions hold true
 - For Frontend, if ResourceType attribute contains "Storage"

How to verify it
Added new tests to verify the code changes and built sonic_config_engine-1.0-py3-none-any.whl successfully
2021-06-25 09:19:14 -07:00
arlakshm
ef67ba5f6e
[multi-asic] fix network command for internal loopback (#7878)
Signed-off-by: Arvindsrinivasan Lakshmi Narasimhan <arlakshm@microsoft.com>
In the multi asic platforms all the ASIC are advertising the same IPv6 /64 network from Loopback4096.
Therefore, the IPv6 loopback address of backend asic is not learnt on the frontend asic.
Change the bgpd.conf.main.conf.j2 template file to advertise the Loopback4096 ipv6 address as /128
2021-06-24 12:02:01 -07:00
SuvarnaMeenakshi
d1ba121906
Update sonic-py-swsssdk. (#7889)
Update sonic-py-swsssdk submodule to include below commits:
6be76f45 Add missing functions to be on par with swsscommon. (#107)
64232a0 (master) [CI] Setup proper Azp (#106)
9d019b0 [ci]: Set up CI with Azure Pipelines (#102)
fa760c4 Fix bug: use instance variable instead of class variable in ConfigDBConnector (#99)
Signed-off-by: Suvarna Meenakshi <sumeenak@microsoft.com>
2021-06-24 08:05:58 -07:00
gechiang
6fc279b7c1
Add BRCM SOC Property to not count ACL drops towards interface RX_DRP… (#7945)
* Add BRCM SOC Property to not count ACL drops towards interface RX_DRP counter for 7050CX3 and 7260CX3 DualToR platforms
2021-06-23 18:09:47 -07:00
ngoc-do
0ba67df0f4
Add fabric lane mapping to vs (sai.profile) and HWSKU Force10-S6000 (#7629)
This PR is actually https://github.com/Azure/sonic-buildimage/pull/6185 that was merged and then reverted to avoid test failure in swss. 

Now https://github.com/Azure/sonic-swss/pull/1459/ merged, and so this PR could merge to enable fabric test in swss.

Signed-off-by: ngocdo <ngocdo@arista.com>
2021-06-23 10:26:39 -07:00
Vaibhav Hemant Dixit
d263b57a27
[advance submodule] Update sonic-swss head to latest (#7949)
Update sonic-swss submodule head. New commits included:

- Revert "[nhg]: Add support for weight in nexthop group member. Azure/sonic-swss@a3bc89b
- Add ownership file Azure/sonic-swss@e03c677
- [MACsec]: Support switchId and portId for gearbox Azure/sonic-swss@edc0883
2021-06-23 10:13:20 -07:00
Shi Su
f52ba3b496
Remove quagga-related code (#7898)
Why I did it
Quagga is no longer being used. Remove quagga-related code (e.g., docker-fpm-quagga, sonic-quagga, etc.).

How I did it
Remove quagga-related code.
2021-06-23 09:15:56 -07:00
Santhosh Kumar T
f8eb5b0958
Flashrom refactoring for broadcom platforms (#7693)
#### Why I did it
- To build flashrom properly with dependency tracking.

#### How I did it
- Moved flashrom code from platform/broadcom/sonic-platform-modules-dell/tools directory to src/flashrom directory.
- At the end, flashrom_0.9.7_amd64.deb package is build which will be installed in the devices.
- Currently flashrom builds only for Dell S6100 platforms.
2021-06-22 15:29:21 -07:00
judyjoseph
3ad830eb49
New sonic-buildimage images for Broadcom DNX ASIC family. (#7598)
Introduce new sonic-buildimage images for Broadcom DNX ASIC family.

sonic-broadcom-dnx.bin
sonic-aboot-broadcom-dnx.swi

How I did it

NO CHANGE to existing make commands

make init; make configure PLATFORM=broadcom;  make target/sonic-aboot-broadcom.swi; make  target/sonic-broadcom.bin

The difference now is that it will result in new broadcom images for DNX asic family as well. 

sonic-broadcom.bin, sonic-broadcom-dnx.bin
sonic-aboot-broadcom.swi, sonic-aboot-broadcom-dnx.swi

Note: This PR also adds support for Broadcom SAI 5.0 (based on 1.8 SAI ) for DNX based platform + changes in platform x86_64-arista_7280cr3_32p4 bcm config files and platform_env.conf files
2021-06-22 11:12:22 -07:00
Vaibhav Hemant Dixit
8b3fabe1e5
[advance submodule] Update sonic-swss head to latest (#7932)
Advance sonic-swss submodule head to latest. New commits:

Revert "[flex-counters] Delay flex counters stats init for faster boot time" Azure/sonic-swss@b8b2df2
[orchagent] Remove default prefix in non default vrf Azure/sonic-swss@f5d522d
Fix NHG key with weight overlay flag. Azure/sonic-swss@e79cd50
[vs] Stablize test portchannel: test_Portchannel_oper_down end-of-tes Azure/sonic-swss@6627140
[bufferpool] Support for buffer pool type both Azure/sonic-swss@1d19185
[macsec] Fix acl entry id in updateMACsecPort Azure/sonic-swss@3daaa8e
[request parser] Add unit tests for request parser for multiple values Azure/sonic-swss@ec96602
[flex-counters] Delay flex counters stats init for faster boot time Azure/sonic-swss@e56c492
2021-06-22 10:20:29 -07:00
Kebo Liu
ff20e9b590
[sonic-utilities] Update submodule (#7925)
To pick new commit in sonic-utilities submodule: Azure/sonic-utilities@a75a2e8
2021-06-21 17:15:03 -07:00
ArthiSivanantham
ec1667271b
SONiC yang models for AAA and TACACS features (#7671)
Signed-off-by: Arthi Sivanantham arthi_sivanantham@dell.com

Why I did it
SONiC YANG model support for AAA and TACACS features.

How I did it
Defined various AAA and TACACS YANG containers and lists based on config-DB schema.

How to verify it
Successful build of the following packages:
make target/python-wheels/sonic_yang_models-1.0-py3-none-any.whl
make target/python-wheels/sonic_yang_mgmt-1.0-py3-none-any.whl
2021-06-21 13:55:43 -07:00
DavidZagury
b7444ba574
[sonic-utilities] Submodule update (#7921)
Update sonic-utilities submodule. This include the following commits:

285960d [config]: Update environment file during config reload (#1673)
3f0ecd5 [config] Remove "reset failed" print lines from config reload (#1654) 
a1c8751 Make the soft-reboot available in the SONiC image on master (#1681)
45e7b71 [Mellanox] Add all results from saisdkdump to the techsupport on Mellanox switches (#1660)
2021-06-20 21:25:27 -07:00
Ying Xie
4c4799ed41
[swss] back track swss submodule head (#7913)
Why I did it
There is a regression on 2700 platform where the evidence points to the flex counter change.

How I did it
Back track the swss submodule head to exclude:

[flex-counters] Delay flex counters stats init for faster boot time (#1749)
Verified that image build from this PR doesn't trigger the crash.

Signed-off-by: Ying Xie ying.xie@microsoft.com
2021-06-18 11:55:04 -07:00
bsun-sudo
14953e452b
Add SONiC YANGs for Management Port, Management Interface, Management VRF and NTP. (#7252)
* SONiC YANG model support for Management Port, Management Interface, Management VRF and NTP.
Co-authored-by: Bing Sun <Bing_Sun@dell.com>
2021-06-18 11:47:45 -07:00
Junchao-Mellanox
be5fc77c2a
[sonic-platform-common] Update submodule (#7868)
7670b49 [sonic_platform/sfp_base] Add common definition for get SFP error status (#194)
1336598 [CI] sonic-config-engine now depends on SONiC YANG packages (#198)
f57fee4 Add to check pcie configuration revision to get the right configuration. (#195)
4e3a0a0 Fix typo for midplane APIs. (#196)
fc2e9e2 [eeprom_tlv_info] Optimize EEPROM data process by using visitor pattern (#193)
2021-06-18 11:33:35 -07:00
Rajkumar-Marvell
2e7e7814cc
[Marvell] Fix system MAC parsing logic for Marvell platform. (#7914)
Fixed parsing logic in file "src/sonic-py-common/sonic_py_common/device_info.py"

Signed-off-by: Rajkumar Pennadam Ramamoorthy <rpennadamram@marvell.com>
2021-06-18 11:32:30 -07:00
Venkatesan Mahalingam
a3e144b16d
[YANG] Add to support BGP and route-map YANG models (#6917)
Why I did it
SONiC YANG model support for BGP & route-map features.

How I did it
Defined various BGP and route-map YANG containers and lists based on config-DB schema.

How to verify it
Built the following successfully with various BGP & route-map unit test cases.
make target/python-wheels/sonic_yang_models-1.0-py3-none-any.whl
make target/python-wheels/sonic_yang_mgmt-1.0-py3-none-any.whl
2021-06-18 10:31:19 -07:00
Alexander Allen
a069cb0b11
Bump sonic-platform-daemons (#7907)
Updates sonic-platform-daemons submodule. Includes the following commits:
```
eb8a223 [xcvrd] Force cleanup of chassis global variable on deinit (#193)
a6903c0 [CI] sonic-config-engine now depends on SONiC YANG packages (#194)
bf60a27 Replace swsssdk.SonicV2Connector with swsscommon implementation (#191)
```
2021-06-18 00:21:47 -07:00
Alexander Allen
f39fc88c1b
[sonic-utilities] submodule update (#7799)
19615e3 Fixing db_migrator for Feature table (#1674)
d1c1c61 [tests]: skip some dynamic port breakout unit tests (#1677)
25669c3 [CI] sonic-config-engine now depends on SONiC YANG packages (#1675)
3ff68c4 [neighbor-advertiser] delete the tunnel maps appropriately (#1663)
a425ca2 [config] support for configuring muxcable to manual mode of operation  (#1642)
25e17de [show platform summary] Add chassis hardware info to platform summary and version (#1624)
f5f2a00 [db_migrator] fix old 1911 feature config migration to a new one. (#1635)
56db162 [config] Fix config int add incorrect ip (#1414)
1da879c [db_migrator][Mellanox] Update Mellanox buffer migrator with 2km-cable supported (#1564)
c2b760f [sonic_package_manager] flush once finished saving docker image into temporary file (#1638)
cd69473 Replace swsssdk.ConfigDBConnector and SonicDBConfig with swsscommon implementation (#1620)
5f20365 Change to use rvtysh when calling the show commands (#1572)
51d6bf5 Fix Aboot breakage in sonic package manager in sonic-installer (#1625)
18bed46 [console][show] Force refresh all lines status during show line (#1641)
b616cd9 [TPID CONFIG] Added TPID configuration CLI support (#1618)
01eb4b1 [show] support for show muxcable firmware version of only active banks (#1629)
7744c8d [fdb]cli: fdb entries are cleared according to vlan or port or vlan&&port (#657)
e23c5ee Add psu hardware revision to psushow table (#1601)
f1726fe Make advance_version_for_expected_database available for other db migrator test cases as well (#1614)
5d1ad05 [show] add support for muxcable metrics (#1615)
feeab29 [config] Sort Config Db When Saving (#1623)
2021-06-17 13:52:20 -07:00
Joe LeVeque
b25962487c
[sonic-host-services] Add 'parameterized' package as a test dependency (#7900)
#### Why I did it

Recently, the build started failing with messages like

```
2021-06-16T16:55:02.8675603Z tests/hostcfgd/hostcfgd_test.py:5: in <module>
2021-06-16T16:55:02.8676208Z     from parameterized import parameterized
2021-06-16T16:55:02.8677145Z E   ModuleNotFoundError: No module named 'parameterized'
```

Unit tests for hostcfgd depend on the `parameterized` Python package, but it was never added as a dependency to the setup.py file. This dependency was added ~3 months ago. I'm not sure why we only started seeing this failure recently.

#### How I did it

Add 'parameterized' package as a test dependency in setup.py for sonic-host-services package
2021-06-16 17:04:49 -07:00
Ann Pokora
3d629233bf
[MPLS][libnl3] libnl patches for supporting MPLS
* New accessors in libnl3 for MPLS attributes
* contains patch files for bug fixes in libnl3 for MPLS attribute parsing
2021-06-16 15:08:23 -07:00
Renuka Manavalan
f7ed82f44a
[Kubernetes]: The kube server could be used as http-proxy for docker (#7469)
Why I did it
The SONiC switches get their docker images from local repo, populated during install with container images pre-built into SONiC FW. With the introduction of kubernetes, new docker images available in remote repo could be deployed. This requires dockerd to be able to pull images from remote repo.

Depending on the Switch network domain & config, it may or may not be able to reach the remote repo. In the case where remote repo is unreachable, we could potentially make Kubernetes server to also act as http-proxy.

How I did it
When admin explicitly enables, the kubernetes-server could be configured as docker-proxy. But any update to docker-proxy has to be via service-conf file environment variable, implying a "service restart docker" is required. But restart of dockerd is vey expensive, as it would restarts all dockers, including database docker.

To avoid dockerd restart, pre-configure an http_proxy using an unused IP. When k8s server is enabled to act as http-proxy, an IP table entry would be created to direct all traffic to the configured-unused-proxy-ip to the kubernetes-master IP. This way any update to Kubernetes master config would be just manipulating IPTables, which will be transparent to all modules, until dockerd needs to download from remote repo.

How to verify it
Configure a switch such that image repo is unreachable
Pre-configure dockerd with http_proxy.conf using an unused IP (e.g. 172.16.1.1)
Update ctrmgrd.service to invoke ctrmgrd.py with "-p" option.
Configure a k8s server, and deploy an image for feature with set_owner="kube"
Check if switch could successfully download the image or not.
2021-06-16 07:46:01 -07:00
Blueve
0096765eba
[console][minigraph] Avoid generate config for self console port (#7817)
Signed-off-by: Jing Kan jika@microsoft.com
2021-06-16 16:07:07 +08:00
Lawrence Lee
c41a98e222
[minigraph] Check for null VLAN MAC (#7854)
Explicitly check for null VLAN MAC in minigraph parser before setting it - if it is null, do not set the VLAN MAC attribute
2021-06-15 11:15:55 -07:00
Mykola Gerasymenko
7162532ddf
Add PG_DROP yang model (#7138)
Signed-off-by: Mykola Gerasymenko <mykolax.gerasymenko@intel.com>

Why I did it
Dynamic Port Breakout falls cause of PG_DROP yang model missing

How I did it
Add PG_DROP yang model and add check this field in unit test for yang model

How to verify it
Firstly try to do DPB (2x50G) for Ethernet0 port:
sudo config interface breakout Ethernet0 2x50G -f
After that try to do DPB (1x100G[40G]) for Ethernet0 port:
sudo config interface breakout Ethernet0 1x100G[40G] -f
Both commands should work correctly.
2021-06-15 08:59:57 -07:00
abdosi
94441f413d
Telemetry submodule update (#7864)
[Submodule update] sonic-telemetry

[multi-asic] Added Support  for multi-asic for telemetry/gnmi server (#77)
2021-06-14 18:22:49 -07:00
shlomibitton
96308314fb
Update sonic-swss submodule (#7861)
Signed-off-by: Shlomi Bitton <shlomibi@nvidia.com>
2021-06-14 13:12:44 -07:00
a-barboza
da3d3aa10f
[radius]: RADIUS Management User Authentication (#7551)
Fixed the RADIUS client debian packages build for arm64, armhf PLATFORM_ARCH
2021-06-14 07:57:01 -07:00
arlakshm
4d07bbbec6
[Yang][cfggen] update sonic-cfggen to generate config_db from Yang data (#7712)
Why I did it
This PR adds changes in sonic-config-engine to consume configuration data in SONiC Yang schema and generate config_db entries

How I did it
Add a new file sonic_yang_cfg_generator .
This file has the functions to

parse yang data json and convert them in config_db json format.
Validate the converted config_db entries to make sure all the dependencies and constraints are met.
Add a new option -Y to the sonic-cfggen command for this purpose

Add unit tests

This capability is support only in sonic-config-engine Python3 package only
2021-06-10 12:03:33 -07:00
Akhilesh Samineni
714894cf0a
[Yang] SONiC Yang model support for NAT (#7051)
This change has SONiC Yang model support for NAT
- Created SONiC Yang model for NAT
- Tables: STATIC_NAPT, STATIC_NAT, NAT_GLOBAL, NAT_POOL, NAT_BINDINGS.

How I did it
Defined Yang models for NAT based on Guideline doc:
https://github.com/Azure/SONiC/blob/master/doc/mgmt/SONiC_YANG_Model_Guidelines.md
and
https://github.com/Azure/sonic-utilities/blob/master/doc/Command-Reference.md

How to verify it
Added test cases to verify it.
2021-06-10 11:42:13 -07:00
Qi Luo
658ed4fd37
Revert "Remove quagga related code (#7476)" (#7831)
Reverts Azure/sonic-buildimage#7476
It remove bgpd.conf.j2 and zebra.conf.j2, which is still used by sonic-config-engine unit test.
2021-06-09 18:52:45 -07:00
Guohan Lu
c7bc0f0fa2 Revert "[multi-asic] Fixed systemd-sonic-generator for multi-asic (#7633)"
This reverts commit 4f8dec9a6f.
2021-06-09 08:20:23 -07:00
Ann Pokora
cdbde19742
[Submodule update] sonic-swss-common (#7812) 2021-06-08 08:28:21 -07:00
Shi Su
62a4603eef
Remove quagga related code (#7476)
Why I did it
Quagga is no longer being used. Remove quagga-related code (e.g., docker-fpm-quagga, sonic-quagga, etc.).

How I did it
Remove quagga-related code.
2021-06-07 16:44:54 -07:00
SuvarnaMeenakshi
2e305c9864
[multi-asic][sonic-config-engine]: Get PORT table from namespace config db (#7632)
Why I did it
portconfig.py gets PORT table from config_db if it is present. If not, port_config.ini files are parsed.
For multi-asic platform, if namespace is passed to get_port_config(), config_db connection was done to host namespace always and not to asic specific namespace.
Provides fix for: #7161

How I did it
Modify db connection function to connect to namespace config_db.
2021-06-07 12:34:23 -07:00
賓少鈺
53663339a2
Per-switching silicon Common config for Broadcom Supported Platforms (#7493)
* Per-switching silicon Common config for Broadcom Supported Platforms

* Per-switching silicon Common config for Broadcom Supported Platforms

* Per-switching silicon Common config for Broadcom Supported Platforms

* Remove property readme

* Add common config readme
2021-06-03 23:18:02 -07:00
SuvarnaMeenakshi
906fb67b4e
[sonic-saidredis]: Advance submodule (#7774)
Why I did it
Update sonic-sairedis submodule to include below commits:
0e2105a [vs]: Start syncd by passing context configuration file and global context index. (#832)
f931ae4 [VS] Add support for context and multiple switches (#830)
59208de [submodule] Update SAI submodule (#829)
77d44f5 [Mellanox] Update mellanoxs dump generation to include SDK dumps (#833)
4fb571b Generalizing config.bcm support for BRCM silicons (#693)
Signed-off-by: Suvarna Meenakshi <sumeenak@microsoft.com>
2021-06-02 19:02:51 -07:00
DavidZagury
e50b6fc3b4
[sairedis] Update submodule pointer for SAI-Redis submodule (#7762) 2021-06-01 13:43:23 -07:00
Alexander Allen
020daa9c2a
[sonic-py-common] Add platform and chassis info methods to device_info (#7652)
#### Why I did it
These methods were added to make some convenient platform and chassis information methods accessible through sonic-py-common. These methods were refactored from sonic-utilities and are used in the `show platform summary` and `show version` commands. 

#### How I did it
There are two methods, one is `get_platform_info()` which simply calls local methods to collect useful platform information into a dictionary format, this came directly from sonic-utilities.
2021-06-01 09:07:33 -07:00
gechiang
cff37b0021
[TPID CONFIG]TPID attribute Yang model and default TPID for Minigraph to configDB Changes (#7630)
* [TPID CONFIG]TPID attribute Yang model and default TPID for Minigraph to configDB Changes

* Fixed alignment spacing issue, removed length and convert to use tpid_type typedef for both LAG and PORT tpid attribute, added description in port and portchannel leaf for the tpid attribute
2021-05-31 16:47:12 -07:00
Stepan Blyshchak
996be67ec7
[sonic-linux-kernel] submodule update (#7761)
fcf7cdc [patch] add patch "net: sch_generic: fix the missing new qdisc assignment bug" (#213)
This fixes an issue that flapping a LAG member port does not lead to this member being stuck in disabled state.
2021-05-31 17:41:30 +03:00
Volodymyr Samotiy
f8b3265b1c
[swss] Update submodule pointer (#7748)
dad1287 [tunneldecaporch] Set default MTU for the overlay loopback interface (#1756)
1bc94d1 [orchagent] Fix typo in PortsOrch::initPortSupportedSpeeds (#1755)
a44e651 [nhg]: Add support for weight in nexthop group member. (#1752)
5c625b2 [Bulk mode] Limit the size of bulker (#1744)
d1cd0fd Fix error msg due to not supported "SAI_SWITCH_ATTR_MAX_NUMBER_OF_TEMP_SENSORS"  attributes (#1745)
278770d [sub intf] Fix kernel side processing to enslave sub interface to non-default vrf (#1521)
031f536 support flush FDB entries per port and per vlan (#1064)
3629d70 [sonic-swss] Add port auto negotiation support to swss (#1714)
7c6ebb1 [fix] Use the same storm detection condition for queue occupancy non-zero case as the zero case (#1111)
fb06c32 [fabricportsorch] Add fabric support (#1459)

Signed-off-by: Volodymyr Samotiy <volodymyrs@nvidia.com>
2021-05-31 15:59:21 +03:00
Neetha John
4b00f8ab09
[minigraph] Parse bandwidth for DeviceMgmtLinks (#7744)
Why I did it
The current code skips parsing bandwidth for DeviceMgmtLinks. We have a use case to set the speed for these type of links based on the bandwidth attribute in the minigraph

How to verify it
Ran sonic-cfggen on a minigraph and verified that interface of type DeviceMgmtLink has speed set in the PORT table from the bandwidth attribute in the minigraph
2021-05-28 15:20:30 -07:00
anamehra
4f8dec9a6f
[multi-asic] Fixed systemd-sonic-generator for multi-asic (#7633)
* Fixed systemd-sonic-generator for multi-asic

    1. In function insert_instance_number instance_string was malloced for 2 char
       size which was limiting the instance number value in instance_name to 1 digit.
       Fixed insert_instance_number to use asprintf to generate instancd_name for
       any number of instances. Added _GNU_SOURCE to CFLAGS for asprintf.

    2. Fixed get_unit_files() to use calloc instead of malloc. Uninitialized memory
       was causing incorrect string mismatch error while comparing unit file name
       string.

    3. Increased MAX_NUM_TARGETS and MAX_NUM_INSTALL_LINES values to 48 to handle more
       asic instances.

    4. Added build UT support for systemd-sonic-generator:
        a. Refactor systemd-sonic-generator.c to be used with UT infra.
        b. Added UT infra to run build UT for systemd-sonic-generator
        c. Added functional level and program level UT class and test cases.

* Resolved review comments.

    1. Explicitly setting global pointers to NULL in definitions.
    2. Added a space before ": public" in class definitions to align style
       with SONiC C++ files.

* Merged strtok_r statements in single command.

Signed-off-by: Anand Mehra <anamehra@cisco.com>
2021-05-28 13:20:11 -07:00
Alexander Allen
b486686f90
[sonic-platform-daemons] submodule update (#7709)
Includes following commits

9297a29 Mock path early so it will applied to sonic_py_common, mock platform_chassis (#188)
9ba52a2 Mock path early so it will applied to sonic_py_common, mock more swsscommon classes (#187)
1adf47b [chassisd] Add script to initialize chassis info in STATE_DB (#183)
2021-05-28 11:54:19 -07:00
Alexander Allen
c9c52de9e3
[sonic-platform-common] submodule update (#7727)
Includes the following commits

295b68c Add return codes for FW install to component_base constants (#189)
e8e617d [sonic_sfp] Handle QSFP DD keys gracefully (#188)
2021-05-28 11:22:34 -07:00
Renuka Manavalan
1b33ebc9cd
K8S handles hostname in lower case (#7694)
Why I did it
k8s handles in lower case, so the code ensures that it uses hostname in all lower case

How I did it
Wrapper for device_info.get_hostname that returns in lower case. This wrapper is used in all places that require hostname to use in kubectl commands.

How to verify it
Device joins successfully.
2021-05-26 09:17:48 -07:00
Sudharsan Dhamal Gopalarathnam
7c811c56b3
FEC none config through minigraph (#7667)
When FECDisabled is set to true in minigraph.py, push 'fec' 'none' explicitly to config_db. When 'fec' is defined in port_config.ini do not override it with 'rs' for 100G
2021-05-25 09:07:32 -07:00
Kebo Liu
0ccd38e4d9
[Submodule update] sonic-snmpagent (#7638)
#### Why I did it
Update sonic-snmpaget submodule to pick up new commits:

> Extend rfc3433.py to support more Physical Entity Sensor MIB entries 28b9dfd3a2 

#### How I did it

update the submodule pointer to including the new commits

#### How to verify it

run community snmp test.
2021-05-24 16:22:04 -07:00
Alexander Allen
da7533aad4
[ntp] Fix ntp.conf template to allow setting of source port in CONFIG_DB (#7586)
Why I did it
Currently, there is a bug in the ntp.conf jinja2 template where it will ignore the src_intf directive in CONFIG_DB if there are multiple IP addresses associated with an interface. This code change fixes that bug and allows the template to select the correct source interface for NTP.

How I did it
I did this by modifying the macro in ntp.conf.j2 which determines if there is an ip address associated with an interface to set a state variable when it detects a valid interface entry in CONFIG_DB instead of outputting "true" directly (which could result in multiple "trues" outputted for interfaces with multiple valid IP addresses).

How to verify it
Add two ipv4 addresses to an interface in SONiC

Add the following configuration to config_db.json

{
"NTP": {
    "global": {
        "src_intf": "Ethernet1"
        }
    }
}
Replace Ethernet1 with the interface name of the one you assigned the IP addresses to.

Run sudo config reload -y

Open /etc/ntp.conf and verify that the following line exists

...
interface listen Ethernet1
...
The interface specified should be the one set in the previous steps.

Description for the changelog
[ntp] Fix ntp.conf template to allow setting of source port in CONFIG_DB
2021-05-23 13:40:43 -07:00
Junchao-Mellanox
e17e9f4b60
[YANG] Enhance the port yang model with new port fields: adv_speeds, interface_type and adv_interface_types (#6948)
Enhance the port yang model with new port fields: adv_speeds, interface_types and adv_interface_types
Refer to HLD Azure/SONiC#732
2021-05-20 10:12:22 -07:00
Neetha John
a9f6413eb5
[bgpcfgd] Enable BGP sessions over subinterfaces (#7654)
Signed-off-by: Neetha John nejo@microsoft.com

Fixes #7531

Why I did it
To enable bgp sessions to be established over subinterfaces

How I did it
Listen to VLAN_SUB_INTERFACE table in config db

How to verify it
Bgp sessions were established successfully over subinterface
2021-05-20 05:51:05 -07:00
Qi Luo
ea913fe3c6
[sonic-utilities] submodule update (#7653)
Includes below commits
```
00bd0ce 2021-05-18 | Limit pyroute2 version range due to upstream broken (#1622) [Qi Luo]
```
2021-05-19 14:54:14 -07:00
Shi Su
359c6bb9d1
[bgpcfgd] Redistribute static routes (#7492)
Why I did it
Enable redistribution of static routes

How I did it
Enable redistribution of static routes when the first route is added to STATIC_ROUTE table of Config_DB and disable the redistribution when the last route is removed from STATIC_ROUTE table.
2021-05-18 10:55:46 -07:00
vdahiya12
cbfbc4046c
[sonic-platform-daemons] submodule update (#7631)
This PR updates the following commits in sonic-platform-daemons

e60804c [xcvrd] add support for logging mux_metrics events into state DB (#185)
807b304 [psud] Add PSU Hardware Revision to Redis STATE_DB (#179)
d0be634 [muxcable] Remove Xcvrd Sleep (#174)
cc3803f [thermalctld] Enable stopping thermal manager (#180)
665fcd9 [xcvrd] Fix crash for QSFP DD media (#181)
cdabd09 [xcvrd] Change the y_cable presence logic to use "mux_cable" table as identifier from Config DB (#176)
4be4306 [xcvrd] Enhance Media Settings (#177)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-05-18 08:31:13 -07:00
xumia
ef7bde18b9
Skip the web proxy when downloading from proxy endpoint (#7592)
Why I did it
Skip to use the web proxy when the packages have been in the proxy server.
For sai packages or the other packages, we will upload the the proxy server directly, the reproducible will skip to check the site, not necessary to change the version files.
2021-05-18 14:28:32 +08:00
abdosi
f27aa33e69
[muti-asic] Updated BGP community for Internal routes (#7617)
Following changes are done:

Internal routes are tagged with no-export instead of local-AS
Option to add User Define BGP community on top of no-export
2021-05-16 19:44:06 -07:00
shlomibitton
7f9276823c
[sonic-utilities] submodule update (#7608)
[config]Static routes to config_db (#1534)
[DPB]: Shut down interface before dynamic port breakout (#1303)
[vlan] remove dhcp-relay as dhcp-relay commands will come as a plugin (#1378)
Add 'default' option for sFlow. (#1606)
[Command-Reference.md] Document new SNMP show and config commands (#1600)

Signed-off-by: Shlomi Bitton <shlomibi@nvidia.com>
2021-05-14 12:25:18 +03:00
shlomibitton
4123ec94c7
Update sonic-swss submodule (#7607)
Signed-off-by: Shlomi Bitton <shlomibi@nvidia.com>
2021-05-13 20:10:57 -07:00
Junchao-Mellanox
c265c74257
[sonic-platform-common] Update submodule (#7585)
1213d61 [thermal_manager_base] Add a stop function to thermal manager (#187)
a95834b  [DeviceBase] Added hardware revision number to generic device properties (#184)
f4901a0 [voqinbandif]To support inband port as front panel port (#159)
2021-05-12 13:59:03 -07:00
Ying Xie
b6c0dd652a
[utilities] advance utililies submodule head (#7580)
Include fullowing changes:

* 9fc630c 2021-05-11 | [sonic_installer] temporary fix: don't migrate packages on aboot platforms (#1607) (github/master) [Stepan Blyshchak]
* fde1d95 2021-05-11 | [config][vxlan] fix 'vxlan evpn_nvo add' command error (#1511) [shikenghua]
* 331c5a5 2021-05-10 | [config]: Use mod_entry when editing VLAN_INTERFACE (#1602) [Lawrence Lee]
* 8c2980a 2021-05-08 | [sonic-utilities] CLI support for port auto negotiation (#1568) [Junchao-Mellanox]
* a71ff02 2021-05-06 | [sfpshow] Gracefully handle improper 'specification_compliance' field (#1594) [Joe LeVeque]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2021-05-11 13:21:48 -07:00
Ying Xie
51b7c756e3
[linux kernel] advance linux kernel submodule head (#7559)
To include change:
* 12d8a0a 2021-05-06 | [dps200] Add dps200 PSU module driver (#207) (HEAD, origin/master, origin/HEAD) [schobtr]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2021-05-09 09:02:49 -07:00
DavidZagury
0a8023bbfd
[DPB][YANG-models] Update portchannel yang model to have lacp_key (#7297)
To update the yang model to support the new key interduced in Azure/sonic-swss#1660
2021-05-07 15:35:58 -07:00
ArthiSivanantham
67f293912f
[yang]: modify Vlan Member to include PortChannel along with Port (#7407)
To include PortChannel as Vlan Member (in addition to the already existing physical port)

Signed-off-by: Arthi Sivanantham <arthi_sivanantham@dell.com>
2021-05-07 15:22:34 -07:00
judyjoseph
44f21a18ea
Port the fix to get the PCI_id from asic.conf file from 201911 --> master branch (#7513)
Port the fix to get the pci_device ID from asic.conf file and update the "asic_id" field in DEVICE_METADATA with the pci_device_Id.

Ref: https://github.com/Azure/sonic-buildimage/pull/4705
2021-05-07 09:47:26 -07:00
Sudharsan Dhamal Gopalarathnam
06377f0f9a
sonic-utilities submodule update (#7532)
9a88cb6 [sonic_installer] dont fail package migration (#1591)
615e531 [show][config] Add new snmp commands (#1347)
fff4051 Fixing serial number read to get from DB if it is populated (#1580)
be974bf [neighbor_advertiser] Use existing tunnel if present for creating tunnel mappings (#1589)
9492eab Use swsscommon instead of swsssdk (#1510)
0f4988b Add pg-drop script to sonic filesystem (#1583)
cbe2159 [vnet] Add "vnet_route_check" script (#1300)
9120766 Relax the install_requires, no need to exact version as long as there are no broken changes with future versions (#1530)
2e09b22 Handle the new db version which mellanox_buffer_migrator isn't interested (#1566)
2021-05-06 13:31:33 -07:00
lguohan
7124dbe56b
[sonic-yang-models]: fix unit test failure (#7436)
https://github.com/mbj4668/pyang/blob/master/pyang/repository.py#L93 throws an exception with pip 21.1

add ietf yang model explicitly to the build process fix the test failure.

tests/test_sonic_yang_models.py .F [ 66%]
tests/yang_model_tests/test_yang_model.py . [100%]
Failed: pyang -f tree ./yang-models/*.yang > ./yang-models/sonic_yang_tree
----------------------------- Captured stderr call -----------------------------
./yang-models/sonic-acl.yang:8: error: module "ietf-inet-types" not found in search path
./yang-models/sonic-device_metadata.yang:8: error: module "ietf-yang-types" not found in search path

Signed-off-by: Guohan Lu <lguohan@gmail.com>
2021-05-06 10:57:03 -07:00
shlomibitton
557483d0b7
Revert "[submodule]: Update sonic-swss (#7478)" (#7524)
This reverts commit 963e7f4c2c.
2021-05-06 17:40:08 +03:00
trzhang-msft
6f85908d4f
dhcpmon: support dual tor scenario (#7471) 2021-05-03 10:51:26 -07:00
a-barboza
78b45085e9
[radius] Management User Authentication Feature Issue (#7420) (#7503)
Fix Invalid file name in windows, having ':' charactor. #7420
2021-05-01 10:25:20 -07:00
Lawrence Lee
1b39424520
[docker-orchagent]: Increase ndppd kernel poll interval (#7456)
Why I did it
ndppd by default reads /proc/net/ipv6_route ever 30 seconds. Since T1s advertise so many routes to ToRs, this file is extremely large, and reading it causes ndppd's CPU usage to spike every 30 seconds

How I did it
Increase the delay for reading this file to the maximum possible value (max integer value), which will result in CPU spikes every ~24 days instead of every 30 seconds

How to verify it
Start ndppd with the new config file, confirm that no CPU spikes are seen except at startup

Signed-off-by: Lawrence Lee <lawlee@microsoft.com>
2021-04-30 16:30:30 -07:00
Stepan Blyshchak
668a678e5e
[sonic-utilities] update sonic-utilities submodule (#7481)
08337aa [sonic-package-manager] first phase implementation of sonic-package-manager (#1527)
c166f66 [multi-asic] support show ip bgp neigh/network for multi asic (#1574)

Signed-off-by: Stepan Blyschak <stepanb@nvidia.com>
2021-04-30 15:45:04 -07:00
vmittal-msft
68dfa704b3
Updated Qos/MMU settings for Arista-7050CX3-32S-C32 & Arista-7050CX3-32S-D48C8 (#7068)
* TD3 Qos/MMU settings for Arista-7050CX3-32S-C32 & Arista-7050CX3-32S-D48C8
2021-04-30 10:02:08 -07:00
Joe LeVeque
64c3d3a7bf
[caclmgrd] Remove sleep which allowed threads to progress (#7475)
Previously, a brief sleep was necessary in order to get Python threads to progress. The root cause of this has since been found and fixed in sonic-swss-common: Azure/sonic-swss-common#477. The submodule was updated here, so we can now safely remove this sleep.

This PR should also be cherry-picked to the 202012 branch once the submodule is updated there to also include the fix.
2021-04-29 11:07:04 -07:00
shlomibitton
963e7f4c2c
[submodule]: Update sonic-swss (#7478)
[flex-counters] Delay flex counters stats init for faster boot time (Azure/sonic-swss#1646)
[routeorch] Add support for blackhole routes (Azure/sonic-swss#1723)
Update pool sizes during initialization from timer only (Azure/sonic-swss#1708)

Signed-off-by: Shlomi Bitton <shlomibi@nvidia.com>
2021-04-29 11:06:06 -07:00
Qi Luo
e3b2a040b2
[sonic-swss-common] Update submodule (#7467)
Includes commits
```
f3e1085 2021-04-22 | [swig] fix ConfigDBConnector.db_name (#483) [Qi Luo]
0e2f1c0 2021-04-21 | [swig] Implement SonicV2Connector.hmset() (#480) [Qi Luo]
d18ce28 2021-04-21 | [swss-common] Add MUX Metrics Table (#482) [Tamer Ahmed]
2e5a194 2021-04-20 | Support for in-band-mgmt via management VRF (#479) [Venkatesan Mahalingam]
3e5529f 2021-04-19 | [swig] Implement TableEntryPoppable.pops() (#478) [Qi Luo]
4a3903b 2021-04-19 | Support for in-band-mgmt via management VRF. (#476) [Venkatesan Mahalingam]
fc2c734 2021-04-19 | [swig] allow threads (#477) [Qi Luo]
```
2021-04-28 19:04:16 -07:00
Junchao-Mellanox
8f1c8a4f19
[submodule] Update submodule pointer for sonic-linux-kernel (#7454)
99ad210 [Mellanox] backport kernel patches for hw-management 7.0100.2303 (#211)

- Why I did it
Update submodule pointer for sonic-linux-kernel to include kernel patches for hw-mgmt 7.0100.2303

- How I did it
Update submodule pointer for sonic-linux-kernel
2021-04-28 16:16:47 +03:00
Kamil Cudnik
a8be1f45b9
[submodule] Advance sonic-sairedis submodule (#7425)
9672423 [sairedis] Add missing SAI interface apis (#827)
bb13d59 (origin/202012) Update call git clean on debian/rules (#826)
ca7b115 [Mellanox] Add SAI template config support (#803)
2021-04-28 01:31:22 -07:00
Vivek Reddy
595b71aaf6
[submodule] Update submodule for sonic-swss (#7432)
d9f28b6 [SflowMgr] SamplingRate Update by Speed Change Added (#1721)
6c02acf [MACsec]: Set macsec to bypass by default (#1719)
9720f74 [Monitor Vlan] Fix a typo in hostif (#1722)

Signed-off-by: Vivek Reddy Karri <vkarri@nvidia.com>
2021-04-27 16:24:17 -07:00
Renuka Manavalan
2ff17b3fff
[submodule] update sonic-utilities (#7439)
* 9dba93f disk_check: Check & mount RO as RW using tmpfs (#1569)
* c3963c5 Fix remove ip rif (#1535)
* 41d8ddc [config][generic-update] Adding apply-patch, rollback, checkpoints commands (#1536)
* a3d37f1 [console] Display success message after line cleared (#1579)
* b10c157 RADIUS Management User Authentication Feature (#1521)
* 59ed6f3 platform pre-check for reboot in master branch (#1556)
* f5efe89 [acl] Use a list instead of a comma-separated string for ACL port list (#1519)
* e296a69 No more IP validation as it is more likely a URL (#1555)
* d5f5382 [CLI][queue counters] add JSON output option for queue counters (#1505)
* 176cc4a 1) Loopback interfaces with valid nexthop IP are not ignored/treated as loopback. (#1565)
* 149ccbd [techsupport] Update show ip interface command (#1562)
* 0e84418 Stop PMON docker before cold and soft reboots (#1514)
* eba5c04 Fix Multi-ASIC show specific resursive route by using common parsing function (#1560)
* e57e7f7 cache the bvid to vlan translations (#1523)
* 38f9f60 sonic-installer: fix py3 issues in bootloader.aboot (#1553)
* 02b263a [voq/inbandif] Voq inbandif port (#1363)
* 0539789 [load_minigraph]: Avoid starting PFCWD for EPMS devicetype (#1552)
* 030293c Use 'importlib' module in lieu of deprecated 'imp' module (#1450)
* 50e5c61 Fixed the possibility of using uninitialized variable in route_check.py (#1551)
2021-04-27 16:23:34 -07:00
Maxime Lorrillere
a92da83047
[chassis] VoQ configuration using minigraph.xml file (#5991)
This commit contains the following changes to support for configuring a VoQ switch using a minigraph.xml file.:
- Add support for system ports configuration to minigraph
- Add support for SwitchId, SwitchType and MaxCores to minigraph
- Add support for inband vlan configuration in minigraph
- `asic_name` is now a mandatory attribute in CONFIG_DB on VoQ switches

Co-authored-by: Maxime Lorrillere <mlorrillere@arista.com>
2021-04-27 12:18:45 -07:00
Guohan Lu
27a635a15a Revert "Flashrom refactoring (#6922)"
This reverts commit 7dd9d1f3f2.
2021-04-25 11:51:35 -07:00
lguohan
1d81c382a7
[build]: fix build break on armhf for radius (#7416)
regression introduced in #7284

Signed-off-by: Guohan Lu <lguohan@gmail.com>
2021-04-24 19:44:27 -07:00
a-barboza
ec9101f9c5
RADIUS Management User Authentication Feature (#7284)
Why I did it
HLD: https://github.com/Azure/SONiC/blob/master/doc/aaa/radius_authentication.md
CLI: In a separate PR.

How I did it
How to verify it
UT: src/sonic-host-services/tests/hostcfgd/hostcfgd_radius_test.py
2021-04-23 19:09:41 -07:00
Vadym Hlushko
6bcea45862
[DPB][YANG] extended yang-model - added 'buffer_model' field, added test cases (#6464)
- Why I did it
The fix for the issue [DPB][YANG] sonic-device_metadata.yang is not aligned with newest changes in CONFIG_DB

- How I did it
CONFIG_DB was extended with the field buffer_model - added representation of this field inside the sonic-device_metadata.yang

- How to verify it
Run the command config interface breakout <interface> <breakout_mode>
Signed-off-by: Vadym Hlushko <vadymh@nvidia.com>
2021-04-22 10:00:36 +03:00
abdosi
ee98b17281
[submodule update] sonic-sairedis to move to SAI1.8.1 (#7393)
What/Why I did:

Updated sonic-sairedis submodule to use SAI1.8.1
[Submodule update] sonic-sairedis
d821bc0b137264daa01c347700c7c14677cf3370 (HEAD -> master, origin/master, origin/HEAD) [Mellanox] Add SAI template 
config support (#803)
bb341e9ea069e974a41930d434d437f522476f29 [syncd] Bring back TimerWatchdog (#821)
badf6cea2650015269420932a9186113d1ad5ec6 Update .gitignore (#822)
1494bc69046ffe7135377844548a11e4168b407c [meta] Mark local function static (#818)
34e961cf39e9af93f492f66640739e1c7a1694c8 [pyext] Fix pyext/py2 library (#820)
0d3749d3a93fd7e59ebb83b49fa1d7e2a56d6cf4 Moved SAI Header to git tag v1.8.1 (#816)
70fff780d529f78b53af4bd104f4932d0c4d8dd6 Added --purge of base docker image packages before installing new ones. (#819)

Updated Broadcom SAI Debian package to 4.3.3.4-2 to use SAI 1.8.1 Header
2021-04-21 17:41:45 -07:00
Shi Su
2dc7dc336b
[sonic-swss] Update submodule (#7384)
Update the sonic-swss submodule. The following is the new commit in the submodule.
```
b34f783 Resolve neighbor when nexthop does not exist (#1704)
500e2e9 [voq/inbandif] Voq inbandif port (#1602)
9f22ba7 Handle IPv6 and ECMP routes to be programmed to ASIC (#1711)
1b916c3 [acl] Add regression test for `config acl` CLI command (#1694)
8bc7aee Allowing the first time FEC and AN configuration to be pushed to SAI (#1705)
d0dd6ee [Dynamic buffer calc][Mellanox] Fix bug: buffer over subscription in buffer pool size calculation (#1706)
d8b8ca9 fix for CRM available bug (#1699)
97f70d1 NAT : Update the CRM used counters for SNAT and DNAT entries (#1655)
a4e05a7 [vstest] System lag test timing issue fix (#1692)
ca8ba6d [vlan] Add support of VLAN host interface (#1645)
2021-04-21 07:53:55 -07:00
Santhosh Kumar T
7dd9d1f3f2
Flashrom refactoring (#6922)
#### Why I did it
To build flashrom properly with dependency tracking.

#### How I did it
Moved flashrom code from platform/broadcom/sonic-platform-modules-dell/tools directory to src/flashrom directory.
At the end, flashrom_0.9.7_amd64.deb package is build which will be installed in the devices.
2021-04-20 15:24:44 -07:00
Lior Avramov
5a43636914
[Submodule update] sonic-snmpagent (#7301)
4e063e4 [ci]: setup proper azp
22ae215 [pytest]: add junit xml test result
80171a3 [SNMP] Update description of entPhysicalDescr mib in case interface is not configured. (#205)
2021-04-19 15:02:58 -07:00
guxianghong
6fe6d7394d
[arm] support compile sonic arm image on arm server (#7285)
- Support compile sonic arm image on arm server. If arm image compiling is executed on arm server instead of using qemu mode on x86 server, compile time can be saved significantly.
- Add kernel argument systemd.unified_cgroup_hierarchy=0 for upgrade systemd to version 247, according to #7228
- rename multiarch docker to sonic-slave-${distro}-march-${arch}

Co-authored-by: Xianghong Gu <xgu@centecnetworks.com>
Co-authored-by: Shi Lei <shil@centecnetworks.com>
2021-04-18 08:17:57 -07:00
Junchao-Mellanox
4bda1536cb
[submodule] Update submodule for sonic-swss-common (#7358)
804c9f9 [sonic-swss-common] Add a string utilities function to join items in a container (#463)
1e924ac Fix: ConfigDBConnector call super init with proper parameter name (#470)
70e02c8 [azp] Purge swss before installing the newly built deb package (#472)
15c0f72 [swig] translate SonicV2Connector::keys return type from C++ vector to Python list (#468)
2021-04-18 08:07:58 -07:00
vdahiya12
f8d38aeeb5
[sonic-platform-daemons] submodule update (#7351)
[muxcable] Fix Redis Selectable Processing (#173)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-04-16 15:43:51 -07:00
Renuka Manavalan
678bbc6ba3
Kubernetes server configurable using URL
1) Dropped non-required IP update in admin.conf, as all masters use VIP only (#7288)
2) Don't clear VERSION during stop, as it would overwrite new version pending to go.
3) subprocess, get return value from proc and do not imply with presence of data in stderr.
2021-04-16 13:55:36 -07:00
jmmikkel
e1bee859aa
Add "bgp bestpath peer-type multipath-relax" to FRR (#5629)
* Add "bgp bestpath peer-type multipath-relax" to frr

This new BGP configuration is akin to "bgp bestpath aspath multipath-relax".
When applied, paths learned from different peer types will be eligible
to be considered for multipath (ECMP). Paths from all of eBGP, iBGP, and
confederation peers may be included in a multipath group if they are
otherwise equal cost.

When such a multipath group is created, it is not desirable for
iBGP nexthops to be discarded from the FIB because they are not directly
connected. So when publishing the nexthop group to zebra, bgpd will allow
recursive resolution, but only when there are iBGP-learned paths in the
group.

This change is merged in FRR in this PR FRRouting/frr#8056

Signed-off-by: Joanne Mikkelson <jmmikkel@arista.com>
2021-04-16 11:20:15 -07:00
jmmikkel
43342b33b8
[chassis] Add templates and code to support VoQ chassis iBGP peers (#5622)
This commit has following changes:

* Add templates and code to support VoQ chassis iBGP peers

* Add support to convert a new VoQChassisInternal element in the
   BGPSession element of the minigraph to a new BGP_VOQ_CHASSIS_NEIGHBOR 
   table in CONFIG_DB.
* Add a new set of "voq_chassis" templates to docker-fpm-frr
* Add a new BGP peer manager to bgpcfgd to add neighbors from the
  BGP_VOQ_CHASSIS_NEIGHBOR table using the voq_chassis templates.
* Add a test case for minigraph.py, making sure the VoQChassisInternal
  element creates a BGP_VOQ_CHASSIS_NEIGHBOR entry, but not if its
  value is "false".
* Add a set of test cases for the new voq_chassis templates in
  sonic-bgpcfgd tests.

Note that the templates expect the new
"bgp bestpath peer-type multipath-relax" bgpd configuration to be
available.

Signed-off-by: Joanne Mikkelson <jmmikkel@arista.com>
2021-04-16 11:11:32 -07:00
ArthiSivanantham
cbd4ef594c
[yang]: SONiC Yang model for PORTCHANNEL_INTERFACE_LIST and VRF (#7194)
SONiC YANG model support for PORTCHANNEL_INTERFACE_LIST and VRF in config DB.

Signed-off-by: Arthi Sivanantham <arthi_sivanantham@dell.com>
2021-04-15 19:15:04 -07:00
Lawrence Lee
39a027bceb
[l2-preset]: Add all dual ToR required fields (#7318)
- Add peer_switch field to DEVICE_METADATA table
- In PORT table:
   - Set used ports to admin status up
   - Set mux_cable to true for downlinks in use
- In MUX_CABLE table:
   - Only add entry if the downlink is in use

Signed-off-by: Lawrence Lee <lawlee@microsoft.com>
2021-04-14 17:38:14 -07:00
vdahiya12
75c29cbbb9
[sonic-platform-daemons] submodule update (#7298)
c4d4790 [xcvrd] refactor Y-Cable firmware information to conform with all vendors (#171)
be7f4e1 [voqinband]Support for inband port as regular port (#145)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-04-13 01:02:15 -07:00
Junchao-Mellanox
32b5b027f4
[sonic-platform-daemons] Update submodule (#7277)
eff5c1c [thermalctld] No need exit thermalcltd when loading invalid policy file (#172)
5b6d9c0 [syseepromd] Add unit tests; Refactor to allow for greater unit test coverage (#156)
2021-04-12 10:57:53 -07:00
anish-n
9d81524768
Add downstreamsubrole parsing to minigraph.py (#7193) 2021-04-12 10:33:41 -07:00
MuLin
5e17093f06
[submodule]: update sonic-telemetry submodule (#7275)
1c3f75e (HEAD -> master, origin/master, origin/HEAD) pindown the version of github.com/openconfig/gnoi (#76)
33acd5b [ci]: setup proper azp (#75)
5d82051 [CI] Set up CI with Azure Pipelines (#72)
0688cdb Remove go get commands from Makefile to prevent go.mod file from chan… (#66)
2021-04-09 06:51:50 -07:00
Stepan Blyshchak
4351db7035
[sonic-swss] update sonic-swss submodule (#7263)
5c63670 (HEAD, origin/master, origin/HEAD) [intfmgrd] reach reconciled state at start when there are no interfaces configuration to process (#1695)
66e1aab [Dynamic Buffer Calc] Enhancement: coding style and LGTM alerts (#1693)
637e8d0 Skip Macsec test case till macsec orch code is made SAIv1.8.0 compatible (#1688)
872b5cb [ci]: archive swss pytests (#1690)
73cbd91 [Makefile] Reorder libsaimetadata and libswsscommon (#1689)
cba6576 Correct the sflow default sample rate (#1623)
aac71e6 Don't update pools when ingress_lossless_pool is created but the initialization hasn't finished yet (#1685)
ae5f051 Fix dynamic buffer bug occuring in rare condition (#1678)
691bd30 [voq/systemlag] Voq system lag functionality (#1605)

Signed-off-by: Stepan Blyschak <stepanb@nvidia.com>
2021-04-08 15:37:28 -07:00
Shi Su
42059ac6d7
[bgpcfgd] Add bgpcfgd support for static routes (#7233)
Why I did it
Add bgpcfgd support for static routes.

How I did it
Add bgpcfgd support to subscribe changes in STATIC_ROUTE table in CONFIG_DB and program via vtysh. The key of STATIC_ROUTE table is formatted as STATIC_ROUTE|vrf|ip_prefix, while the vrf is optional. If would be treated the same as "default" if no vrf is given.

Add unit tests.
2021-04-08 13:51:58 -07:00
Joe LeVeque
39a5efe0f4
[sonic-py-common.task_base] Provide ability to set stop timeouts (#6914)
#### Why I did it

Allowing an application to set a stop timeout for processes and threads provides the following benefits:

1. Prevents the application from hanging indefinitely in the case a process or thread does not exit
2. Allow ProcessTaskBase a chance to let the process exit gracefully before attempting to kill it

Default values are as follows:
- ProcessTaskBase: 1 second
- ThreadTaskBase: No timeout

#### How I did it

- Add optional `stop_timeout_secs` parameter to initializers of ProcessTaskBase and ThreadTaskBase
- Additionally:
    - Prefix private attributes with an underscore
    - Remove obsolete comments
2021-04-08 10:23:33 -07:00
Vivek Reddy
69b03fc01f
[ethtool]: disable unit test when building ethtool on armhf/arm64 (#7226)
Compiling ethtool from source is causing ethtool unit tests to fail on ARM Platforms.

These tests are failing: (By default netlink-interface is enabled while compiling ethtool)
Link: ([Test File Link](https://salsa.debian.org/kernel-team/ethtool/-/blob/debian/1%255.9-1/test-cmdline.c#L28))
```
FAIL: test-cmdline
==================

E: ethtool 16_char_devname! returns 1
E: ethtool 
127_char_devname0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcde returns 1
E: ethtool --change devname xcvr external returns 0
E: ethtool --change devname speed 100 duplex half port tp autoneg on advertise 0x1 phyad 1 xcvr external wol p sopass 01:23:45:67:89:ab msglvl 1 returns 0

FAIL test-cmdline (exit status: 1)
```
Tested this on Local ARM Emulated Container:

```
(Docker Container Emulating ARM)
vkarri@3a03c70eed35:/tmp/ethtool$ ./ethtool 16_char_devname!
netlink interface initialization failed, device name longer than 15 not supported
vkarri@3a03c70eed35:/tmp/ethtool$ echo $?
1 (Expected 0)
vkarri@3a03c70eed35:~/ethtool$ ./ethtool 16_char_devnameee
netlink interface initialization failed, device name longer than 15 not supported

Checked for dependencies: (all are present)
vkarri@3a03c70eed35:~/ethtool$ apt-cache policy libmnl0
libmnl0:
  Installed: 1.0.4-2
  Candidate: 1.0.4-2
  Version table:
 *** 1.0.4-2 500
        500 http://deb.debian.org/debian buster/main armhf Packages
        500 http://packages.trafficmanager.net/debian/debian buster/main armhf Packages
        100 /var/lib/dpkg/status

vkarri@3a03c70eed35:~/ethtool$ apt-cache policy libc6  
libc6:
  Installed: 2.28-10
  Candidate: 2.28-10
  Version table:
 *** 2.28-10 500
        500 http://deb.debian.org/debian buster/main armhf Packages
        500 http://packages.trafficmanager.net/debian/debian buster/main armhf Packages
        100 /var/lib/dpkg/status
```

#### How I did it
Disabled netlink-interface for ethtool. 

Even though Netlink is not available, it doesn't seem to impact what ethtool was supposed to do. In fact the older version which was in use before this PR [#5725](https://github.com/Azure/sonic-buildimage/pull/5725) did not have netlink support and everything seemed to work well

Article on Netlink-Support for ethtool: https://lwn.net/Articles/783633/

Signed-off-by: Vivek Reddy Karri <vkarri@nvidia.com>
2021-04-08 09:08:22 -07:00
Joe LeVeque
ee1383791c
[sonic-py-common] Add 'general' module with load_module_from_source() function (#7167)
#### Why I did it

To eliminate the need to write duplicate code in order to import a Python module from a source file.

#### How I did it

Add `general` module to sonic-py-common, which contains a `load_module_from_source()` function which supports both Python 2 and 3.

Call this new function in:
- sonic-ctrmgrd/tests/container_test.py
- sonic-ctrmgrd/tests/ctrmgr_tools_test.py
- sonic-host-services/tests/determine-reboot-cause_test.py
- sonic-host-services/tests/hostcfgd/hostcfgd_test.py
- sonic-host-services/tests/procdockerstatsd_test.py
- sonic-py-common/sonic_py_common/daemon_base.py
2021-04-08 08:29:28 -07:00
Joe LeVeque
614140ebc9
[sonic-platform-daemons] Update submodule (#7251)
src/sonic-platform-daemons 450b7d7...0bd9f69 (2):
- [thermalctld] Fix 'NameError("name 'chassis' is not defined")' error in log (#170)
- [xcvrd] Gracefully handle improper 'specification_compliance' field; also fix other potential bugs (#169)
2021-04-08 00:19:51 -07:00
vdahiya12
a7c55a1db0
[sonic-platform-common] submodule update (#7253)
872f0a3 [Y-Cable] refactor get_firmware_version to comply with all vendors (#182)
cc162d6 [sonic_y_cable]: Decorate all method for mux simulator (#181)
fa02416 Change import order in Ycable helper and EEPROM read bytearray change in SFP plugin (#177)
0b60982 [thermal_base] Add setter functions for critical thresholds (#180)
10dc16f [y_cable] add support for enable/disable autoswitch feature on Y cable (#176)
c6c81a8 [fan_drawer_base.py] Fix FanDrawer get_status_led interface (#175)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-04-07 22:01:04 -07:00
abdosi
8ec3bdc301
[multi-asic] Make sure Everflow tables always gets classified as Mirror table (#7241)
Make sure Everflow always gets classified as Mirror table and not as Control Plane on multi-asic platforms.

Why I did:
In Multi-asic platforms we generate Everflow acl table data from minigraph for both host and namespace.
It is possible in multi-asic minigraph if there are no external port-channel (Only Router Port IP Interface) then Everflow table will have no binded interface in host and will gets classified as Control Plane ACL while in namespace gets classified as Mirror Table.
For ACL Rule generation we read global db as source of truth for acl table information and so for everflow rule generation if tables gets classified as Control plane we can generate rules with invalid action causing orchagent to throw runtime error.

How I did:
If the table is attach to erspan interface in minigraph then it always gets classified as mirror table.
2021-04-07 13:35:34 -07:00
Prince Sunny
20c8dd2691
[IPinIP] Add Loopback2 interface, change dscp mode to uniform (#7234)
Co-authored-by: Ubuntu <prsunny>
2021-04-07 09:58:12 -07:00
Danny Allen
fca7b2429d
Revert "Add fabric lane mapping to vs (sai.profile) and HWSKU Force10-S6000 (#6185)" (#7250)
This reverts commit c2b5e931a2.
2021-04-07 09:57:16 -07:00
Nazarii Hnydyn
241fabd7e6
[submodule]: Advance sonic-utilities submodule. (#7246)
pull up fwutil next image mount fix

Signed-off-by: Nazarii Hnydyn <nazariig@nvidia.com>
2021-04-07 09:26:42 -07:00
ngoc-do
c2b5e931a2
Add fabric lane mapping to vs (sai.profile) and HWSKU Force10-S6000 (#6185)
Signed-off-by: ngocdo <ngocdo@arista.com>
2021-04-07 09:10:40 -07:00
yozhao101
0ceaf846c3
[sonic-utilities] Update submodule. (#7227)
3f2a296 - 2021-04-06 | [fast-reboot] Fix fast-reboot-dump.py SonicV2Connector after late merge (# 1546) [Shlomi Bitton]
87b2481 - 2021-04-04 | Reduce time taken by show commands on multi-asic platforms (# 1544) [Abhishek Dosi]
9bbc25f - 2021-04-04 | [config] Eliminate race condition between reloading Monit config and monitoring container_checker (# 1543) [Yong Zhao]
e0f678a - 2021-04-03 | [setup.py]: move the module to test requirement (# 1542) [Guohan Lu]
37376dd - 2021-04-02 | [ci]: download latest docker-sonic-vs from sonic-swss repo (# 1541) [Guohan Lu]
d55d406 - 2021-3-31 | [acl_loader]: add iptype match to the rules for dataplane acl (# 1540) [Guohan Lu]
12fc01e - 2021-04-03 | [reboot] No need enable the Linux magic system request key (# 1538) [Yong Zhao]
0ce6a25 - 2021-04-05 | [show][config] cli support for firmware upgrade on Y-Cable (# 1528) [Vaibhav Dahiya]
e9cfb32 - 2021-04-02 | [fast-reboot] Fix dump script to support PortChannels in a VLAN group (# 1393) [Shlomi Bitton]

Signed-off-by: Yong Zhao <yozhao@microsoft.com>
2021-04-06 19:08:00 -07:00
abdosi
9f2deae8fb
[multi-asic] optimize api that checks port/port-channel/bgp is internal (#7232)
Optimize the API's is_port_internal() , is_portchannel_internal() and is_bgp_internal ()to call get_entry(Redis hget) instead of get_table (Redis keys *)
2021-04-05 18:55:10 -07:00
Aravind Mani
6d83a424b5
[dell]: System Health: Fix ASIC key issue in Dell platform (#6556)
ASIC key used in system health daemon is not present in Dell platforms.

Fixes #6343

Got the thermal sensor list using 2.0 API and retrieved the ASIC keys.
2021-04-05 18:00:38 -07:00
Prince Sunny
7aa03bead9
Submodule update sai-redis (#7223)
1942d73 - 2021-04-02 : [vslib] Allow host interface object ID to be "VLAN" type (#804) [Volodymyr Samotiy]
2021-04-05 15:28:15 -07:00
Lawrence Lee
0a86699e73
[sonic-config-engine]: Update L2 preset for dualtor (#7215)
- When generating L2 preset, check for dual ToR setting from CLI option `-a '{"is_dualtor": true}'`
- When dual ToR is specified, add subtype field to DEVICE_METADATA table
- When dual ToR is specified, add MUX_CABLE, TUNNEL, LOOPBACK_INTERFACE, and PEER_SWITCH tables
2021-04-05 13:06:27 -07:00
abdosi
38258acda3
[submodule update] sonic-db-syncd (#7225)
df46ed418e661a9bccdb2639d8873def356f8ba0 (HEAD -> master, origin/master, origin/HEAD) Fix the LLDP_LOC_CHASSIS not getting populated if no remote neighbors are present (#39)
e487532e11cc0e97cfce573b6b997fdd0beeb660 [CI] Set up CI&PR with Azure Pipelines (#38)
3c9f488490a1dbded20dbf2d8a88a5ab4dbda8df Replace swsssdk's SonicV2Connector with swsscommon's implementation (#35)

Signed-off-by: Abhishek Dosi <abdosi@microsoft.com>
2021-04-03 07:36:11 -07:00
Aravind Mani
27f4daba54
Update Media settings test case (#7220) 2021-04-02 10:07:09 -07:00
Yilan
b6ed39d248
[build]: Fix pip3 hook ENABLE_VERSION_CONTROL_PY param (#7147) 2021-04-01 22:43:34 -07:00
Shi Su
66216e59bf
[sonic-sairedis] Update submodule (#7202)
1906fdf [pyext] Update Makefile to disable warning Wconversion for older swig (#817)
1dbcaeb Remove gbsyncd_startup.py (#813)
0372615 [vslib] Refresh queue pause status (#814)
00d883c [sairedis] Add sai_dbg_generate_dump api to redis interface (#811)
8585803 [sairedis] Unlock api mutex for communication mode (#812)
c69549a [pyext] Add SWIG sairedis python submodule (#806)
2021-04-01 22:41:49 -07:00
Sumukha Tumkur Vani
71afd4ba63
[submodule]: Update restapi (#7213)
Feb 17 Fix tests failing due to duplicate vxlan tunnel creation (#75)
Mar 11 Update route api to specify limitation (#77)
Apr 01 Add host_ifname field while adding entry in VLAN table (#80)
2021-04-01 22:40:55 -07:00
vganesan-nokia
973affce39
[voq/inbandif] Support for inband port as regular port (#6477)
Changes in this PR are to make LLDP to consider Inband port and to avoid regular
port handling on Inband port.
2021-04-01 16:24:57 -07:00
Stephen Sun
aa63c71420
[submodule]: update sonic-linux-kernel (#7211)
Unset CONFIG_THERMAL_STATISTICS to prevent kernel crash (#199)
[net] Disable prio and cls cgroups to make working cgroup2 sock matching (#198)
[doc]: Fix typos in README (#206)
[Mellanox] Backport patch to remove critical trip point from thermal zones (#201)

Signed-off-by: Stephen Sun <stephens@nvidia.com>
2021-04-01 08:36:30 -07:00
xumia
812d753be1
Fix CVE-2017-1000487 security alert (#7173)
#### Why I did it
Plexus-utils before 3.0.16 is vulnerable to command injection because it does not correctly process the contents of double quoted strings.

#### How I did it
Upgrade to 3.0.16
2021-03-31 22:45:06 -07:00
Stephen Sun
606c9676ec
[submodule]: update sonic-platform-daemons (#7196)
c5be3ca4 [psud] Increase unit test coverage; Refactor mock platform (#154)
450b7d78 Bug fix: the fields that are not supported by vendor should be "N/A" in STATE_DB (#168)

Signed-off-by: Stephen Sun <stephens@nvidia.com>
2021-03-31 15:07:37 -07:00
yozhao101
6fc589744f
[determine-reboot-cause] Support 'Kernel Panic' reboot cause (#7153)
Signed-off-by: Yong Zhao yozhao@microsoft.com

Why I did it
If device reboot was caused by kernel panic, then we need retrieve and store the key information into the symbol file previous-reboot-cause.json. The CLI show reboot-cause will read this file to get the reason of previous reboot.

This PR is related to PR in sonic-utilities repo: Azure/sonic-utilities#1486

How I did it
The string variable previous_reboot_cause will be parsed to check whether it contains the keyword Kernel Panic. If it did, then store the keyword and time information into a dictionary.

How to verify it
I verified this change on a virtual testbed.

admin@vlab-01:/host/reboot-cause$ more previous-reboot-cause.json
{"gen_time": "2021_03_24_23_22_35", "cause": "Kernel Panic", "user": "N/A", "time": "Wed 24 Mar 2021 11:22:03 PM UTC", "comment": "N/A"}

admin@vlab-01:/host/reboot-cause$ show reboot-cause
Kernel Panic [Time: Wed 24 Mar 2021 11:22:03 PM UTC]
2021-03-31 12:14:16 -07:00
Stepan Blyshchak
d580090476
[sonic-utilities] submodule update (#7201)
9a2872d [cli] Dynamic cli extension via plugins (#1186)
6b51bcd [ci]: add vstest to azure pipeline (#1436)
28b64ec [acl-loader]: do not add default deny rule for egress acl (#1531)

Signed-off-by: Stepan Blyschak <stepanb@nvidia.com>
2021-03-31 12:00:35 -07:00
joyas-joseph
0b64dc30d8
[yang]: Split yang tests into multiple files (#6939)
* Add manageability to the yang model tests by splitting the tests
and config data for the tests into multiple files.

The "tests" directory contains all the tests and the "tests_config"
directory contains the configs used for the tests.

New tests can be added in new json files.

Signed-off-by: Joyas Joseph <joyas_joseph@dell.com>
2021-03-31 10:58:13 -07:00
Shi Su
50f3be5259
[sonic-swss] Update submodule (#7197)
Update the sonic-swss submodule to include failure notification for orchagent. The following is the new commit in the submodule.

fa983d2 Add failure notification for orchagent
2021-03-31 10:45:36 -07:00
vdahiya12
4b2e83ec16
[sonic-platform-daemons] submodule update (#7143)
this PR updates the following commits in sonic-platform-daemons
260cf2d [xcvrd] change firmware information fields name inside MUX_CABLE_INFO table for Y cable (#165)
cfa600f [thermalctld] Initialize fan led in thermalctld for the first run (#167)
8509f43 [thermalctld] Refactor to allow for greater unit test coverage; Add more unit tests (#157)
70f4e7b [syseepromd] Update warning message to be more informative (#160)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-03-30 12:26:18 -07:00
Stephen Sun
423f6c7f30
[submodule]: update submodule head for sonic-swss (#7187)
[SFlowMgr] Sflow Crash on 200G ports handled (#1683)
Remove PGs from an administratively down port. (#1677)
Stablize the test case (#1679)
Revert "Revert "[buffermgr] Support maximum port headroom checking (#1607)" (#1675)" (#1682)

Signed-off-by: Stephen Sun <stephens@nvidia.com>
2021-03-30 10:17:51 -07:00
Dmytro Shevchuk
d8627e6414
[yang] update yang model, add autoneg to sonic-port (#5963)
Dynamic Port Breakout fall in case "autoneg" field exist in config_db.

- How I did it
Added "autoneg" field in sonic-port yang model.

- How to verify it
Add "autoneg" field into config_db like this:

"Ethernet8": {
    "index": "2", 
    "lanes": "8,9,10,11", 
    "fec": "rs", 
    "pfc_asym": "off", 
    "mtu": "9100", 
    "alias": "Ethernet8", 
    "admin_status": "up", 
    "autoneg": "on", 
    "speed": "100000",
},
2021-03-30 08:27:58 -07:00
Praveen Chaudhary
a1992c054f
[sonic-portchannel.yang]: YANG models for PORTCHANNEL_MEMBER table. (#7020)
Changes:
-- YANG models for PORTCHANNEL_MEMBER table.
-- Yang Model Test.
-- Yang Mgmt Test with PORTCHANNEL_MEMBER table in config_db.json

Signed-off-by: Praveen Chaudhary <pchaudhary@linkedin.com>
2021-03-30 08:26:37 -07:00
Mykola Gerasymenko
eb12244c3f
[submodule]: update swss-common (#7121)
- fix getting hash from redis db (#465)
- [dbconnector] Initialize redisContext (#464)
2021-03-29 15:23:50 -07:00
yozhao101
0f0faeeadd
[sonic-utilites] Update submodule. (#7172)
- 4d89510 - 2021-3-28 | [reboot] User-friendly reboot cause message for kernel panic (#1486) [Yong Zhao]
- 1f1696a - 2021-3-26 | Add all parameter to show/clear queue watermark command (#1149) [ Petro Bratash]

Signed-off-by: Yong Zhao <yozhao@microsoft.com>
2021-03-28 22:41:40 -07:00
ArthiSivanantham
cc36a145cb
[yang]: SONiC Yang model for PORTCHANNEL_INTERFACE table (#7034)
* SONiC Yang model for PORTCHANNEL_INTERFACE table

Signed-off-by: Arthi Sivanantham <arthi_sivanantham@dell.com>
2021-03-28 00:51:11 -07:00
Praveen Chaudhary
d3d0c2623d
[yang-models]: Remove PLY Extensions and change translation code. (#6915)
* [yang-models]: Remove PLY Extensions and change translation code.

   With assumption that TABLE_SEPARATOR and ENTRY_SEPARATOR for configDB is always "|",
   translation from configDB.json to sonicYang.json can be done based on keys specified
   in YANG Lists inside YANG models. So removing extensions is good idea.

Changes:
-- Remove use of regex in Translation code.
-- Remove regex Extensions from YANG models.
-- Improved debugging i.e. log on stdout in case of any Exception from sonic-yang-mgmt,
   so that failed tests can be debugged faster. Also this is good to debug Dynamic
   port breakout issues.
-- Minor Test changes.

Co-authored-by: lguohan <lguohan@gmail.com>
2021-03-28 00:49:10 -07:00
Dong Zhang
6d23a78ffb
[sonic-yang-model] fix ip_type value in test cases (#6968)
IPV4ANY is not valid value, fix to IPv4ANY

without this change, test case failed sometimes when the validation on IP_TYPE happens first and then PACKET_ACTION.
2021-03-27 21:16:06 -07:00
Joe LeVeque
c651a9ade4
[dockers][supervisor] Increase event buffer size for process exit listener; Set all event buffer sizes to 1024 (#7083)
To prevent error [messages](https://dev.azure.com/mssonic/build/_build/results?buildId=2254&view=logs&j=9a13fbcd-e92d-583c-2f89-d81f90cac1fd&t=739db6ba-1b35-5485-5697-de102068d650&l=802) like the following from being logged:

```
Mar 17 02:33:48.523153 vlab-01 INFO swss#supervisord 2021-03-17 02:33:48,518 ERRO pool supervisor-proc-exit-listener event buffer overflowed, discarding event 46
```

This is basically an addendum to https://github.com/Azure/sonic-buildimage/pull/5247, which increased the event buffer size for dependent-startup. While supervisor-proc-exit-listener doesn't subscribe to as many events as dependent-startup, there is still a chance some containers (like swss, as in the example above) have enough processes running to cause an overflow of the default buffer size of 10.

This is especially important for preventing erroneous log_analyzer failures in the sonic-mgmt repo regression tests, which have started occasionally causing PR check builds to fail. Example [here](https://dev.azure.com/mssonic/build/_build/results?buildId=2254&view=logs&j=9a13fbcd-e92d-583c-2f89-d81f90cac1fd&t=739db6ba-1b35-5485-5697-de102068d650&l=802).

I set all supervisor-proc-exit-listener event buffer sizes to 1024, and also updated all dependent-startup event buffer sizes to 1024, as well, to keep things simple, unified, and allow headroom so that we will not need to adjust these values frequently, if at all.
2021-03-27 21:14:24 -07:00
dependabot[bot]
247ac7ba17
Bump lxml from 4.6.2 to 4.6.3 in /src/sonic-config-engine (#7122)
Bumps [lxml](https://github.com/lxml/lxml) from 4.6.2 to 4.6.3.
- [Release notes](https://github.com/lxml/lxml/releases)
- [Changelog](https://github.com/lxml/lxml/blob/master/CHANGES.txt)
- [Commits](https://github.com/lxml/lxml/compare/lxml-4.6.2...lxml-4.6.3)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-27 11:54:38 -07:00