Commit Graph

1408 Commits

Author SHA1 Message Date
dependabot[bot]
3e8142fba0 Bump lxml from 4.6.1 to 4.6.2 in /src/sonic-config-engine (#6385)
Bumps [lxml](https://github.com/lxml/lxml) from 4.6.1 to 4.6.2.
- [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.1...lxml-4.6.2)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-01-09 08:29:31 -08:00
Qi Luo
88ace50da8 [sonic-swss-common] Update submodule (#6382)
Includes sonic-swss-common commits:
```
71dc350 2021-01-07 | Lower the log level for outdated key for SubscriberStateTable notification (#441) [Qi Luo]
7e40582 2021-01-08 | Add boost dependencies (#442) [Ze Gan]
30a8ddf 2021-01-05 | Change DBConnector::hgetall return type from map to unordered_map (#440) [Qi Luo]
021108d 2021-01-02 | MCLAG Enhancements per HLD https://github.com/Azure/SONiC/pull/596 (#405) [Praveen-Brcm]
54996fc 2021-01-02 | Implement ConfigDBConnector and ConfigDBPipeConnector in C++ (#437) [Qi Luo]
8286525 2020-12-27 | Simply refactor DBConnector hgetall() [Qi Luo]
6d1d33b 2020-12-27 | Fix RedisTransactioner: handle empty deque [Qi Luo]
624e0b8 2020-12-26 | Move complex class constructor as explicit, and fix several mistaken copy constructor usage [Qi Luo]
3b983f9 2020-12-30 | [ci]: add timeout to 180 minutes for arm build (#439) [lguohan]
f2e4210 2020-12-29 | Add utility for string and redis (#434) [Ze Gan]
7a885fd 2020-12-29 | [build]: add build check for arm64 and armhf (#436) [lguohan]
47bccc4 2020-12-24 | Add missed vector header to rediscommand.h (#435) [Ze Gan]
```
2021-01-09 08:29:25 -08:00
pavel-shirshov
03391f20c5 [bgpcfgd]: Support default action for "Allow prefix" feature (#6370)
* Use 20 and 30 route-map entries instead of 2 and 3 for TSA

* Added support for dynamic "Allow list" default action.

Co-authored-by: Pavel Shirshov <pavel.contrib@gmail.com>
2021-01-09 08:29:19 -08:00
Joe LeVeque
984c833e4c [system-health] Make run_command() Python 3-compliant (#6371)
Pass universal_newlines=True parameter to subprocess.Popen(); no longer use .encode('utf-8') on resulting stdout.
This was missed in #5886

Note: I would prefer to use text=True instead of universal_newlines=True, as the former is an alias only available in Python 3 and is more understandable than the latter. However, Even though the setup.py file for this package only specifies Python 3, the LGTM tool finds other Python 2 code in the repo and validates the code as Python 2 code and alerts that text=True is an invalid parameter. Will stick with universal_newlines=True for now. Once all Python code in the repo has been converted to Python 3, I will change all universal_newlines=True to text=True.
2021-01-09 08:27:25 -08:00
Joe LeVeque
0182c5f5ca [sonic-platform-common][sonic-platform-daemons] Update submodules (#6352)
src/sonic-platform-common 9935fca...8664efc (2):

Make sonic_sfp Python2 and Python3 compatible (#157)
[sffbase.py] Fix to make Python 3-compatible (#156)

src/sonic-platform-daemons e6c786b...81318f7 (1):

[psud] Fix issue where PSU Fan info is not updated in State DB (#137)

Fixes #6341
2021-01-09 08:26:30 -08:00
Ying Xie
a37aa08504 [sairedis] advance sairedis submodule head (#6365)
To incldue following changes:

- [ci]: add build for arm64 and armhf (#757)
- Use template hgetall, because we will tune the return types of library functions (#759)
- [syncd] Fix bulk multi attrs for same key db update (#761)

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2021-01-06 06:19:58 -08:00
Vaibhav Hemant Dixit
5becc2ac7e [determine-reboot-cause] Ignore non-hardware reboot cause (#6349)
- Why I did it - Reboot cause prints "Non-Hardware (N/A)" instead of showing the software reboot cause.
The issue is mishandling of hardware reboot cause in determine-reboot-cause script.

- How I did it
Fixed the handling for Non Hardware reboot cause. Ignore if Non-Hardware is present in the hardware_reboot_cause output. Added some code refactoring for simplicity.

- How to verify it - With fix, the hardware reboot cause is ignored (if it is non hw):
2021-01-06 06:19:41 -08:00
sudhanshukumar22
d4f3318337 [lldp] lldp upstream patches (#6118)
The details are as follows:

    1. 0010-Ported-fix-for-length-exceeded-from-lldp-community.patch

    Patch taken from 78243478dc

    lib: remove limit on system description length

    The limit was introduced in 9c49ced while fixing a memory leak.
    The state data is used to ensure we don't interleave operations. We
    need to handle the case where the value is truncated because it is
    larger than the allocated size.

    Fix issue https://github.com/lldpd/lldpd/issues/408

    2. 0011-fix-med-location-len.patch
    
    Patch taken from 5c3479463a

    lib: fix LLDP-MED location parsing in liblldpctl

    Some bounds were not checked correctly when parsing LLDP-MED civic
    location fields. This triggers out-of-bound reads (no write) in
    lldpcli, ultimately leading to a crash.

    Fix https://github.com/lldpd/lldpd/pull/420

Signed-off-by: sudhanshukumar22 <sudhanshu.kumar@broadcom.com>
2021-01-04 23:25:21 -08:00
Sabareesh-Kumar-Anandan
08ab27506b [libyang1] Adding LFS support for arm32 (#6346)
In the emulated armhf environment, the function readdir()returns NULL on a ext4 file system directory. When running the libyang1 test cases, it will require to load the plugins from the files (such as metadata.so), because the readdir() is failing, the plugins can’t be loaded in the emulated armhf environment, so it causes libyang1 test error. This error is a combination of the following reasons.
• Emulation of a 32-bit target from a 64-bit host –> qemu from x86_64 to armhf
• Glibc version > 2.27 – Debian buster is using glibc 2.28

- How I did it
Enabled large file support by setting _FILE_OFFSET_BITS=64 for libyang1.

Signed-off-by: Sabareesh Kumar Anandan <sanandan@marvell.com>
2021-01-04 23:24:08 -08:00
Mahesh Maddikayala
25b0f43d9f [sonic-py-common] Added an API to get file path containing SONiC version (#6309)
* [sonic-py-common] add an API to get file path containing SONiC version so that the API can be mocked for unit tests.
2021-01-03 08:47:34 -08:00
Tony Titus
70ba59109d
[sonic-swss-common] Update submodule (#6317)
Including commits in sonic-swss-common repo:

b423b9c Add support for hexists call (#432) [Tony Titus]
0982996 Remove extension of tableNameSeparatorMap (#430) [Qi Luo]
d16cc76 [build]: add azure pipeline build badge (#429) [lguohan]
f2aaf55 Set up CI with Azure Pipelines (#428) [lguohan]
2020-12-31 17:43:09 -08:00
Vaibhav Hemant Dixit
40f69f0aac
[determine-reboot-cause] Skip invoking platform code for unit tests for hardware_reboot_cause (#6325)
What: Modify unit test to not call any platform dependent api in test_find_hardware_reboot_cause.

- Why I did it
MELLANOX build is failing for the recent PRs. The errors are due to platform library being invoked in a unit test for determine-reboot-cause script.

Verified by running unit tests and a successful Mellanox build.

Co-authored-by: Vaibhav Hemant Dixit <vadixit@microsoft.com>
2020-12-30 17:48:56 -08:00
kktheballer
ba92a081ce
Minigraph ECMP parsing support (cleaner format) (#4985)
Why I did it
To support FG_ECMP  scenarios
- How I did it
Modified minigraph parser to parse ECMP fields in the case they are present in minigraph
- How to verify it
Loaded ensuing config_db file on a DUT to verify the fields are parsed and configure device correctly
2020-12-30 15:18:21 -08:00
Joe LeVeque
566ea4f601
[system-health] Convert to Python 3 (#5886)
- Convert system-health scripts to Python 3
- Build and install system-health as a Python 3 wheel
- Also convert newlines from DOS to UNIX
2020-12-29 14:04:09 -08:00
Pavel Shirshov
a7b8f8914e Patch libyang1.0.184 so version and let frr 7.5 use the patched version 2020-12-29 03:44:49 -08:00
Ubuntu
273846a412 FRR 7.5
Build libyang1 which is required for frr 7.5
2020-12-29 03:44:49 -08:00
Stepan Blyshchak
23f1d51de3
[ipinip.json.j2] align mellanox configuration dst_ip with other platforms (#6304)
Mellanox already supports multiple destination IPs in IPinIP tunnel configuration, thus removing mellanox
exception for IPinIP configuration.

- How I did it

Removed "dst_ip" field generation in mellanox platform condition.
Sorted the "dst_ip" list, so that it is easier to test against sample configuration in unit tests.
Aligned unit test sample.

Signed-off-by: Stepan Blyschak <stepanb@nvidia.com>
2020-12-28 20:53:12 -08:00
Guohan Lu
9432bb82ec [submodule]: update sonic-utilities
* 7924bd1 2020-12-28 | [route_check]: ignore routes pointing to Loopback interface (#1337) (HEAD, origin/master, origin/HEAD) [lguohan]

Signed-off-by: Guohan Lu <lguohan@gmail.com>
2020-12-28 10:34:34 -08:00
Guohan Lu
b846b9d9aa [submodule]: update sonic-swss
* 321291a 2020-12-26 | [loopback]: skip route pointing to loopback interface (#1570) (HEAD, origin/master, origin/HEAD) [lguohan]
* 41fd2c4 2020-12-26 | [CRM] Safety check for division by 0 (#1569) [Prince Sunny]

Signed-off-by: Guohan Lu <lguohan@gmail.com>
2020-12-28 10:34:34 -08:00
Guohan Lu
ed58684e36 [docker-frr]: add static ipv6 loopback route to allow bgp to advertise prefix
frr does not advertise route if local route is not reachable, as a result
loopback route /64 is not advertised to the neighbors. Add static route
allows frr to advertise the route to its peers

Signed-off-by: Guohan Lu <lguohan@gmail.com>
2020-12-28 10:34:34 -08:00
gechiang
721c68c855
[sonic-utilities] Update sonic-utilities submodule to pick set of new fixes (#6282)
submodule sonic-utilities in sonic-buildimage has not been updated for a while and there were many fixes needed to be picked up to ease debug/development in master branch.

Here are the list of changes that this update will bring in:

* de14939 2020-12-27 | Revert "[pytest][qos][config] Added pytests for "config qos reload" commands (#1266)" (HEAD -> master, origin/master, origin/HEAD) [Guohan Lu]
* ef3370d 2020-12-24 | [fast-reboot]: Stop sflow during fast-reboot (#1296) [jangidrk]
* ff1db4d 2020-12-24 | [fast-reboot]: Update fast-reboot-dump.py to handle invalid parsing of genetlink type hostif object id attribute (#1318) [jangidrk]
* d63d11d 2020-12-23 | Added show ip/v6 route summary support for multi-asic platform (#1320) [gechiang]
* 6202a81 2020-12-23 | [pytest][qos][config] Added pytests for "config qos reload" commands (#1266) [Mahesh Maddikayala]
* f555e9e 2020-12-23 | [CRM]Add support for snat, dnat and ipmc crm resources (#1258) [Prabhu Sreenivasan]
* f44e57e 2020-12-22 | Retain fgnhg state db table entry during warm reboot (#1315) [weixchen1215]
* 5e18bf5 2020-12-23 | Fix exception handling in python3 (#1324) [bingwang-ms]
* b6221f4 2020-12-22 | [config] Add unit tests for 'config interface breakout' command (#1223) [Praveen Chaudhary]
* 150642e 2020-12-22 | [dropcounters] Fix clear for non-root users (#1253) [Danny Allen]
* becf5b5 2020-12-21 | Kubernetes support commands update (#1133) [Renuka Manavalan]
* aad2c38 2020-12-19 | VXLAN config and show utilities (#870) [Rajesh Sankaran]
* 9419627 2020-12-17 | [Multi-asic] Enhanced Feature Table configuration for multi-asic platforms (#1152) [abdosi]
* 155f6d5 2020-12-17 | [config vlan]: Remove `-t` flag from docker exec command (#1317) [Lawrence Lee]
* 281b157 2020-12-17 | [fast-reboot-dump] Fix exception in struct.pack (#1309) [bingwang-ms]
* 269c317 2020-12-16 | Mgmt vrf/SNMP agent validations and bug fixes (#1289) [Suman Kumar]
* 394b202 2020-12-16 | [Dynamic buffer calc] Support dynamic buffer calculation (#973) [Stephen Sun]
* 6dd5d31 2020-12-14 | show tech with platform dump option (#1158) [Sujin Kang]
* 6255384 2020-12-13 | [kdump]: Parse sonic_platform kernel command line parameter to read the platform identifier string (#1291) [rajendra-dendukuri]
* 0603c0b 2020-12-13 | [pcieutil] Remove 'pcie-' prefix from arguments (#1297) [Joe LeVeque]
* 10ffc28 2020-12-13 | Added 'detailed' option for 'show interface counters' command (#1299) [Akhilesh Samineni]
* 980ea0d 2020-12-11 | Fix show ip route summary on pizzabox platforms (#1302) [gechiang]
* af1bb47 2020-12-10 | [acl_loader] Fix default DENY rule for V6 dataplane ACLs (#1281) [Danny Allen]
* 57a0b41 2020-12-09 | Add show and clear commands for headroom pool watermark  (#1144) [Neetha John]
* d414970 2020-12-08 | [unit test][CLI][pfcwd] Added pfcwd config tests for single and multi ASIC platform. (#1248) [Mahesh Maddikayala]
* 2b4a58c 2020-12-08 | [sflow] Fix traceback seen for show sflow interface (#1282) [Garrick He]
* e22980f 2020-12-09 | [config/console][consutil] Support enable/disable console switch (#1275) [Blueve]
* 2f263c4 2020-12-08 | [fast-reboot] Fix fast-reboot when NDP entries are present (#1295) [shlomibitton]
* 326e534 2020-12-07 | Fast-reboot: add a new flag to ignore ASIC config checksum verification failures (#1292) [Vaibhav Hemant Dixit]
* 042254e 2020-12-04 | Kdump improvements (#1284) [rajendra-dendukuri]
2020-12-27 20:08:03 -08:00
Prince Sunny
8fd50e895c
[submodule]: swss Tunnel Manager changes (#5843)
Introduce tunnel manager daemon. Start the process as part of swss container

Submodule update for swss:
9ed3026 - 2020-12-24 : [NAT] ACL Rule with DO_NOT_NAT action is getting failed. (#1502) [Akhilesh Samineni]
c39a4b1 - 2020-12-23 : Mux/IPTunnel orchagent changes (#1497) [Prince Sunny]
bc8df0e - 2020-12-23 : Add support for headroom pool watermark (#1567) [Neetha John]
2020-12-26 11:17:18 -08:00
Sabareesh-Kumar-Anandan
e93330ece3
[sonic-swss] submodule update (#6292)
[routeorch] more build error fixes when compiling for armhf (32-bit) (#1563)

Signed-off-by: Sabareesh Kumar Anandan <sanandan@marvell.com>
2020-12-24 13:47:21 -08:00
Praveen Chaudhary
ab0ee0bfae
[yang-models]: Default value for leaf-lists and tests. (#6029)
Changes:
-- Add Default value for leaf-lists in ACL and portchannel.
-- Remove members in VLAN.
-- Test modifications.

Signed-off-by: Praveen Chaudhary<pchaudhary@linkedin.com>
2020-12-24 01:48:41 -08:00
Joe LeVeque
a62f45dca8
[sonic-swss] Update submodule (#6270)
* src/sonic-swss c7ee75f...cadf28f (24):
  > Revert "Add support for headroom pool watermark (#1453)"
  > [VxlanOrch] pytest for EVPN VXLAN (#1318)
  > [restore_neighbors] python3 support for restore_neighbors.py (#1542)
  > [buffermgmt] more build error fixes when compiling for armhf (32-bit) (#1559)
  > Sflow fix to avoid NULL in field. (#1531)
  > [fgnhgorch] Fg Nhg link handling (#1537)
  > [dpb]: make sure port is in admin down state before remove port. (#1513)
  > [FPMSYNCD/FDBSYNCD] EVPN Type-5 route removing prefix-len for host route and removing junk character present in the mac (#1553)
  > Added support for EVPN L3 VXLAN as described in the PR Azure/SONiC#437 (#1267)
  > [crm]: Typecast to unit64_t to avoid divide by 0 during overflow (#1550)
  > [vxlanmgr] Fix build error when compiling for armhf (32-bit) (#1552)
  > [Dynamic buffer calc]  Support dynamic buffer calculation (#1338)
  > [dvs] Clean-up dvs_database and dvs_common (#1541)
  > [VxlanMgr] changes for EVPN VXLAN (#1266)
  > Statistics support for Tx and Rx counters of different frame sizes (#1536)
  > [orchagent/phy]: Add firmware info propagation (#1540)
  > [vxlanorch] Use PRI instead of %l to avoid warnings in 32-bit arch (#1539)
  > [FDBSYNCD] Added support for EVPN as described in the PR Azure/SONiC#437 (#1276)
  > [everflow] Add retry mechanism for mirror sessions and policers (#1486)
  > Enable ACL table type  mirror_v6 for Innovium Platform (#1527)
  > [fgnhgorch] Change format specifier %lu to %zu for size_t (#1529)
  > [dvs] Fix issue where concurrent netns operations cause test setup to fail (#1535)
  > Add support for headroom pool watermark (#1453)
  > Change gAsicInstance to type string with max length limit (#1526)
2020-12-23 18:34:34 -08:00
Joe LeVeque
e39cc018c8
[sonic-config-engine] Pin 'importlib-resources' package to v3.3.1 for Python 2 (#6288)
importlib-resources v4.0.0 was released today (2020-12-23) and drops support for Python 2. This caused the sonic-config-engine Python 2 wheel build to fail.

Reference: https://pypi.org/project/importlib-resources/

Pin 'importlib-resources' package to v3.3.1 for Python 2
Unrelated: remove pinned version of zipp for sonic-bgpcfgd because we no longer build a Python 2 version of that package
2020-12-23 18:00:31 -08:00
Renuka Manavalan
ba02209141
First cut image update for kubernetes support. (#5421)
* First cut image update for kubernetes support.
With this,
    1)  dockers dhcp_relay, lldp, pmon, radv, snmp, telemetry are enabled
        for kube management
        init_cfg.json configure set_owner as kube for these

    2)  Each docker's start.sh updated to call container_startup.py to register going up
          As part of this call, it registers the current owner as local/kube and its version
          The images are built with its version ingrained into image during build

    3)  Update all docker's bash script to call 'container start/stop/wait' instead of 'docker start/stop/wait'.
         For all locally managed containers, it calls docker commands, hence no change for locally managed.
        
    4)  Introduced a new ctrmgrd service, that helps with transition between owners as  kube & local and carry over any labels update from STATE-DB to API server

    5)  hostcfgd updated to handle owner change

    6) Reboot scripts are updatd to tag kube running images as local, so upon reboot they run the same image.

   7) Added kube_commands.py to handle all updates with Kubernetes API serrver -- dedicated for k8s interaction only.
2020-12-22 08:01:33 -08:00
macikgozwa
c146eeaaa6
[sonic-telemetry] Update submodule (#6269)
Implementation of sample streaming mode (#49)

Co-authored-by: Murat Acikgoz <muacikgo@microsoft.com>
2020-12-22 00:04:48 -08:00
Ying Xie
b4ea0c09f5
[minigraph parse] avoid crash when peer switch lo address is not available (#6266)
- Why I did it
Latest master image crashes when loading minigraph

Fixing #6265

- How I did it
Avoid converting 'None' to ipaddress.

- How to verify it
On a system crashing with the issue, manually patch minigraph.py with the change in PR and load minigraph succeeded.

Signed-off-by: Ying Xie ying.xie@microsoft.com
2020-12-21 14:39:34 -08:00
Prabhu Sreenivasan
df2a4ded98
[ntp]: Source interface support for NTP (#6033)
Added source interface support for NTP.
Also made NTP start on Mgmt-VRF by default when configured.

**- How I did it**
1) Updated hostcfg to listen to global config NTP and NTP_SERVER tables and restart ntp when ever the configuration changes. NTP table includes source interface configuration.
2) The ntp script updated to by default start on Mgmt-VFT when configured.

Signed-off-by: Prabhu Sreenivasan <prabhu.sreenivasan@broadcom>
2020-12-21 05:34:13 -08:00
xumia
0a36de3a89
Recover "Support SONiC Reproduceable Build-debian/pip/web packages (#6255)
* Revert "Revert "Support SONiC Reproduceable Build-debian/pip/web packages (#5718)""

This reverts commit 17497a65e3.

* Revert "Revert "Remove unnecessary sudo authority in build Makefile (#6237)""

This reverts commit 163b7111b5.
2020-12-21 15:31:10 +08:00
vmittal-msft
ee8c3d34a2
[sonic-sairedis submodule] Updated SAI header 1.7.1 for BRCM and Mellanox SDK/SAI (#6218)
* [Mellanox] Update SAI to 1.18.0
* [Mellanox] Update SDK to 4.4.2112
* Updated Mellanox SAI to 1.18.0.2
* Updated bcmsai debians to use SAI 1.7.1
* Updated Mellanox to use SAI 1.7.1
* Updated submodule sonic-sairedis using SAI 1.7.1

Co-authored-by: Vineet Mittal <vmittalmittal@microsoft.com>
Co-authored-by: Nazarii Hnydyn <nazariig@nvidia.com>
2020-12-20 12:11:06 -08:00
Sabareesh-Kumar-Anandan
93554af854
[sonic-sairedis] submodule update (#6202)
[vs] Add workaround for clean up macsec ports (#752)
[logfile]: Add handling of Sairedis rec filename (#747)
Update README.md
[meta] Fix stat_mode enums to sai_bulk_op_error_mode_t (#753)
[syncd][tests] Add syncd deprecated attribute value test (#751)
[vs] Skip MACsec clean up if /sbin/ip is not accessible (#750)
Configure enable -Wcast-align=strict when supported by compiler (#749)
[syncd] Translate depreacated attr enum values to new ones (#746)
[sairedis]vs SAI support for voq neighbor (#725)
[syncd] Translate removed RIDs in fdb notification (#734)
[syncd] Move syncd classes to syncd namespace (#742)
[vs] Use /sbin/ip absolute path for ip command in MACsecManager (#744)
[saidiscovery] Update saidiscovery to use VendorSai object and metadata (#736)
Remove Winline warning since it depends on external headers (#741)
[meta] Enable strict cast-align warning (#738)
[vs] Use meta class instead info when using unittests (#740)
[vs] Support flush entry type all on virtual switch (#735)
[vslib]: Add MACsec state to state base (#722)
[README.md] Update installation steps (#730)
Switch Capability support (#728)
[vs] Fail switch create when warm boot requested and no warm boot state (#739)
Dynamic Port breakout fix the crash, port down event processing after<80> (#727)
Code clean (#721)

Signed-off-by: Sabareesh Kumar Anandan <sanandan@marvell.com>
2020-12-19 11:53:42 -08:00
Dmytro Shevchuk
f7d082244a
[DPB] update flex counter yang model, fix BUFFER_POOL_WATERMARK (#6178)
Looks like we have redefinition of BUFFER_POOL_WATERMARK_KEY to BUFFER_POOL_WATERMARK, so DPB fall.
c7ee75f0b9/orchagent/flexcounterorch.cpp (L18)

#define BUFFER_POOL_WATERMARK_KEY   "BUFFER_POOL_WATERMARK"


unordered_map<string, string> flexCounterGroupMap =
{
    {"PORT", PORT_STAT_COUNTER_FLEX_COUNTER_GROUP},
    {"PORT_RATES", PORT_RATE_COUNTER_FLEX_COUNTER_GROUP},
    {"PORT_BUFFER_DROP", PORT_STAT_COUNTER_FLEX_COUNTER_GROUP},
    {"QUEUE", QUEUE_STAT_COUNTER_FLEX_COUNTER_GROUP},
    {"PFCWD", PFC_WD_FLEX_COUNTER_GROUP},
    {"QUEUE_WATERMARK", QUEUE_WATERMARK_STAT_COUNTER_FLEX_COUNTER_GROUP},
    {"PG_WATERMARK", PG_WATERMARK_STAT_COUNTER_FLEX_COUNTER_GROUP},
    {BUFFER_POOL_WATERMARK_KEY, BUFFER_POOL_WATERMARK_STAT_COUNTER_FLEX_COUNTER_GROUP},
2020-12-19 10:14:06 -08:00
Guohan Lu
17497a65e3 Revert "Support SONiC Reproduceable Build-debian/pip/web packages (#5718)"
This reverts commit 55a707586b.
2020-12-18 23:37:27 -08:00
Guohan Lu
163b7111b5 Revert "Remove unnecessary sudo authority in build Makefile (#6237)"
This reverts commit 07b4aaf473.
2020-12-18 23:37:12 -08:00
Sabareesh-Kumar-Anandan
31c548c9c7
[sonic-linux-kernel] submodule update (#6249)
[marvell-armhf] Armada A385 soc support #176
backport macsec xpn support to 4.19 kernel (#174)
add internal patch marker (#173)
Improve netfilter fullclone nat support patch #171

Signed-off-by: Sabareesh Kumar Anandan <sanandan@marvell.com>
2020-12-18 23:13:26 -08:00
xumia
07b4aaf473
Remove unnecessary sudo authority in build Makefile (#6237)
- Why I did it
In some build machine, it may be not able to run as root during the build, only has root authority in docker containers.

- How I did it
Remove the sudo in Makefile

- How to verify it
cd src/sonic-build-hooks
make all
2020-12-18 21:27:42 -08:00
Junchao-Mellanox
ea5f204577
[sonic-platform-daemons] Update submodule pointer for fixing xcvrd unit test issue (#6247)
e6c786b [xcvrd] Fix unit test issue with Python 3 (#135)
2020-12-18 10:21:10 -08:00
dflynn-Nokia
aa38022ca6
[build]: openssh: Fix build break when using http proxy (#6229)
The openssh build fails to retrieve dependent debian packages when operating
behind a proxy server.
2020-12-17 22:12:37 -08:00
arlakshm
317a4b3410
[hostcfgd]: wait till system initialization is done before starting hostcfgd (#6232)
- Why I did it
The change is done to make sure the system initialization is done before updating the feature states

- How I did it
use the command "systemctl is-system-running --wait"  to wait till system has finished booting up before updating the feature states
2020-12-17 17:03:28 -08:00
Junchao-Mellanox
a5e0c11dc0
[sonic-platform-common] Update submodule pointer (#6210)
Commits include:

- 9935fca5 Fixed eeprom_tlvinfo.py to make it Python2/Python3 compatible (#155)
- 7e23e63 [y_cable] Skip ImportError in y_cable.py (#154)
2020-12-17 12:06:09 -08:00
Vaibhav Hemant Dixit
e8da2ee975
Fix post-reboot errors in platforms without sonic_platform package (#6130)
Refactor determine-reboot cause code. Fix errors seen during determine-reboot-cause when sonic_platform package is not installed.
Add error handling for healthd service when sonic_platform package is not installed.

Tested on KVM where sonic_platform is not present, and the errors are not seen anymore in syslog.
2020-12-17 12:01:42 -08:00
Prince Sunny
9aeb0a1bb1
[Submodule] Update for sonic-restapi (#6231)
b002455 - 2020-12-16 : Validate IP only if nexthop attribute is not null (#66) [Prince Sunny]
76592a9 - 2020-12-03 : Add License file (#62) [Prince Sunny]
2020-12-17 05:19:23 -08:00
xumia
55a707586b
Support SONiC Reproduceable Build-debian/pip/web packages (#5718)
* Support SONiC reproduceable build for deb/py2/py3/web

* Remove j2 files

* Fix bug

* Fix some issues

1. Change some code format issues
2. Fix curl calling wget command, pip2 calling pip3 issue
3. Fix wget/curl downloading multiple urls issue

* Fix some code format issue

* Fix bug

* Fix bug

* Fix command path hard code in build info scripts issue

* Add debian package sonic-build-tools

* Fix auto debian package removed issue

* Change build debian package name, and change the folder

* Collect the pre-versions and post-versions

* Change to use debian:buster

* Remove apt-mark and improve code

* Remove set_build_hooks

* Change docker trusted gpg files

* Fix docker build COPY directory name issue

* Move the trusted gpg files into the sonic-build-hooks package
2020-12-17 13:06:53 +08:00
vdahiya12
698b7ecd08
[sonic-platform-daemons] submodule update (#6211)
This PR updates the following commits in master for
sonic-platform-daemons

b0be7ca [xcvrd] add unit test infrastructure and unit tests for xcvrd (#133)
8555077 [xcvrd] removing the delete notification message logic for command probe in mux cable driver (#134)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2020-12-16 08:51:28 -08:00
pra-moh
c8fbb045db
[submodule] Telemetry submodule update for build failure fix (#6220)
- Locking openconfig/gnmi to the known good version. (#64)
2020-12-16 01:14:51 -08:00
Lawrence Lee
290f66bbb8
[minigraph.py]: Prefer parsing device type from <ElementType> (#6184)
* Parse device type from <ElementType> first in <PngDec>
* Fall back to <Device> type attribute if no <ElementType> is found

Signed-off-by: Lawrence Lee <lawlee@microsoft.com>
2020-12-15 10:20:44 -08:00
Shi Su
9580b0407f
[warm-reboot] Remove warmboot file path that overrides the default path (#6198)
- Why I did it
The sai.profile file in kvm images overrides the warmboot file with path /var/cache/sai_warmboot.bin. Since the directory /var/cache is not mounted in syncd, it will be cleared in an image upgrade, the warm-reboot image upgrade will fail if the file is put in the directory.

Fix #6183

- How I did it
Remove the path that overrides the default path. The warmboot file path will then be the default value /var/warmboot/sai-warmboot.bin. Since /var/warmboot/ is mounted by /host/warmboot/ in the host, it could survive an image upgrade.

- How to verify it
Tested warm reboot upgrading kvm image locally.
2020-12-13 22:17:33 -08:00
Qi Luo
6db01243d9
[sonic-swss-common] Update submodule (#6197)
Including commits in sonic-swss-common repo:
```
40e695d 2020-12-12 | [pyext] Implement DBConnector::pubsub() to emulate python Redis.pubsub() (#427) [Qi Luo]
9a2bf6c 2020-12-12 | Add fdb_flush.v2.lua script to makefile (#425) [Kamil Cudnik]
7d60e7e 2020-12-07 | Handle exception in Select (#424) [Qi Luo]
```
2020-12-13 11:34:15 -08:00
Tamer Ahmed
cbbda09599
[relay]: Prevent Buffer Overrun Of Malformed DHCP Packet (#6057)
[dhcp-relay]: Prevent Buffer Overrun Of Malformed DHCP Packet

The add/strip relay agent options does not take into account the buffer
length and so it is possible to overrun the buffer. The issue will
result in contents from previous packet being added to the current one.

signed-off-by: Tamer Ahmed <tamer.ahmed@microsoft.com>
2020-12-11 16:28:05 -08:00
Dong Zhang
6999ce5282
[sonic-utilities] update submodule for supportting MultiDB warmboot backing up database (#6181)
update sonic-utilites submodule, adding MultiDB warmboot backing up database support:

*    [MultiDB] add MultiDB warmboot support - backing up database (#1205) 
    * lua script to backup all database into one database and create rdb file - following earlier multiDB warmboot design at https://github.com/Azure/SONiC/blob/master/doc/database/multi_database_instances.md
    * copy this rdb file as before to WARM_DIR
    * restoring database part is in another PR at sonic-buildimage  https://github.com/Azure/sonic-buildimage/pull/5773, they depend on each other
2020-12-11 11:30:50 -08:00
Lawrence Lee
fd4433d836
[minigraph.py]: Remove prefix length from peer switch loopback address (#6174)
* PEER_SWITCH table in config DB expects a standalone IP address w/o a prefix length

Signed-off-by: Lawrence Lee <lawlee@microsoft.com>
2020-12-10 14:43:39 -08:00
Sabareesh-Kumar-Anandan
8d00b57959
[sonic-utilities] Update sonic-utilities submodule (#6139)
[show] Moving some py imports inside specific cmds (#1202)
Fix python3 issue in ecnconfig (#1286)

Signed-off-by: Sabareesh Kumar Anandan <sanandan@marvell.com>
2020-12-10 01:29:30 -08:00
Ying Xie
d9b9e4f7db
[swss] advance swss submodule head (#6157)
- Why I did it
Advance swss submodule to pick up latest changes.

- How I did it
Including folowing changes:

[portsorch] adjust port initialized event back to notice (#1532)
Signed-off-by: Ying Xie ying.xie@microsoft.com
2020-12-10 00:28:14 -08:00
Blueve
3d22019802
[sonic-config-engine/minigraph] Enable console mgmt feature for console device (#6166)
* Introduced a list console_device_types which contains the device types that support console management feature
* Inject CONSOLE_SWITCH:console_mgmt table with enabled:yes or enabled:no

Signed-off-by: Jing Kan jika@microsoft.com
2020-12-10 15:42:11 +08:00
Qi Luo
0e554e09ce
[makefile] Remove python-netsnmp deb package from makefile (#6161)
Because no one is using it in buildimage repo
2020-12-09 17:40:07 -08:00
Joe LeVeque
762dfd965b
[sonic-platform-daemons] Update submodule (#6158)
* src/sonic-platform-daemons 73e6ddd...4da0bfc (3):
  > Align style with PEP8 standards (#128)
  > Support python3 for xcvrd, psud, thermalctld and syseepromd (#132)
  > Import mock psu object for testing LED (#119)
2020-12-09 12:04:56 -08:00
Kamil Cudnik
275c5cfb07
[submodule] sonic-swss update: Add zmq sync mode flag (#1505) (#6144)
To support communication mode flag on orchagent
2020-12-08 11:37:04 -08:00
dflynn-Nokia
98a8753c11
[sonic-mgmt-common] Update submodule (#6129)
This update brings in the following commits.

86c1108 Enable arm architecture to build in addition to amd64 (#37)
4acb2c3 fix bugs and enhance Transformer (#35)
49e5a22 ygot related enhancements and fixes (#34)
51224de Fix ietf yang search path for cvl schema builds (#32)
3c6cdb3 CVL Changes #8: 'must' and 'when' expression evaluation (#31)
dabf231 CVL Changes #7: 'leafref' evaluation (#28)
6f9535f CVL Changes #6: Customized Xpath Engine integration (#27)
5e2466b DB-Layer fixes/enhancements (#26)
9a27302 CVL Changes #4: Implementation of new CVL APIs (#22)
dbf1093 Translib support for authorization, yang versioning and Delete flag (#21)
80f369e CVL Changes #5: YParser enhancement (#23)
904ce18 CVL Changes #3: Multi-db instance support (#20)
9d24a34 CVL Changes #2:  YValidator infra changes for evaluating xpath expression (#19)
f3fc40f CVL Changes #1: Initial CVL code reorganization and common infra changes (#18)
4922601 Bulk and RPC API support in translib (#16)
1d730df RFC7895 yang module library implementation (#15)
2020-12-08 04:31:16 -08:00
Myron Sosyak
3b04da97fb
[sonic-platform-common] Update submodule (#6141)
Update sonic-platform-common submodule:
* Make eeprom_tlvinfo.py Python3 compatible

**- Why I did it**
To get the latest changes which fix some python2 -> python3 migration errors.
2020-12-07 10:04:48 -08:00
yozhao101
3e717210e9
[sonic-telemetry] Update the submodule sonic-telemetry. (#6132)
[dataset] Add dataset "system uptime" into non-db client. (#52)
Adding new data set to query Sonic OS version. (#50)
[gnmi_server] Disregard EOF status for STREAM subs (#48)

Signed-off-by: Yong Zhao <yozhao@microsoft.com>
2020-12-06 06:01:46 -08:00
Kamil Cudnik
af357f3ec6
[sairedis] Advance sairedis pointer to support cmd zmq flag (#6064)
[sairedis] Advance sairedis pointer to support cmd zmq flag

[meta] Use memcpy instead of cast to prevent strict-aliasing error (#723)
[vslib]Add MACsec forward and filters to HostInterfaceInfo (#719)
[vslib] Add StateBase function for MACsec (#717)
Add support for default zmq synchronous mode flag (#711)
[syncd] Code clean (#720)
[sairedis] Remove custom bulk fdb methods (#710)
[vslib]Add MACsec Filters (#713)
[vslib]Add MACsec Forwarder (#714)
[vslib]Add MACsec Manager (#715)
Add helper functions, findObjects and dumpObject (#716)
Code clean refactor (#712)
[vslib] Fix CorePortIndexMap log line (#708)
[meta] Use custom hash in SaiObjectCollection (#709)
Fix LGTM localtime function warnings (#707)
[vs] VoQ Switch objects initialization - Local Port OID mapping to System Ports (#703)
Code style refactor (#705)
[vs] Initialization of VOQ switch objects (#702)
[vs] SAI support for VOQ switches - Switch State Initialization (#701)
Add MACsec meta methods (#704)
[vs] SAI support for VOQ switches (#698)
[vs] SAI support for VOQ switches - Core Port Index Map File parser (#700)
[vs] SAI support for VoQ switch - Core Port Index Map Container (#699)
[syncd][sairedis] Change pub/sub model to push/pull in zmq notification (#695)
[syncd] Use lua script to update db when using bulk api (#690)
[syncd] Fix bulk api object type for next hop group members (#685)
Add FlexCounter for MACsec SA (#684)
2020-12-05 12:13:34 +01:00
abdosi
59c1e3a78a
[multi-asic] Enhancing monit process checker for multi-asic. (#6100)
Added Support of process checker for work on multi-asic platforms.
2020-12-04 10:39:43 -08:00
rajendra-dendukuri
8a04487499
[kdump]: Implement Kdump configuration handler (#6122)
- Kdump configurations stored and manipulated in ConfigDB are now processed
by hostcfgd and applied asynchronously

Signed-off-by: Rajendra Dendukuri <rajendra.dendukuri@broadcom.com>
2020-12-04 10:15:30 -08:00
vdahiya12
03287cdbd7
[sonic-platform-common][sonic-platform-daemons] submodule update (#6124)
This PR updates the submodule sonic-platform-common, sonic-platform-daemons

For sonic-platform-common update following commits are added
a8823a3 [sonic_y_cable] add check_mux_direction api for y_cable (#151)
7c0301d Modular Chassis - APIs for midplane monitoring (#148)
6f7d8a0 Fix some LGTM alerts; Add LGTM badges to README.md (#146)

for sonic-platform-daemons update following commits are added
73e6ddd [xcvrd] replace check_active_linked_tor_side api to check_mux_direction (#131)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2020-12-04 04:27:42 -08:00
Stephen Sun
fdb51e7f33
Advance submodule head for sonic-swss and sonic-swss-common (#6111)
swss:
- [port_rates][rif_rates] Fix port_rates.lua (#1520)
- Improve the way of handling BUFFER_PG during PFC storm (#1480)
- [Orchagent] Vxlanorch and Portsorch changes for EVPN VXLAN (#1264)
- [sub intf] ecmp hardware convergence acceleration at parent port oper status changes (#1492)
- [dvs/copp] Adjust policer checks in VS tests for default COPP policers (#1519)
- Flush ARP/neighbor entry on FDB flush when port L2-L3 (#1506)
- [intfmgr]: Add GARP support (#1503)

swss-common:
- [Dynamic buffer calc] Support dynamic buffer calculation (#361)
- README.md: Update build requirements (#414)

Signed-off-by: Stephen Sun <stephens@nvidia.com>
2020-12-03 23:30:28 -08:00
Joe LeVeque
0e101247ac
[sonic-utilities] Update submodule (#6107)
* src/sonic-utilities 6fabbed...3749f5e (7):
  > [config vlan] Stop, reset-failed, then start dhcp_relay service (#1269)
  > [show] Break some groups out into their own modules (#1259)
  > Convert the output of 'arp -n' from bytes to str. (#1279)
  > Fixing python porting errors in fdbshow, natshow and nbrshow (#1280)
  > [pfcwd] Use floor division in Python3 (#1277)
  > Modify fast-reboot script to use teamd service script (#1251)
  > Add `show reboot-cause history` cli (#1210)
2020-12-03 15:57:21 -08:00
vdahiya12
356522bfcd
[sonic-platform-daemons] submodule update (#6116)
this PR updates the following Commits in sonic-platform-daemons
ab39059 [xcvrd] Fix y_cable state updates from 'failure' to 'unknown' on error conditions/events (#129)
5d74356 Clean some unused variables, check for multiAsic before calling initializeGlobalConfig (#130)
12b3628 [psud] Make sure psu leds are set on the first run (#125)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2020-12-03 09:47:04 -08:00
Dmytro Shevchuk
9a82dca483
[sonic-py-swsssdk] update submodule: fix fdbshow, show arp commands (#6074)
Update submodule for PR Azure/sonic-py-swsssdk#95
2020-12-02 18:17:24 -08:00
lguohan
4812953468
[ntp]: build ntp with various fixes (#6037)
- NTP Bug 1970 (UNLINK_EXPR_SLIST empty list) Fix
- ENOBUFS log message level set to WARN
- Fix audit message seen on console apparmor
- add force-confold option when install ntp

Signed-off-by: Guohan Lu <lguohan@gmail.com>
Co-authored-by: Prabhu Sreenivasan <prabhu.sreenivasan@broadcom>
2020-12-02 15:02:50 -08:00
trzhang-msft
c59975c7da
DHCP relay: support for dual ToR (#6066)
* DHCP relay: support for dual ToR

* update to use -U option

* update

* update
2020-12-02 14:43:20 -08:00
vganesan-nokia
19b592b8aa
[vstest]VS test for VOQ System ports (#5862)
Changes for supporting vstest for VOQ system ports. The changes include:
(1)Use of chassis_db.json is avoided since the SYSTEM_PORT is made
available in virtual chassis linecard's default_config.json which will
be loaded during bootup
(2)Core port index map file is introduced and is copied from virtual chassis
directory to hwsku direcory by start.sh
(3)vs sai profile is modified to include core port index map file name

Signed-off-by: vedganes <vedavinayagam.ganesan@nokia.com>
2020-12-02 10:31:43 -08:00
Xin Wang
e4ee07b79f
[bgp]: Fix bgp crash after BGP allow list configuration is added (#6088)
The issue was a typo introduced in #6006. In that change, the BGP allow list
configuration manager was updated to use a method of common ConfigMgr
for restarting peer groups. However, the method name 'restart_peers' was
used instead of the correct 'restart_peer_groups'.

This change updated the managers_allow_list.py to use correct method
'restart_peer_groups' for restarting peer groups.

Signed-off-by: Xin Wang <xiwang5@microsoft.com>
2020-12-02 09:15:06 -08:00
Ying Xie
443f81f9b7
[hostcfgd] check cached state instead of the next state (#6067)
- Why I did it
'always_enabled' feature can still be disabled/enabled.

- How I did it
When checking if a feature is 'always_enabled', check the cached state to prevent new change to be accepted.
Fix an issue where cache value is updated before all the check is done.
Restore 'always_enabled' value in config db if someone wants to change.

Signed-off-by: Ying Xie ying.xie@microsoft.com

- How to verify it
Without the fix, 'always_enabled' feature can be enabled or disabled without cli protection. With the protection, the change will be rejected properly.
2020-12-01 17:56:39 -08:00
abdosi
9265022502
[sonic-utilities] Update submodule (#6070)
6fabbedc8ba0f7961bec3ec0adf7bb9d5c71eb2b [consutil][test] Add unit tests for consutil clear command (#1274)
a4f663ea0d7b52eeb76d903b19119c34ab86b1e9 [show/fgnhg] Fix crash bug (#1272)
9f276b21b06423ad11d75fbe17f46a43723f62a5 [config][loopback] Fix Bug that cannot add loopback interface by CLI (#1276)
a5b78cf968e4e5c49b764f5a76bdea6d6532c8d3 [config][show] CLI support for interacting with muxcable (#1221)
8f3b22ed11e166ed24dcd2fb1ac61e227140c2af [connect][sonic-clear] Align the exit code with consutil for line commands (#1256)
cfb7a2269406e8cca354db8a579c401e97f66e9f Feature table cli command update (#1271)
5b8da561b8712e9785622a53a2898671ada9c76e Added Multi-ASIC support for show ip(v6) route (#1216)
a7f39b04eb4b14f56f14f9851d59b81ecd5285f8 Improve MockRedis _encode(): so it will work on all types of value (#1265)
8427caf28ea60af97d8eb1eb3ccb75e99bc54184 [config_mgmt.py]: Remove sort_data call, we do not need it now. (#1246)
9dc58eaa76d38a40f33d534b13442284f598852a [sonic-utilities] Fix show vnet [neighbors | routes [all | tunnel]] crashed issue (#1263)

Signed-off-by: Abhishek Dosi <abdosi@microsoft.com>
2020-12-01 09:37:01 -08:00
Garrick He
112eb08f39
[sflow] Bump hsflowd version in Makefile (#6065)
* Specify the hsflowd version in the Makefile using variables instead of hardcore.

Signed-off-by: Garrick He <garrick_he@dell.com>
2020-11-30 18:46:42 -08:00
abdosi
872c85d8e7
[lldp]: Lldp docker to use python3 version of sonic-db-syncd package. (#6046)
Made changes so that Lldp docker start using py3 of sonic-db-syncd

submodule update sonic-db-syncd
5cc29a1b32d8d1f4dfbc967bfea2727c50a49c76 (HEAD -> master, origin/master, origin/HEAD) Changes to convert sonic-dbsyncd from python 2 to 3

Signed-off-by: Abhishek Dosi <abdosi@microsoft.com>
2020-11-30 10:44:40 -08:00
Ying Xie
7f21c0be1a
[FRR] remove the whole block of outchannel properly (#6045)
- Why I did it
Fix issue #6043

- How I did it
We are disabling in container frr log. The log entries are sent to base image and are logged in /var/log/quagga/bgpd.log.

However, we need to remove the whole outchannel config block to avoid an error message raised by rsyslogd.

- How to verify it
Without the change, test_autorestart bgp container will fail on loganalyer errors. With the change, restarting bgp container is no longer generating error message and the test will pass.

The log generated by frr continued appearing in /var/log/quagga/bgpd.log
2020-11-26 16:50:32 -08:00
Joe LeVeque
00d3cb7a7c
[sonic-platform-common] Update submodule (#6041)
Commits include:

* src/sonic-platform-common d912db6...fa0aaa6 (3):
  > [sonic_sfp]: add logical_to_asic dict (#141)
  > [sonic_pcie][sonic_ssd] Make Python 3-compliant (#150)
  > [eeprom_base] Close lock file after unlocking (#149)
2020-11-26 13:14:56 -08:00
Joe LeVeque
829c116f13
[sonic-swss-common] Update submodule (#6042)
Commits include:

* src/sonic-swss-common f143b7f...3d400a9 (3):
  > ASIC internal temperature sensors support (#419)
  > SWIG functions accept unicode input (#422)
  > Introdcued RESOLVE_NEIGH APP DB table (#420)
2020-11-26 09:22:50 -08:00
Sujin Kang
d5cd4e7ea2
Fix the ExecStart path for process-reboot-cause (#6044)
- Change the ExecStart path for process-reboot-cause from /usr/bin to /usr/local/bin
- Correct description and dependencies.
2020-11-26 09:22:02 -08:00
pavel-shirshov
148436d42e
[bgpcfg]: Batch bgp updates (#6006)
* [bgpcfgd]: Batch bgp updates.

vtysh -f command is slow. It is sometimes takes about 3 seconds.
When we need to run many vtysh -f commands that slows down the system.
Batch vtysh -f updates.

* Use correct file to import run_command
2020-11-25 14:56:27 -08:00
Joe LeVeque
7f4ab8fbd8
[sonic-utilities] Update submodule; Build and install as a Python 3 wheel (#5926)
Submodule updates include the following commits:

* src/sonic-utilities 9dc58ea...f9eb739 (18):
  > Remove unnecessary calls to str.encode() now that the package is Python 3; Fix deprecation warning (#1260)
  > [generate_dump] Ignoring file/directory not found Errors (#1201)
  > Fixed porstat rate and util issues (#1140)
  > fix error: interface counters is mismatch after warm-reboot (#1099)
  > Remove unnecessary calls to str.decode() now that the package is Python 3 (#1255)
  > [acl-loader] Make list sorting compliant with Python 3 (#1257)
  > Replace hard-coded fast-reboot with variable. And some typo corrections (#1254)
  > [configlet][portconfig] Remove calls to dict.has_key() which is not available in Python 3 (#1247)
  > Remove unnecessary conversions to list() and calls to dict.keys() (#1243)
  > Clean up LGTM alerts (#1239)
  > Add 'requests' as install dependency in setup.py (#1240)
  > Convert to Python 3 (#1128)
  > Fix mock SonicV2Connector in python3: use decode_responses mode so caller code will be the same as python2 (#1238)
  > [tests] Do not trim from PATH if we did not append to it; Clean up/fix shebangs in scripts (#1233)
  > Updates to bgp config and show commands with BGP_INTERNAL_NEIGHBOR table (#1224)
  > [cli]: NAT show commands newline issue after migrated to Python3 (#1204)
  > [doc]: Update Command-Reference.md (#1231)
  > Added 'import sys' in feature.py file (#1232)

* src/sonic-py-swsssdk 9d9f0c6...1664be9 (2):
  > Fix: no need to decode() after redis client scan, so it will work for both python2 and python3 (#96)
  > FieldValueMap `contains`(`in`)  will also work when migrated to libswsscommon(C++ with SWIG wrapper) (#94)

- Also fix Python 3-related issues:
    - Use integer (floor) division in config_samples.py (sonic-config-engine)
    - Replace print statement with print function in eeprom.py plugin for x86_64-kvm_x86_64-r0 platform
    - Update all platform plugins to be compatible with both Python 2 and Python 3
    - Remove shebangs from plugins files which are not intended to be executable
    - Replace tabs with spaces in Python plugin files and fix alignment, because Python 3 is more strict
    - Remove trailing whitespace from plugins files
2020-11-25 10:28:36 -08:00
abdosi
fad481edc1
Enhanced Feature table to support 'always_enabled' value for state and auto-restart fields. (#6000)
Added new flag value 'always_enabled' for the state and auto-restart field of feature table

init_cfg.json is updated to initialize state field of database/swss/syncd/teamd feature and auto-restart field of database feature
as always_enabled

Once the state/auto-restart value is initialized as "always_enabled" it is immutable and cannot be change via feature config commands. (config feature..) PR#Azure/sonic-utilities#1271

hostcfgd will not take any action if state field value is 'always_enabled'

Since we have always_enabled field for auto-restart updated supervisor-proc-exit-listener
not to have special check for database and always rely on value from Feature table.
2020-11-25 08:41:11 -08:00
Sabareesh-Kumar-Anandan
ac609365f6
[libyang] Adding LFS support for arm32 (#6018)
In the emulated armhf environment, the function readdir()returns NULL on a ext4 file system directory. When running the libyang test cases, it will require to load the plugins from the files (such as metadata.so), because the readdir() is failing, the plugins can’t be loaded in the emulated armhf environment, so it causes libyang test error. This error is a combination of the following reasons.
• Emulation of a 32-bit target from a 64-bit host –> qemu from x86_64 to armhf
• Glibc version > 2.27 – Debian buster is using glibc 2.28

Signed-off-by: Sabareesh Kumar Anandan <sanandan@marvell.com>
2020-11-25 01:10:53 -08:00
pavel-shirshov
fd87ba0aee
[bgpcfgd]: Add on-match next rule for set ipv6 next-hop prefer-global (#6011)
* Add 'on-match next' after every 'set ipv6 next-hop prefer-global'
* Check that 'set ipv6 next-hop prefer-global' rule has 'on-match' next
2020-11-24 08:33:31 -08:00
vdahiya12
962e838b16
[sonic-platform-common] sub_module update (#6007)
commits in this PR

d912db6 [sonic_y_cable] add error checking for eeprom read (#147)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2020-11-23 23:27:21 -08:00
Sudharsan Dhamal Gopalarathnam
b65fc7867e
Updating submodule pointers for sonic-utilities (#5921)
sonic-utilities:
[3f15835] [sflow] Add mVRF support (#1230)
[dadfc18] Copp Changes (#1004)
[b226159] [CLI][PFCWD] Fix issue with specifying ports in pfcwd start on masic platforms (#1203)
[40377d3] [chassis]: Configure and show for platform chassis_modules (#1145)
[d5eb2f8] [consutil][connect] Remove root need from connect line command (#1225)
[6cbec6b] [multi-ASIC] CRM show/config commands changes for multi-asic (#1127)

Co-authored-by: dgsudharsan <sudharsan_gopalarat@dell.com>
2020-11-23 14:55:23 -08:00
Qi Luo
5410290b26
[sonic-swss-common] Update submodule (#5998)
Included submodule commits:
    f143b7f 2020-11-22 | [swig] wrap logger.h (#418) [Qi Luo]
2020-11-23 03:58:06 -08:00
Shi Su
e0781f463f
[L2 switch mode] Update l2switch.j2 template (#5981)
- Why I did it
The l2switch.j2 template does not include all fields for PORT. This could be incompatible with the 201911 image or later.

- How I did it
Update l2switch.j2 template and add a unit test.
2020-11-21 11:35:35 -08:00
Sujin Kang
5b31996f7b
[reboot-history] Add reboot history to state db (#5933)
- Why I did it
Add reboot history to State db so that can be used telemetry service
- How I did it
Split the process-reboot-cause service to determine-reboot-cause and process-reboot-cause
determine-reboot-cause to determine the reboot cause
process-reboot-cause to parse the reboot cause files and put the reboot history to state db
Moved to sonic-host-service* packages
- How to verify it
Performed unit test and tested on DUT
2020-11-20 20:08:18 -08:00
Ying Xie
d3c1a5bf39
[frr] remove frr rsyslog file outchannel (#5962)
- Why I did it
frr is creating /var/log/frr/frr.log inside the frr docker and letting it grow. It will eventually exhaust hard drive space.

To fixe issue #5965

- How I did it
Remove rsyslog file outchannel so that frr won't generate /var/log/frr/frr.log inside the docker.

- How to verify it
Manually removed the outchannel and restart BGP docker, making sure that /var/log/frr/frr.log is no longer created inside the docker.

While restarting bgp docker, observed that base image /var/log/quagga/bgpd.log continued to grow and captured all FRR logs.
2020-11-20 19:36:04 -08:00
Lawrence Lee
3b27afe377
[minigraph.py]: Add VLAN_INTERFACE attributes for dual ToR devices (#5951)
* If a device has subtype = 'DualToR', then enable proxy ARP and gratuitous ARP.
2020-11-20 17:04:01 -08:00
Petro Bratash
31404dc43a
[sonic-platform-daemons] Update submodule (#5987)
- Fix test_updater_thermal_check_min_max()
f6e5e5902e

- [sonic-platform-daemons] Add more physical entity information to DB for physical entity mib
14e586d676

Signed-off-by: Petro Bratash <petrox.bratash@intel.com>
2020-11-20 12:25:13 -08:00
Joe LeVeque
23247514f9
Fix a number of LGTM alerts (#5952)
Fix 259 alerts reported by the LGTM tool:

- 245 for Unused import
- 7 for Testing equality to None
- 5 for Duplicate key in dict literal
- 1 for Module is imported more than once
- 1 for Unused local variable
2020-11-20 10:58:48 -08:00
Joe LeVeque
7bf05f7f4f
[supervisor] Install vanilla package once again, install Python 3 version in Buster container (#5546)
**- Why I did it**

We were building a custom version of Supervisor because I had added patches to prevent hangs and crashes if the system clock ever rolled backward. Those changes were merged into the upstream Supervisor repo as of version 3.4.0 (http://supervisord.org/changes.html#id9), therefore, we should be able to simply install the vanilla package via pip. This will also allow us to easily move to Python 3, as Python 3 support was added in version 4.0.0.

**- How I did it**

- Remove Makefiles and patches for building supervisor package from source
- Install Python 3 supervisor package version 4.2.1 in Buster base container
    - Also install Python 3 version of supervisord-dependent-startup in Buster base container
- Debian package installed binary in `/usr/bin/`, but pip package installs in `/usr/local/bin/`, so rather than update all absolute paths, I changed all references to simply call `supervisord` and let the system PATH find the executable to prevent future need for changes just in case we ever need to switch back to build a Debian package, then we won't need to modify these again.
- Install Python 2 supervisor package >= 3.4.0 in Stretch and Jessie base containers
2020-11-19 23:41:32 -08:00
Shi Su
2f2b7c2a5c
[sonic-swss] Update submodule (#5964)
Update the sonic-swss submodule. The following are the commits in the submodule.

[dvs] Re-add runcmd_async command
5ba548cd759be4f0b1d1830ea038bf3c84e6f3f6

[dvs] Re-add copy_file method to DVS
86e11715819ac183a68aaf1deed6beabb259384b

Add a check for warm-restart, and do a clear only when warm-restart is enable.
fcb6c9de918d93967440b78bf7d5cd3a51bf7129

[Routeorch] Fix next hop group reference count in bulk operation
7a92100c1c1a344e67d4501cb7b98de557d0ea52

[orchagent][port] In case of successful port creation set log level to INFO
fea7ade74941a529505681e384f3437e873b1f7a

Copp Manager Changes
7b76d2e201f9f7d26cec7460f1335f7762b4ad01

[orchagent] Arm 32-bit arch compilation warning Fixes
bed79702c9da7957b775a0c960f67dd426db34d5

Revert: swss: flush g_asicState after each event is done #570
b9084a720d41daf1d717bcbe06f56e7a95111fa6

[dvs] Clean-up conftest.py
d6e15e955c91a6f077a913a617a336a314c6c91b
2020-11-19 23:40:14 -08:00
Joe LeVeque
5fbb6ee613
[sonic-platform-daemons] Update submodule (#5976)
* src/sonic-platform-daemons be21d91...b90ddda (1):
  > [thermalctld] [psud] [chassisd] Fix crash with undefined environment variable (#120)
2020-11-19 22:43:10 -08:00
Petro Bratash
d2f143d66f
[sonic-platform-common] Update submodule (#5977)
[sonic_eeprom] Fix variable type: Azure/sonic-platform-common#145

Signed-off-by: Petro Bratash <petrox.bratash@intel.com>
2020-11-19 14:53:37 -08:00