Commit Graph

1894 Commits

Author SHA1 Message Date
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
maksymbelei95
2ef0eb8c08
[Submodule update] - sonic-utilities (#7144)
* 1ee04fb (HEAD -> master, origin/master, origin/HEAD) Modified the tests to use mock functionality of get_child_port function under portconfig utility (#1464)
* 99d251f Enable PFCWD only on ports where PFC is enabled (#1508)
* eb7945f Warmboot script improvements - timeout exec, disable swss autorestart, remove trap (#1495)
* c7d4947 [show] Fix int status of LAGs, configured as Vlan members (#1478)

Signed-off-by: Maksym Belei <Maksym_Belei@jabil.com>
2021-03-27 11:50:20 -07:00
Shi Su
de64c4e34c
[bgp]: Reduce bgp connect retry timer to 10 seconds (#7169)
The default bgp connect retry timer is 120 seconds. A reconnection will happen 120 seconds if the initial connection fails. This PR aims to allow a more frequent retry.
2021-03-27 11:36:56 -07:00
Joe LeVeque
bf43dd375a
[sonic-sairedis][sonic-swss] Update submodules (#7089)
Update sonic-sairedis submodule and also update sonic-swss submodule as there are interdependent changes.

* src/sonic-sairedis 13474d1...bc58b0f (12):
  > Add gbsyncdmgrd; deprecate gbsyncd_startup.py (#809)
  > Remove gbsyncd_start.sh (#808)
  > [gbsyncd] Fix shebang in gbsyncd_startup.py; Make script executable (#807)
  > [saiasiccmp] Add saiasiccmp tool to compare 2 asic views (#791)
  > [configure] Add -Wno-psabi to remove "passing argument changed in GCC 7.1" (#799)
  > Update FlexCounter.cpp, use m_pollInterval in MUTEX lock (#797)
  > [vs] Add special warm boot logic to populate default attributes (#796)
  > [ci]: add vstest (#795)
  > [tests] Add macsec unittest (#782)
  > [debian/control] libsairedis-dev depends on libzmq5-dev (#794)
  > [ci]: use build template (#793)
  > Rename duplicate file name (#773)

* src/sonic-swss 0b0d24c...5adb73e (47):
  > Initialize system port type variable (#1681)
  > [Dynamic Buffer Calc] Enhance the field checking in table handling (#1680)
  > Handle the clear request for 'Q_SHARED_ALL' (#1653)
  > [MuxOrch] FDB ageout safety check (#1674)
  > Deactivate mirror session only when session status is true in updateLagMember (#1666)
  > Revert "[buffermgr] Support maximum port headroom checking (#1607)" (#1675)
  > reduce severity of log to info in case of flush on non-existing member (#1669)
  > Revert "[Dynamic buffer calc] Bug fix: Remove PGs from an administratively down port. (#1652)" (#1676)
  > [Dynamic buffer calc] Bug fix: Remove PGs from an administratively down port. (#1652)
  > [acl] Move ACL table constants to acltable.h (#1671)
  > [nbrmgrd] added function to parse IP address from APP_DB (#1672)
  > [MUX/PFCWD] Use in_ports for acls instead of seperate ACL table (#1670)
  > [vog/systemlag] Voq lagid allocator (#1603)
  > Add table descriptions for dynamic buffer calculation to the documents (#1664)
  > [vstest/subintf] Add vs test case to validate processing sequence of APPL DB keys (#1663)
  > Remove vxlanmgrd dependency on orchagent (#1647)
  > Keep attribute order in bulk mode (#1659)
  > [mux] VS test for neigh, route and fdb (#1656)
  > [linksync] Netdev oper status determination using IFF_RUNNING (#1568)
  > [portorch] parse on/off value from autoneg (#1658)
  > [intfsorch] Create subport with the entry contains necessary attributes (#1650)
  > [ci]: Purge swss before install (#1654)
  > Update StateDB with error if state change failed, Update APP_DB in all state chg req (#1662)
  > Added changes to handle dependency check in FdbSyncd and FpmSyncd for warm-boot (#1556)
  > [synchronous mode] Add failure notification for SAI failures in synchronous mode (#1596)
  > [acl] Enable VLAN ID qualifier for ACL rules (#1648)
  > Updated PFCWD to use single ACL table for PFCWD and MUX (#1620)
  > [orchagent] Increase SAI REDIS response timeout to support FW upgrade during init (Mellanox only). (#1637)
  > [vstest/nhg]: use dvs_route fixture to make test_nhg more robust
  > [vstest]: add dvs_route fixture
  > [vstest/subintf] Update vs tests to validate physical port host interface vlan tag attribute (#1634)
  > Remove useless header  in macsecorch (#1628)
  > Add SAI_INGRESS_PRIORITY_GROUP_STAT_DROPPED_PACKETS counter, create new FlexCounter group (#1600)
  > fixed unsupported resource issue (#1641)
  > [test_virtual_chassis]: use wait_for to make test more robust (#1640)
  > spell check fixes (#1630)
  > [bufferorch] Handle NOT IMPLEMENTED status returned during set attr operation (#1639)
  > [ci]: run vstest
  > [test_virtual_chassis]: use wait_for function to improve test robustness
  > [Mux] Neighbor handling based on FDB entry (#1631)
  > [ci]: use build template (#1633)
  > Log level change from ERR to INFO for fetch systemports issue (#1632)
  > Migrate serdes programming to port serdes object (#1611)
  > [tests] Remove legacy saiattributelist.h dependency (#1608)
  > [buffermgr] Support maximum port headroom checking (#1607)
  > Support shared headroom pool on top of dynamic buffer calculation (#1581)
  > Fix the compiling errors in gcc9 (#1621)
2021-03-26 10:01:08 -07:00
abdosi
4be9844728
[Submodule update] sonic-snmpagent (#7107)
c20bf60 Qi Luo  Mon Mar 15 14:28:31 2021 -0700  Implement rfc4363 FdbUpdater for lag inside vlan (#203)
292024a abdosi  Mon Mar 15 12:15:21 2021 -0700  Updated lldpRemManAddrTable to use all the management ip address associated with interface. (#201)
9b83459 liushilongbuaa  Fri Mar 12 14:35:23 2021 +0800  [CI] Setup dummy azure pipeline (#198)

Signed-off-by: Abhishek Dosi <abdosi@microsoft.com>
2021-03-24 18:46:18 -07:00
Renuka Manavalan
1bc1a2413a
[submodule]: SONiC-utilities submodule update: (#7129)
* 553936b (HEAD, origin/master, origin/HEAD, master) route_check: Fix hanging & logging level (#1520)
* ed45412 [show][config] add support for setting and displaying switching modes on Y cable (#1501)
* bf46638 Handling error scenario of adding port to Vlan which is part of LAG (#1516)
* ae39883 Fix bug: show vlan config for vlan with no members (#1503)
* 3a482ac [test] Update unit test coverage for command 'show mac' (#1504)
* 4a0c010 [config] Disable/enable container monitoring when stopping/starting services (#1499)
2021-03-24 12:55:31 -07:00
trzhang-msft
8f83b33e02
DHCP Relay: add option -si to support using src intf ip in relay (#7052)
* add option si to support using src intf ip in relay
2021-03-19 13:27:14 -07:00
Prince Sunny
28cb43cb42
[Submodule update] - sonic-utilities (#7091)
Updated with following commits:

19d4042 - 2021-03-16 : Add self timeout and crash if exceeded. (#1502) [Renuka Manavalan]
aa71231 - 2021-03-16 : [reboot]: Stop mux before reboot on dual ToR (#1500) [Lawrence Lee]
fbad274 - 2021-03-16 : Add 'show' and 'clear' command for PG drop (#1461) [Andriy Yurkiv]
0de99c3 - 2021-03-12 : [decode-syseeprom] When reading from DB, display CRC-32 and all Vendor Extensions (#1497) [Joe LeVeque]
569a079 - 2021-03-12 : [decode-syseeprom] When reading from DB, display CRC-32 and all Vendor Extensions (#1497) [Joe LeVeque]
47d1a14 - 2021-03-12 : [generate-dump] Remove Arista specific logic (#1482) [Samuel Angebault]
1260f90 - 2021-03-12 : [warm-reboot]: Check empty key before issuing redis hget (#1496) [Vaibhav Hemant Dixit]
2021-03-18 13:08:47 -07:00
judyjoseph
9d9503e1fe
To decrease the Connect Retry Timer from default value which is 120sec to 10 sec. (#7087)
Why I did it
It was observed that on a multi-asic DUT bootup, the BGP internal sessions between ASIC's was taking more time to get ESTABLISHED than external BGP sessions. The internal sessions was coming up almost exactly 120 secs later.

In multi-asic platform the bgp dockers ( which is per ASIC ) on switch start are bring brought up around the same time and they try to make the bgp sessions with neighbors (in peer ASIC's) which may be not be completely up. This results in BGP connect fail and the retry happens after 120sec which is the default Connect Retry Timer

How I did it
Add the command to set the bgp neighboring session retry timer to 10sec for internal bgp neighbors.
2021-03-17 23:14:38 -07:00
shlomibitton
43d4d45645
Backport ethtool to support QSFP-DD (#5725)
Backport ethtool debian package version 5.9 to support QSFP-DD cable parsing.

Signed-off-by: Shlomi Bitton <shlomibi@nvidia.com>
2021-03-16 09:56:53 -07:00
rathnasabapathyv
6beba298b0
[yang]: To follow consistent naming-conventions for key-attributes of all different types of interfaces (#7049)
As discussed in the yang subgroup community meeting, this change is bring consistent naming-conventions for all different type of interfaces in sonic-yang-model. Particularly the key-attribute name. Since the relevant interface container does have a context about that interface, having a simple & clear key-attribute name will be sufficient. For e.g. PORT/PORT_LIST/port_name has been renamed as PORT/PORT_LIST/name. Similar changes are done for portchannel, VLAN & loopback interfaces as well.
2021-03-16 05:24:04 -07:00
Tamer Ahmed
51ab39fcb2
[hostcfgd]: Add Ability To Configure Feature During Run-time (#6700)
Features may be enabled/disabled for the same topology based on run-time
configuration. This PR adds the ability to enable/disable feature based
on config db data.

signed-off-by: Tamer Ahmed <tamer.ahmed@microsoft.com>
2021-03-13 05:56:27 -08:00
Joe LeVeque
7f52abc621
[sonic-config-engine] Parse AutoNegotiation element from LinkMetadata section of minigraph file (#7031)
Parse the value `AutoNegotiation` element from the `LinkMetadata` section of minigraph file. If the element is present, an `autoneg` key will be added to the port in the `PORT` table of Config DB with a value of either `off` or `on`

If an `autoneg` value is present in port_config.ini, the value from the minigraph will take precedence, overriding that value.

Also remove `AutoNegotiation` and `EnableAutoNegotiation` elements from the `DeviceInfo` section, as we will use this data in the `LinkMetadata` section to determine whether to enable auto-negotiation for a port.
2021-03-12 16:34:27 -08:00
vdahiya12
9b816a25d3
[sonic-utilities] update sub_module (#7037)
This PR updates the following commits in sonic-utilities

5739cd9 [show][config] fix for show/config muxcable hwmode model value; fix show/config muxcable return codes; (#1494)
4a5bd47 [pytest] Increase verbosity (#1451)


Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-03-12 10:39:39 -08:00
lguohan
06de63a835
[submodule]: update sonic-utilities (#7025)
* 6ced42c 2021-03-11 | Revert "[config] Enable/disable container monitoring when starting/stopping the services. (#1471)" (HEAD, origin/master, origin/HEAD) [Guohan Lu]
* e1c52a0 2021-03-11 | [warm-reboot]: added automated recover for ISSU file (#1466) [Vadym Hlushko]
* a4ae643 2021-03-10 | [PDDF] Remove references to deprecated platform plugins (#1485) [fk410167]

Signed-off-by: Guohan Lu <lguohan@gmail.com>
2021-03-11 17:58:23 -08:00
Joe LeVeque
fabd6892f6
[sonic-platform-daemons] Update submodule (#6998)
* src/sonic-platform-daemons 068bccc...e5165b7 (7):
  > [xcvrd] Fix crash: If 'dom_capability' not in port_info_dict, insert 'N/A' (#162)
  > fix the muxcable state change notification received from other modules, omit the check inside hw_state table (#159)
  > [xcvrd] Fix crash on platforms which support media settings with Python 3 (#158)
  > [xcvrd] Save the dom_capability of transceiver into db (#72)
  > [xcvrd] Fix xcvrd crash on other port prefixes (#123)
  > [xcvrd] Make functions used for media setting python3 compatible (#153)
  > [psud] Refactor unit tests; increase unit test coverage (#146)
2021-03-10 14:44:48 -08:00
Shi Su
ac7eb460e5
[frr]: upgrade frr to frr-7.5.1 (#7003)
Update FRR to 7.5.1. The following is a list of new commits.
```
df7ab485b FRRouting Release 7.5.1
f4ed841b8 Merge pull request #8187 from opensourcerouting/rpmfixes-75
86d5a20e3 Merge pull request #8193 from mjstapp/fix_signals_7_5
b339cc149 lib: avoid signal-handling race with event loop poll call
0f7b432c3 lib: add debug output for signal mask
c0290c86d lib: add sigevent_check api
7a5348665 doc: Fix CentOS 7 Documentation
2a8e69f48 Merge pull request #8064 from donaldsharp/foo
cf4d1a744 redhat: Fix changelog incorrect date format
b78dcb209 Merge pull request #8181 from idryzhov/7.5-zebra-blackhole
2032e7e72 zebra: don't use kernel nexthops for blackhole routes
e52003567 bgpd: When deleting a neighbor from a peer-group the PGNAME is optional
aa86a6a6f Merge pull request #8161 from mjstapp/fix_sa_7_5_backports
13a8efb4b Merge pull request #8156 from idryzhov/7.5-backports-2021-02-26
58911c6ed lib: Free memory leak in error path in clippy
556dfd211 lib: use right type for wconv() return val
bd9caa8f1 lib: fix some misc SA warnings
683b3fe3f lib: register dependency between control plane protocol and vrf nb nodes
b45248fb6 lib: add definitions for vrf xpaths
7b9f10d04 lib: add ability to register dependencies between northbound nodes
9c240815c bgpd: Bgp peer group issue
d1b43634b bgpd: upon bgp deletion, do not systematically ask to remove main bgp
f5d1dc55e bgpd: Fix crash when we don't have a nexthop
c2e463478 frr-reload: rpki context exiting uses exit and not end
f11db1698 bgpd: Blackhole nexthops are not reachable
c628e94ff staticd: fix vrf enabling
49b079ef1 staticd: fix nexthop creation and installation
0077038e9 staticd: fix nexthop validation
be3dfbbc7 zebra: use AF_INET for protocol family
```
2021-03-10 12:50:54 -08:00
judyjoseph
a09a85b64a
[sonic-cfggen]: Use unix socket when reading from DB only if we are using sudo. (#7002)
Closes issue #6982.
The issue was root caused as we were using the unix_socket for reading from DB as a default mechanism (#5250). The redis unix socket is created as follows.

admin@str--acs-1:~$ ls -lrt /var/run/redis/redis.sock 
srwxrw---- 1 root redis 0 Mar  6 01:57 /var/run/redis/redis.sock
So it used to work fine for the user "root" or if user is part of redis group ( admin was made part of redis group by default )

Check if the user is with sudo permissions then use the redis unix socket, else fallback to tcp socket.
2021-03-10 09:07:47 -08:00
vdahiya12
ddf51c7f75
[sonic-utilities] submodule update (#6992)
this PR updates the following commits in sonic-utilities

13ce4b6 [show][config] fix show mux status health field; add support for hwmode functionality to toggle mux, check mux direction for Y cable (#1467)
f78e7ce [acl-loader] Improve input validation for acl_loader (#1479)
748dbbf [show] Fix 'show mac' output, when FDB entry with Vlan 1 is present (#1368)
64604db [acl] Expand VLAN into VLAN members when creating an ACL table (#1475)
10de91d [config reload]: On dual ToR systems, cache ARP and FDB tables (#1465)
10a359a [Mellanox] Change mellanox buffer migrator for new SKU Mellanox-SN2700-D40C8S8 (#1470)
38c8e00 [acl-loader] Add support for matching on ICMP and VLAN info (#1469)
e555ea9 [SKU creator] fix wrong speed in case breakout of 2x50 (#1380)
4a78c01 [config] Enable/disable container monitoring when starting/stopping the services. (#1471)
dd3c2c3 [warm-reboot] Check if warm restart flag is set when issuing a warm-reboot (#1460)
e32b5ac Add soft-reboot reboot type (#1453)
8b3bc18 [reload] Improve reload by using sonic.target. (#1199)
99673bc [reboot] Add platform-specific reboot cause update hook (#1454)
2f6e36e [CLI][techsupport] Add NOOP option for commands that did not have that option (#1445)
1fa4b94 [psushow] Add more output columns; Add option to output in JSON format (#1416)
79ccd03 [show] cli support for show muxcable cableinfo (#1448)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-03-10 08:13:35 -08:00
Renuka Manavalan
6f7cd8d772
Copy dummy flannel.conf to get around absence of CNI Network (#6985)
Why I did it
We skip install of CNI plugin, as we don't need. But this leaves node in "not ready" state, upon joining master.
To fix, we copy this dummy .conf file in /etc/cni/net.d

How I did it
Keep this file in /usr/share/sonic/templates and copy to /etc/cni/net.d upon joining k8s master.

How to verify it
Upon configuring master-IP and enable join, watch node join and move to ready state.
You may verify using kubectl get nodes command
2021-03-09 19:49:54 -08:00
Praveen Chaudhary
41af024d14
[sonic-yang-models]: Test to Validate yang models with SONiC config. (#6637)
Changes:
— Remove unnecessary file libyang-python-tests/sample_config_db.json
— Keep only config in format of sonic_yang.json in yang_model_tests/yangTest.json.
— Keep config in format of config_db.json in file tests/files/sample_config_db.json
— Add a test case to validate yang models.


**- Why I did it**
As per discussion in sonic Yang workgroup, arranging files better so that Yang model can be in force for new config, also adding a test case to validate young models upto some extent.

**- How I did it**
Changes:
— Remove unnecessary file libyang-python-tests/sample_config_db.json
— Keep only config in format of sonic_yang.json in yang_model_tests/yangTest.json.
— Keep config in format of config_db.json in file tests/files/sample_config_db.json
— Add a test case to validate yang models.

**- How to verify it**
Build PKGs----Building-----
2021-03-09 18:48:35 -08:00
trzhang-msft
4e4f76c7ce
dhcp for dual tor: include all vlan intf into downstream intf (#6990)
* include all vlan intf into downstream intf

* add a comment
2021-03-09 18:12:44 -08:00
vdahiya12
46a4a8ad8d
[sonic-platform-common] submodule update (#6983)
Includes the following commits:

1673d25 [y_cable] refactor upgrade firmware API's; Fix vendor and part number API's read size for read_eeprom (#174)
ed93a15 [sonic_platform_base] Proper use of class and instance attributes (#173)
691de92 [sonic_y_cable] add stub function for upgrade firmware of Y cable and split the get_part_number and get_vendor API's (#171)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-03-08 10:16:25 -08:00
Prince Sunny
13467e5853
[Submodule] Update sonic-swss (#6937)
* [Submodule] Update sonic-swss till the commit:
0b0d24c - 2021-02-04 : [Mux] Route handling based on mux status, kernel tunnel support (#1615) [Prince Sunny]
2021-03-08 09:47:45 -08:00
Ying Xie
005d432487
Revert "[sonic-platform-daemons] submodule update (#6957)" (#6979)
This reverts commit 7034edc9af.
2021-03-06 19:06:10 -08:00
anish-n
a61888f7da
[minigraph] Adjust minigraph parsing per Fine Grained ECMP matchmode changes (#6885)
To adjust config db generated via minigraph per matchmode changes in fine grained ecmp. The changes are done so that nexthop IP based filtering can occur to determine routes as requiring Fine Grained ECMP, in the past the only mode was to use the IP prefix of the route for filtering, with this matchmode change we will use nexthop IP based filtering
Azure/SONiC#727

How I did it
Change will modify config db entry created for FG_NHG to include 'match_mode': 'nexthop-based' so that nexthop IP based filtering can occur to determine routes as requiring Fine Grained ECMP. Changes also remove FG_NHG_PREFIX entry since its not needed under matchmode nexthop-based.
2021-03-05 10:17:56 -08:00
Tamer Ahmed
bb03e5bb37
Start DHCP Relay When Helpers IPs Are Available (#6961)
#### Why I did it

It is possible to have DHCP relay configuration with no servers/
helpers which result in DHCP container to crash. This PR fixes this
issue by not starting DHCP relay for vlans with no DHCP helpers.

resolves: #6931 
closes: #6931 
#### How I did it
Do not add program group for dhcp relay with not dhcp helpers

#### How to verify it
Unit test
2021-03-04 20:43:08 -08:00
vdahiya12
7034edc9af
[sonic-platform-daemons] submodule update (#6957)
30d09be fix the muxcable state change notification received from other modules, omit the check inside hw_state table (#159)
32ec23c [xcvrd] Fix crash on platforms which support media settings with Python 3 (#158)
47bcf90 [xcvrd] Save the dom_capability of transceiver into db (#72)
b9381a5 [xcvrd] Fix xcvrd crash on other port prefixes (#123)
c3c1a59 [xcvrd] Make functions used for media setting python3 compatible (#153)
e179ffc [psud] Refactor unit tests; increase unit test coverage (#146)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-03-04 09:42:30 -08:00
Shi Su
24759dc0d3
[sonic-swss-common] Update submodule (#6958)
Update the sonic-swss-common submodule. The following are the commits in the submodule.

f01fede [debian/control] libswsscommon-dev depends on libbost-dev (#458)
607a8ce Convert return value of get_all function in SonicV2Connector to dict (#462)
2021-03-04 09:18:21 -08:00
Joe LeVeque
980a024dd4
Fix Python 3 'importlib' bug; Add support for Python 2 back in sonic-py-common (#6933)
Fix a strange bug introduced by https://github.com/Azure/sonic-buildimage/pull/6832 which would only occur in environments with both Python 2 and Python 3 installed (e.g., the PMon container). Error messages such as the following would be seen:

```
ERR pmon#ledd[29]: Failed to load ledutil: module 'importlib' has no attribute 'machinery'
```

This is very odd, and it seems like the Python 2 version of importlib, which is basically just a stub, is taking precedence over the Python 3 version. I found that this occurs when calling `import importlib`. However, calling `import importlib.machinery` and `import importlib.util` causes the proper package to be referenced, and the `machinery` and `util` modules are loaded successfully. This is how it is specified in examples in the official documentation, however there is nothing mentioned regarding that it *should* be done this way or that `import importlib` is unreliable.

Also, since sonic-py-common is still used in environments with Python 2 installed we should maintain support for both Python 2 and 3 until we completely deprecate Python 2, so I have added this back in.
2021-03-02 18:31:19 -08:00
Danny Allen
880a743c43
[openconfig_acl] Allow setting ICMP type/code to 0 (#6932)
There is a bug in how pyangbind translates yang models into python bindings. The model always sets integer values to 0 by default, so there is no way to check if a user has provided a value that is equal to 0. This is problematic for ICMP and VLAN (among others) because 0 is a valid input value.

This change converts ICMP and VLAN fields to union types so that acl-loader will treat them as null values unless a user explicitly adds an integer value.

Signed-off-by: Danny Allen <daall@microsoft.com>
2021-03-02 14:32:00 -08:00
Kebo Liu
b4fdd5f0b0
[submodule]: update sonic-linux-kernel (#6908)
1. [dni_dps460] Add attributes to retrieve PMBus status command codes 65fccd7a07
2. [mellanox]: Backport new kernel patches 2fcd4e3c67
3. [ci]: build amd64/armhf/arm64 for CI build 7c57fef2f3
4. Fix read and write failure to ‘fan1_target’ attribute of ‘dni_dps460’ fc74b1ce22
5. [backport]: i2c mux pca954x allow management of device idle state 173ebe7b9c
6. README: Fix typo in *difficult* 7778c99e78
2021-02-28 23:58:59 -08:00
Danny Allen
abb3867b72
[openconfig_acl] Add SONiC ACL extension to open config ACL model (#6896)
- Add support for VLAN ID match
- Add support for ICMP type/code match

Signed-off-by: Danny Allen <daall@microsoft.com>
2021-02-28 15:02:31 -08:00