Commit Graph

1778 Commits

Author SHA1 Message Date
Prince Sunny
1fc4968cd0
[swss] Update swss submodule (#9110)
Commits:
f147d9e - 2021-10-27 : [Mux orch] Handle setting unknown mux state (#1984) [Prince Sunny]
4618b2b - 2021-10-28 : Change tunnel orch order (#1990) [Prince Sunny]
505d52d - 2021-10-20 : Fix the option missing in kernel config issue (#1973) [xumia]
7bf4dfb - 2021-10-18 : SAI_REDIS_SWITCH_ATTR_CONTEXT shouldbe the last attribute. This is what sairedis library expects (#1935) [judyjoseph]
c58919e - 2021-10-08 : [logfile][202012]: Add option to specify swss rec file name (#1946) [judyjoseph]
2021-10-29 10:11:49 -07:00
Neetha John
a933b20d6f [minigraph] Add tagged vlan member support for storage backend (#9045)
Signed-off-by: Neetha John <nejo@microsoft.com>

Why I did it
Storage T0's have all vlan members as tagged

How I did it
Since currently minigraph does not have a unique way to identify if a vlan member is tagged/untagged and to ensure other scenarios are not broken, the logic used is to just update the vlan member type as 'tagged' when we determine that it is a storage backend device. This change will apply only to storage backend T0's since storage backend T1's will not have vlan member information

How to verify it
Updated the storage backend T0 testcases to check for tagged vlan members
Added testcase to check if a T1 and backend T1 device generates an empty vlan member table
Existing vlan member testcases are good enough for checking if any regression has been caused for regular T0's
Build sonic_config_engine-1.0-py3-none-any.whl successfully
2021-10-29 01:05:47 +00:00
vdahiya12
933f45e912
[202012][sonic-platform-common][sonic-platform-daemons] submodule update (#9081)
bf7214c (HEAD -> 202012, origin/202012) [y_cable] add support for manual/standby mode in xcvrd for muxcable; fix download firmware version retrieval logic while download firmware in progress (#220)

fc6a41e (HEAD -> 202012, origin/202012) Fix typo in the simulated y_cable driver (#226)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-10-27 10:18:00 -07:00
vdahiya12
f63e3cd1e9
[202012][sonic-utilities] submodule update (#9023)
8768089 (HEAD -> 202012, origin/202012) Remove exec from platform_reboot_plugin call to handle any hang issue. (#1879)
ae5d90c Validate input of ```config mirror_session add``` (#1825)
44d3a3b [show][config] fix the muxcable commands for interface naming mode (#1862)
0a4933e [TH3] Skipp Control Plane Assist on WARM Reboot for TH3 HWSKUs (#1861)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-10-24 09:06:17 -07:00
kellyyeh
517d81a57a [dhcp_relay] fix data type in dhcp6relay, add protection in packet data parsing (#9036) 2021-10-22 17:14:35 +00:00
Saikrishna Arcot
bb1bc59a22 docker-dhcp-relay: Fix waiting for interfaces to get set up (#9034)
Fix the check used to wait for interfaces to come up. The group name in
the supervisor config files has changed from isc-dhcp-relay to
dhcp-relay.

Also, in the wait script, wait 10 additional seconds after the vlans,
port channels, and any interfaces are up. This is because dhcrelay
listens on all interfaces (in addition to port channels and vlans), and
to ensure that it stays in a clean state during runtime, wait some extra
time to make sure that those interfaces are created as well.

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2021-10-22 17:14:22 +00:00
kellyyeh
82d0539c4e Fix dhcpmon bugs (#9008)
* Exclude incrementing on aggregate device if packet received on mgmt interface

* Fix DHCPv6 header offset calculation
2021-10-20 01:37:04 +00:00
vdahiya12
63083b2512
[202012][sonic-platform-common] submodule update (#9006)
This PR updates the following commits

0770dec Add retry reading/setting mux status to simulated y-cable driver (#221)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-10-19 10:02:02 -07:00
Saikrishna Arcot
8555e41d5f redis-dump-load: Pin the redis package to use 3.5.3 (#9001)
Redis 4.0.0b1 has been uploaded to pip as a prerelease version. This
version drops support for Python 2 and only supports Python 3. Because
setup.py is being run, it will use the latest version of a package and
not the latest stable version (which is still 3.5.3).

Therefore, pin the redis package to version 3.5.3, so that it will work
for both Python 2 and 3.

#### How to verify it

Make sure that redis-dump-load for Python 2 builds today.
2021-10-19 05:31:36 -07:00
Xichen96
dfc4bc540e [determine-reboot-cause] delay execution (#8935)
Since database.service has been moved to execute after rc-local.service,
and determine-reboot-cause.service rely on database.service, we have to
specify that in "After=".

Signed-off-by: Xichen Lin <xichenlin@microsoft.com>

Co-authored-by: Xichen Lin <xichenlin@microsoft.com>
2021-10-15 00:39:54 +00:00
Sumukha Tumkur Vani
84f6a090a6 [RESTAPI] Update Submodule (#8931)
Include the following commits:

f9bbed3cb86a3bab9a07745096835dbdbe5a4db6
Convert Unit Tests from unittest framework to pytest framework

e842c5ff317c67919dcbcab3358143cb9a16c9dd
Generate code coverage for Unit Tests
2021-10-12 09:24:00 +00:00
Lawrence Lee
a22c82288d
[device]: Add SAI checksum verify to TD3 config (#8886)
A new config option `sai_verify_incoming_chksum` was added to control the value of IPV4_INCR_CHECKSUM_ORIGINAL_VALUE_VERIFY in the EGR_FLEX_CONFIG control register (this prevents checksums of 0xffff from being propagated to other devices)

Signed-off-by: Lawrence Lee <lawlee@microsoft.com>
2021-10-04 10:45:44 -07:00
Ying Xie
d599a578ce
[202012][utilities] advance utilities submodule head (#8892)
* 647f01f 2021-09-30 | [fstrim] limit smartctl execution time to 30 seconds (#1850) (HEAD -> 202012, github/202012) [Ying Xie]
* 371970e 2021-09-30 | [202012][show techsupport] address show techsupport return none zero code issue (#1847) [Ying Xie]
* 81a8386 2021-09-30 | Disable pfcwd forward action config for cisco-8000. (#1848) [Alpesh Patel]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2021-10-04 09:49:57 -07:00
Sudharsan Dhamal Gopalarathnam
ccd93cba62 Load global config in caclmgrd only in multi asic NPU (#8812)
How I did it
Added if multi npu check before invoking the load global config.

How to verify it
Restart caclmgrd after this change and check if no error log is thrown.
2021-10-04 15:58:02 +00:00
Sumukha Tumkur Vani
7b90fbe52f [RESTAPI] submodule update (#8859)
Rejection of incorrect CIDR addresses while configuring routes.
2021-10-02 03:02:21 +00:00
Sumukha Tumkur Vani
162e42a85f Reduce logging level for RESTAPI from trace to info (#8858) 2021-10-02 03:02:21 +00:00
bingwang-ms
f2f88a0fd6 Update minigraph parser to support type MIRROR_DSCP (#8819)
* Update minigraph parser to support MIRROR_DSCP

Signed-off-by: bingwang <bingwang@microsoft.com>
2021-10-02 03:02:21 +00:00
kellyyeh
a4b6788b4b
Replace isc-dhcp with DHCPv6 Relay in dhcp_relay docker (#8884) 2021-10-01 19:55:03 -07:00
kellyyeh
ea064e2240
Parse DHCP_RELAY table (#8877)
* Cherry-pick Parse DHCP Table

* Cherry pick changing DHCP table to DHCP_RELAY
2021-09-30 13:28:28 -07:00
vdahiya12
90cfc08aad
[sonic-utilities] submodule update (#8865)
0b5f90b (HEAD -> 202012, origin/202012) [show techsupport] fix bash errors in generate_dump script (#1844)
388c50c [202012][warmboot] Add new preboot health check: verify db integrity (#1839)
d73dc98 [config] support for configuring muxcable to standby mode of operation (#1837)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-09-30 09:53:30 -07:00
kellyyeh
47ba7a9091
[dhcp_relay] DHCP relay support for IPv6 (#7772) (#8871) 2021-09-30 01:33:02 -07:00
kellyyeh
b94e7894cc
[dhcp_relay] Enhance DHCP monitor application to support DHCPv6 (#8060) (#8872) 2021-09-29 18:23:15 -07:00
kellyyeh
1a9d2187c5
Add DHCPv6 minigraph parsing support (#8870) 2021-09-29 18:20:39 -07:00
vdahiya12
7ffa290016
[202012][sonic-platform-daemons][sonic-platform-common] submodule update (#8864)
* [202012][sonic-platform-daemons] submodule update

3d14066 [xcvrd][y_cable] refactor xcvrd to listen to port probe without locks; fix the get_firmware_version API to sync with download_firmware (#216)

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

* update sonic-platform-common

93244bf [Y-Cable][Broadcom] upgrade to support Broadcom Y-Cable API to release 1.2 (#217)
Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-09-29 10:00:19 -07:00
minionatwork
d33cd2bb60 [multi-asic] Fix for sonic-cfggen exception during platform string read (#8229)
Fix for sonic-cfggen exception during platform string read during fresh install and start of sonic in multi asic, /var/run/redisX/ is created after database docker is started.
2021-09-29 03:55:20 +00:00
Prince Sunny
76804dab3b
[202012][Submodule] Update for sonic-swss (#8846)
*ee9c30d - 2021-09-24 : [202012] Cache route for single nexthop for faster retrieval (#1931) [Prince Sunny]
*84f1c63 - 2021-09-24 : [lgtm] Fix LGTM build on 202012 branch (#1921) [Kamil Cudnik]
2021-09-27 15:24:38 -07:00
Sumukha Tumkur Vani
7187041b78 [RESTAPI] Update submodule
Commits included:

1. Update API description for default vrf and ecmp routes
    fad87fa20f6b15e28c90e02a131c44d236d6a751

2. Fix WS-2018-0594 potential non-random UUIDs security issue
    8d4fd4a56b637d3b7403c321aef36b8dff58cd62

3. Add BFD config to subinterface and neighbor
    d3e8b8e4aee278fa11d7d86acabdab3fffc70d5a

4. Default Vrf static route support
    6cfc8fe110c46a1ee5a8430e02a440b5a7b4006d

5. Added flag to make go/pkg/ folder writable (removable)
    ee887c785c10d8b4f70db90ca50cc398327c5d73
2021-09-27 02:28:13 +00:00
richardyu
e9908d548f
Update sairedis for taking new saiserver (#8818)
Co-authored-by: richardyu-ms <richard.yu@microsoft.com>
2021-09-24 16:53:44 -07:00
Vivek Reddy
d819736f16
[202012] [Submodule] Update submodule ptr for sonic-utilities (#8807)
7a58e84 [techsupport] [202012] Removed -i option for docker commands and Improved Error Reporting (#1833)
2021-09-21 20:18:21 -07:00
Nazarii Hnydyn
f6f4c7f4b9
[submodule]: Advance sonic-swss. (#8804)
Commits on Sep 18, 2021
[pfcwd] Fix the polling interval time granularity (#1912) 98a3ae8

Commits on Sep 20, 2021
[202012][teammgrd]: Improve LAGs cleanup on shutdown (#1916) 5a4678e 

Signed-off-by: Nazarii Hnydyn <nazariig@nvidia.com>
2021-09-20 23:09:27 -07:00
Volodymyr Samotiy
8af4d89bd8
[202012][submodule] Update swss pointer (#8786)
* 4be4a9b [tlm teamd] Add retry mechanism before logging the ERR in get_dumps. (#1629)
* 2c0ce38 [fgnhgorch] Enable packet flow when no FG ECMP neighbors are resolved (#1900)
* fddb298 Innovium platform specific changes PFC Detect lua script for SONiC 202012 (#1893)

Signed-off-by: Volodymyr Samotiy <volodymyrs@nvidia.com>
2021-09-18 13:54:26 -07:00
Volodymyr Samotiy
038fda8154
[202012][submodule] Update swss pointer (#8782)
* c3691d3 [202012][pfcwd] Convert polling interval from ms to us in LUA scripts (#1909)
* 549c804 Mux state order change (#1902)
* 6b0b2c4 Update acl type check logic (#1886)

Signed-off-by: Volodymyr Samotiy <volodymyrs@nvidia.com>
2021-09-16 15:23:26 -07:00
vdahiya12
ce000ea845
[202012][submodule-update] sonic-utilities submodule update (#8778)
912d443 [sonic-utilities]remove db_migrator logic for autoneg enable/disable (#1823)
5323e9d [202012] Advertise ipv6 link local address (#1811)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-09-16 00:09:26 -07:00
Sudharsan Dhamal Gopalarathnam
16233ef3bb
[202012][sonic-utilities] Submodule update for sonic-utilities (#8769)
Included Commits
92d0744 [config reload] Removed job-mode for sonic.target restart (#1820)
c28fb22 [ci]: Support PR coverage (#1806)
2021-09-15 20:52:41 -07:00
trzhang-msft
ce95f26a40
caclmgrd: add test code to check dhcp acl update (#8509)
- add test code to check dhcp acl update
- port #8359 (caclmgrd: add test code to check dhcp acl update) to 202012 branch
2021-09-15 12:14:44 -07:00
Guohan Lu
e486a2f011
[submodule]: update sonic-utilities (#8759)
* 2a8957d 2021-09-14 | [202012][sonic-utilities] CLI support for port auto negotiation (#1817) (HEAD, origin/202012) [vdahiya12]

Signed-off-by: Guohan Lu <lguohan@gmail.com>
2021-09-15 02:52:06 -07:00
Qi Luo
ad8a332b78
[202012] Replace swsssdk with swsscommon in sonic-host-services and update submodule sonic-swss-common (#8513)
#### Why I did it
Backport https://github.com/Azure/sonic-buildimage/pull/8034 to 202012 branch

sonic-swss-common submodule updating includes below commits
```
a6b98da 2021-04-29 | Add support for config_db subscribe and unsubscribe python apis (#481) [arlakshm]
2506ca0 2021-08-22 | [ci] Fix azure pipeline DownloadPipelineArtifact source branch (#514) [Qi Luo]
```
2021-09-14 18:16:18 -07:00
trzhang-msft
4bdd31565f
Caclmgrd: port two commits from master to 202012 branch (#8673)
Fix #8672

add two missing commits in caclmgrd: monitor state_db to update dhcp acl #8222 when porting to 202012 branch
2021-09-13 23:59:08 -07:00
Volodymyr Samotiy
5bf81f8f77
[submodule] [202012] Update sonic-utilities pointer (#8677)
* d03ba4f [202012] [portstat, intfstat] added rates and utilization  (#1812)
* 499ad3f [config reload] Fix config reload failure due to sonic.target job cancellation (#1814)
* 96d658c [202012][sonic installer] Add swap setup support (#1815)
* a9c6970 platform pre-check for reboot in 202012 branch (#1788)
* 0e0478b Unify the number format in the ourput of portstat and pfcstat in all cases (#1795)
* 2d1e00e [ecnconfig] Fix exception seen during display and add unit tests (#1784) (#1789)

Signed-off-by: Volodymyr Samotiy <volodymyrs@nvidia.com>
2021-09-13 20:50:30 -07:00
Volodymyr Samotiy
9e59b5fa13
[submodule][202012] Update sonic-sairedis pointer (#8675)
* 0323d5e noaOrMlnx Fix flex counters logic of converting poll interval to seconds from MS (#878)

Signed-off-by: Volodymyr Samotiy <volodymyrs@nvidia.com>
2021-09-13 20:49:23 -07:00
vdahiya12
b82abd8dff
[202012][submodule] update sonic-platform-common and sonic-platform-daemons (#8607)
This PR updates the following commits in sonic-platform-common
9d2e7d5 Add y-cable driver for simulated mux (#213)
e3e8f09 [Y-Cable][Broadcom] Broadcom implementation of YCable class which inherits from YCableBase required for Y-Cable API's in sonic-platform-daemons (#208)

This PR updates the following commits in sonic-platform-daemons

ebc4f3f [Y-Cable] create unknown entries for mux_cable when there is a cable present but module definition is not present/invalid module
b10c417 [xcvrd] initial support for integrating vendor specfic class objects for calling Y-Cable API's inside xcvrd (#197) (#213)
f3fc1ea [y-cable] fix for logging the xcvrd metrics before writing the state to the State-DB (#208)


Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-09-06 12:49:40 -07:00
Volodymyr Samotiy
ab07ba29d5
[submodule] [202012] Update sonic-swss pointer (#8676)
* d240291 Update port_rates & rif_rates lua scripts to convert poll_interval to MS (#1855)
* a71a5d3 [acl mirror action] Mirror session ref count fix at acl rule attachment (#1761)
* 197f427 Fix vs test failure in test_buffer_traditional (#1881)
* 8471f42 Revert "[debugcounterorch] check if counter type is supported before querying… (#1789)" (#1884)

Signed-off-by: Volodymyr Samotiy <volodymyrs@nvidia.com>
2021-09-03 14:43:30 -07:00
Junchao-Mellanox
b5d98c82b1
[submodule] [202012] Update submodule pointer for sonic-utilities (#8627)
7041400 [config reload] Call systemctl reset-failed for snmp,telemetry,mgmt-framework services (#1773) (#1786)
399d370 Fix logic in RIF counters print (#1732)
8329544 [vnet_route_check] don't hardcode prefix length of /24 (#1756)
193b028 [neighbor-advertiser] delete the tunnel maps appropriately (#1663)
2c82bcf [neighbor_advertiser] Use existing tunnel if present for creating tunnel mappings (#1589)
8e22960 [202012][Config] Update config command of Kdump. (#1778)
be3e5c6 [show][config] cli refactor for muxcable with abstract class implementation from vendors (#1722) (#1782)
2021-08-31 02:28:48 -07:00
richardyu
f1d35d8445
Update SAI submodule in sairedis (#8598)
202012, the saiserver only works for branch 202012 on brcm's

Co-authored-by: richardyu-ms <richard.yu@microsoft.com>
2021-08-26 12:53:14 -07:00
Vaibhav Hemant Dixit
0239e020a8
[advance submodule] Update sonic-utilities 202012 head to latest (#8590)
Update sonic-utilities submodule to latest in 202012 branch:

[show priority-group drop counters] Add user info output when user want to check PG counters and polling are disabled Azure/sonic-utilities#1678
[route_check] Filter out VNET routes Azure/sonic-utilities#1612
[Show] Update the subcommands of Kdump. Azure/sonic-utilities#1682
Add mock support for swsscommon classes Azure/sonic-utilities#1780
[acl_loader]: add iptype match to the rules for dataplane acl Azure/sonic-utilities@205aff8
[202012][fast-reboot] Remove FLEX_COUNTER_TABLE from config_db.json before fast-reboot Azure/sonic-utilities#1774
2021-08-26 12:52:42 -07:00
Shilong Liu
6b69ddc861 [build] Fix reproducible build issues (#8548)
* [build] Fix reproducible build issues
2021-08-26 10:22:02 +00:00
Junchao-Mellanox
62623ccd17
[submodule][202012] Update submodule for sonic-linux-kernel (#8586)
816de4f [Mellanox] Remove incorrectly generated patch allegedly avoiding kernel deadlock but causes one (#231)
2021-08-25 13:14:24 -07:00
bingwang-ms
813ed8836e
[submodule]: Update sonic-swss (#8574)
d29a49a [ACL] Match TCP protocol while matching TCP_FLAG (#1854)
2569ad9 Fix sFlow sampling-rate and admin-state (#1728)
8908a8f Change rif_rates.lua and port_rates.lua scripts to calculate rates correct (#1848)
b42c2fb [VS Test] Skip flaky tests (#1875)

Signed-off-by: bingwang <bingwang@microsoft.com>
2021-08-25 03:09:49 -07:00
Shi Su
7d5ef0d9fe
[202012] [sonic-swss] Update submodule (#8522)
Why I did it
Update the sonic-swss submodule for the 202012 branch. The following is the new commit in the submodule.

c1cb2ca [202012] Backport SAI failure handling to 202012 branch (#1880)

How I did it
Update the sonic-swss submodule pointer for the 202012 branch.
2021-08-18 17:52:01 -07:00
Stepan Blyshchak
996ff82c49 [libteam][warm-reboot] fix issue in teamd warm-reboot that teamd starts (#8227)
with state of tdport from previous warm-reboot.

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

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

#### Why I did it

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

#### How I did it

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

#### How to verify it

Run warm-reboot-sad test on t0-56 topology.
2021-08-18 07:34:48 +00:00
vdahiya12
78909de378
[sonic-platform-common] submodule update (#8491)
ef4b3ec [Y-Cable] add the definition inside setup.py to include sonic_y_cable.credo as a package (#211)
7d81488 [Y-Cable][Credo] Credo implementation of YCable class which inherits from YCableBase required for Y-Cable API's in sonic-platform-daemons (#203)
3efb093 [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-17 13:22:23 -07:00
trzhang-msft
feab18a41b
caclmgrd: monitor mux_cable_table in state_db to update dhcp acl (#8477)
caclmgrd: monitor mux_cable_table in state_db to update dhcp acl

- if the state changes to 'standby', add acl to block dhcp packets based on ingress interfaces
- if the state changes to 'active', delete acl
- if the state changes to 'unknown', also delete acl to avoid potential disconnect
- both addition and deletion follow checking the existence of the rules

The change has been verified on a virtual switch based testbed.

Port to 202012 branch from #8222
2021-08-16 15:55:51 -07:00
Christian Svensson
e241337be0 [frrcfgd]: Fix constant casing for prefix-list mode (#8454)
Fix #6943

This change makes the template match PREFIX_SET and the documentation.

Signed-off-by: Christian Svensson <blue@cmd.nu>
2021-08-14 17:25:07 -07:00
lguohan
28d6ea9547 [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-13 22:03:07 -07:00
Shi Su
e71eeb7de9 [FRR]: Upgrade FRR to frr-7.5.1-s1 tag (#8443)
Update FRR 7.5.1 head.
2021-08-12 23:30:17 -07:00
carl-nokia
3b9b9462be [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-12 07:09:49 +00:00
Rajkumar-Marvell
01e223513d [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-12 07:09:23 +00:00
tjchadaga
76def5c3a0 Fix TH3 Warm-reboot failure due to Tunnel termination SAI failure (#8395) 2021-08-11 04:12:46 -07:00
shlomibitton
e62ae02fb2
[hostcfgd] [202012] Delay hostcfgd for faster boot time (#8117)
#### 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 scenario in general to run slower (~6 seconds).
This change will delay the start time of this daemon.
90 seconds determined as the maximum allowed downtime for control plane to come back up on fast-boot flow.

#### How I did it
Add a timer for hostcfgd service in order to delay the startup of this service.

#### How to verify it
Install an image with this change and observe the daemon start 90 seconds after the system boot.
2021-08-10 05:52:08 -07:00
lguohan
8b4f6943a9
[submodule]: update sonic-swss (#8374)
* 41dfaad 2021-08-02 | Bridge mac setting, fix statedb time format (#1844) (HEAD, origin/202012) [Prince Sunny]

Signed-off-by: Guohan Lu <lguohan@gmail.com>
2021-08-08 20:42:46 -07:00
Neetha John
66c8934d84 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-07 12:43:46 +00:00
VenkatCisco
99d3e2767e 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-08-07 12:40:06 +00:00
Qi Luo
0162cee667
[sonic-swss-common][sonic-snmpagent] Update submodule (#8357)
Include below commits

sonic-swss-common
```
83d3351 2021-04-22 | [swig] fix ConfigDBConnector.db_name (#483) [Qi Luo]
fdf296f 2021-04-09 | Fix: ConfigDBConnector call super init with proper parameter name (#470) [Qi Luo]
4f580e3 2021-03-26 | [swig] translate SonicV2Connector::keys return type from C++ vector<string> to Python list (#468) [Qi Luo]
```

sonic-snmpagent
```
c160c2b 2021-08-04 | CPU Spike because of redundant and flooded keyspace notifis handled (#230) [Vivek Reddy]
a4dd3bf 2021-08-03 | Non-block reading counters to tolerate corrupted/delayed counters in COUNTERS_DB (#231) [Qi Luo]
```
2021-08-06 03:41:36 -07:00
Ying Xie
a21fdeb58c
[202012][utilities] advance sonic-utilities submodule head (#8355)
To include following changes:

* d84a8cc 2021-08-05 | [fast-reboot] revert the change of disabling counter polling before fast-reboot (#1744) (HEAD -> 202012, github/202012) [Ying Xie]
* e900bc5 2021-08-04 | Add script null_route_helper (#1718) [bingwang-ms]
* 85f14e1 2021-08-02 | disk_check updates: (#1736) [Renuka Manavalan]
* d68ac1c 2021-05-27 | [console][show] Force refresh all lines status during show line (#1641) [Blueve]
* a0e417f 2021-04-25 | [console] Display success message after line cleared (#1579) [Blueve]
* 0c6bb27 2021-04-07 | [console] Include Flow Control status in show line result (#1549) [Blueve]
2021-08-06 03:40:24 -07:00
jusherma
4c0daa80c0 [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-05 15:23:18 +00:00
lguohan
cb50baeec2 [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:31:27 -07:00
Nazarii Hnydyn
ada56abe6e
[submodule]: Advance sonic-swss & sonic-sairedis. (#8296)
sairedis:
*[recorder] Fix incorrect attribute enum value capability query (#843) d86b051
*[syncd] Fix fdb flood queue size limit check (#863) 3a2af76
*[vslib] implement query for SAI_DEBUG_COUNTER_TYPE enum values (#842) 575dcb4 

swss:
*[portsorch] fix errors when moving port from one lag to anoth… a67d8af
*[debugcounterorch] check if counter type is supported before querying… ( 04105a4
*Td2: Reclaim buffer from unused ports (#1830) ac7f5cf
*[Dynamic Buffer Calc][202012]Bug fix: Don't create lossless buffer pr… f54b7d0 

Signed-off-by: Nazarii Hnydyn <nazariig@nvidia.com>
2021-07-30 16:24:35 -07:00
Stephen Sun
f1c8a6ab96
[sonic-swss][202012] Update submodule (#8286)
Update submodule for swss

f54b7d0b [Dynamic Buffer Calc][202012]Bug fix: Don't create lossless buffer profile for active ports without speed configured (Azure/sonic-swss#1820)
ac7f5cff Td2: Reclaim buffer from unused ports (Azure/sonic-swss#1830)
04105a4b [debugcounterorch] check if counter type is supported before querying (Azure/sonic-swss#1789)
a67d8af6 [202012][portsorch] fix errors when moving port from one lag to another. (Azure/sonic-swss#1819)
2021-07-30 02:49:40 -07:00
vdahiya12
5651977f65
[sonic-utilities] submodule update (#8284)
This PR updates the following commits

a9606fb [show] fix show muxcable metrics <port> for sorted output (#1731)
7355016 [minigraph][port_config] Use imported config.main and add conditional patch (#1728)
cc1d6e4 [configlet] Python3 compatible syntax for extracting a key from the dict (#1721)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-07-29 07:58:07 -07:00
Qi Luo
9642ea0bb9
[sonic-swss-common] Update submodule (#8272)
Includes below commits
```
bf8c832 2021-07-22 | Fix DBInterface blocking operations (#505) (HEAD -> 202012, origin/202012) [Qi Luo]
0e9385f 2021-04-21 | [swig] Implement SonicV2Connector.hmset() (#480) [Qi Luo]
76be49f 2021-07-25 | Modify the hardcode separator ":" to variable. (#473) [PJHsieh]
142ae3c 2021-06-23 | Fix config prompt question issue (#500) [xumia]
e7bebe1 2021-06-14 | Fix repo reference issue (#487) [xumia]
```
2021-07-28 01:27:15 -07:00
Sujin Kang
a8a6d40a14
[Submodule update:202012] sonic-platform-common, sonic-platform-daemons (#8262)
sonic-platform-daemons:
* c90bb29 [202012] Refactor Pcied and add unittest (Azure/sonic-platform-daemons#199)

sonic-platform-common:
* 9a59e19 Revert "Unifying the platform api for get_pcie_aer_stats with PcieBase (Azure/sonic-platform-common#197)" (Azure/sonic-platform-common#207)
* d35960b Revert "Revert "Unifying the platform api for get_pcie_aer_stats with PcieBase (Azure/sonic-platform-common#197)" (Azure/sonic-platform-common#207)" (Azure/sonic-platform-common#210)
2021-07-27 03:49:34 -07:00
Stepan Blyshchak
7eb6abdc7b
[hostcfgd] differentiate between UnitFileState and UnitFilePreset (#8169) (#8228)
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-21 01:13:30 -07:00
Renuka Manavalan
91f611157a
cherry-pick PR #8158 & PR #8205 into 202012 (#8235) 2021-07-20 20:52:33 -07:00
Qi Luo
01efb5454e
[sonic-utilities] Update submodule (#8196)
Includes below commits
```
d19829c 2021-07-16 | Revert "[minigraph][port_config] Consume port_config.json while reloading minigraph (#1705)" [Guohan Lu]
cd1f6e6 2021-07-15 | Reworked IP validation in "config interface ip add/remove" command (#1709) [Andriy Kokhan]
66c34c0 2021-07-15 | [minigraph][port_config] Consume port_config.json while reloading minigraph (#1705) [Blueve]
```
2021-07-17 04:19:01 -07:00
Neetha John
8acb206778
[202012] [minigraph] Update parsing logic for Storage backend devices (#8004)
Backport #7944 

#### 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
  1. device is of type backend and ResourceType attribute is None
  2. device is of type backend and ResourceType attribute contains "Storage"
  3. device is of type backend and graph contains "Subinterface" section

Also updated the logic to set "is_storage_device" to True
  1. for Backend, if any of the above conditions hold true
  2. 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-07-15 17:33:07 -07:00
lguohan
1d3939b7fe
[submodule]: update sonic-platform-common (#8178)
* 063e915 2021-06-15 | [CI] sonic-config-engine now depends on SONiC YANG packages (#198) (HEAD, origin/202012) [Joe LeVeque]
* 2d36a79 2021-07-13 | Fix Xcvrd crash due to invalid key access in type_of_media_interface, host_electrical_interface, connector_dict (#206) [Prince George]
* 67b8a77 2021-06-18 | Fix decode error when parsing EEPROM fields (#199) [Aravind Mani]
* 238d76b 2021-06-17 | Unifying the platform api for get_pcie_aer_stats with PcieBase (#197) [Sujin Kang]

Signed-off-by: Guohan Lu <lguohan@gmail.com>
2021-07-14 11:34:46 -07:00
lguohan
90c0dcf9e0
[submodule]: update sonic-platform-daemons (#8180)
* 664f0e2 2021-07-14 | [xrcvd]: Removed undefined symbol 'sfp_status_helper' (#204) (HEAD, origin/202012) [Prince George]
* 1b2d016 2021-06-16 | [CI] sonic-config-engine now depends on SONiC YANG packages (#194) [Joe LeVeque]
* 1cf5996 2021-07-14 | Introduce mgmtinit delay after transceiver module insertion (#201) [Prince George]

Signed-off-by: Guohan Lu <lguohan@gmail.com>
2021-07-14 08:07:37 -07:00
Guohan Lu
faf2cc2dac [submodule]: update sonic-linux-kernel
* deb716f 2021-07-14 | [Marvell] CPU1 failure on continuous reboot  (#228) (HEAD, origin/202012) [Rajkumar-Marvell]

Signed-off-by: Guohan Lu <lguohan@gmail.com>
2021-07-14 00:32:23 -07:00
DavidZagury
cf33a50c57
[sonic-utilities] Update submodule (#8168)
Update:
> 2ca493b 2021-07-13 create sniffer folder if not exist (Azure/sonic-utilities#1659) 
> 1695104 2021-07-07 [show priority-group drop counters] Remove backup with cached PG drop counters after 'config reload' (Azure/sonic-utilities#1679) 
> e99a3c5 2021-07-07 [show][config] support for interface alias for muxcable commands (Azure/sonic-utilities#1699)
2021-07-14 00:11:26 -07:00
Qi Luo
30e9c0e7d3
[sonic-snmpagent]: Advance submodule (#8176)
Includes below commits
```
946e5cf 2021-07-12 | Fix: SonicV2Connector behavior change: get_all will return empty dict if (#226) [Qi Luo]
```
2021-07-14 00:07:15 -07:00
shlomibitton
da7f596a55
[hostcfgd] [202012] Enhance hostcfgd to check feature state and run less system calls (#8157)
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.
What is changed: Check each feature status on systemd before executing a system call to enable and reload the systemctl daemon.
How to verify: Build an image with this change and observe less system calls are executed.
2021-07-13 14:57:17 -07:00
Shi Su
c857f64c00 [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-13 05:14:10 +00:00
Shilong Liu
7811e7eef1 Bug fix for reproducible build (#8061) 2021-07-07 09:41:29 +00:00
shlomibitton
adbc657722
[sonic-swss][202012] submodule update (#8058)
[flex-counters] [202012] Delay flex counters stats init for faster boot time (Azure/sonic-swss#1804)
Signed-off-by: Shlomi Bitton <shlomibi@nvidia.com>
2021-07-05 09:05:49 +03:00
Guohan Lu
d3e2983188 Revert "[Kubernetes]: The kube server could be used as http-proxy for docker (#7469)"
This reverts commit e851a42db7.
2021-07-01 18:41:21 -07:00
gechiang
e784c2607c
[202012] Add BRCM SOC Property to not count ACL drops towards interface RX_DRP fir DualToR platforms (#8000) 2021-07-01 16:45:07 -07:00
Dror Prital
22565d03a3
[sonic-utilities][202012] submodule update (#8029)
Update submodule for sonic-utilities to include the following PR:
[202012] [pfcwd] Fix the return code in invalid case (#1698)

Signed-off-by: Dror Prital <drorp@nvidia.com>
2021-06-30 20:39:27 +03:00
Shilong Liu
d9b1089a3c
Enable reproducible build for git in 202012 branch. (redo 6562) (#7994) 2021-06-30 10:54:54 +08:00
Stephen Sun
1e0af83f6a
[sonic-swss][202012] submodule update (#8011)
Advance submodule head for sonic-swss on 202012

bb383be2 [Dynamic Buffer Calc][Mellanox] Bug fixes and enhancements for the lua plugins for buffer pool calculation and headroom checking (Azure/sonic-swss#1781)
f949dfe9 [Dynamic Buffer Calc] Avoid creating lossy PG for admin down ports during initialization (Azure/sonic-swss#1776)
def0a914 Fix config prompt question issue (Azure/sonic-swss#1799)
21f97506 [ci]: Merge azure pipelines from master to 202012 branch (Azure/sonic-swss#1764)
a83a2a42 [vstest]: add dvs_route fixture
849bdf9c [Mux] Add support for mux metrics to State DB (Azure/sonic-swss#1757)
386de717 [qosorch] Dot1p map list initialization fix (Azure/sonic-swss#1746)
f99abdca [sub intf] Port object reference count update (Azure/sonic-swss#1712)
4a00042d [vstest/nhg]: use dvs_route fixture to make test_nhg more robust

Signed-off-by: Stephen Sun <stephens@nvidia.com>
2021-06-29 22:49:58 +03:00
DavidZagury
93a9dcb587
[sonic-sairedis][sonic-utilities][202012] submodule update (#7998)
Update submodule for sonic-utilities to include the following PRs:

80b7b54 Pcieutil to load the platform api first instead of using common api (sonic-utilities#1672)
3d5e93d [Mellanox] Update mellanox dump generation to include SDK dumps (sonic-utilities#1640)
a805efc [ci]: Fix config prompt question issue (sonic-utilities#1693)
33c6d79 [vnet_route_check] Fix logic for getting VNET routes from ASIC DB (sonic-utilities#1653)

Update submodule for sonic-sairedis to include the following PRs:

74b5808 [Mellanox] Update mellanoxs dump generation to include SDK dumps (sonic-sairedis#833)
5ff9305 Fix azure-pipelines branch reference error, change master to 202012 (sonic-sairedis#834)
2021-06-29 21:37:11 +03:00
Joe LeVeque
b7344e8ac3 [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-29 07:19:46 +00:00
thomas.cappleman@metaswitch.com
1d3e7ab161 [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:18:45 -07:00
Dror Prital
6d4bbdca92
[sonic-utilities][202012] submodule update (#7981)
Update submodule for sonic-utilities to include the following PRs:

Make the soft-reboot available in the SONiC image on master (#1681)
[config]: Update environment file during config reload (#1673)
Enable pr checker form 202012 (#1649)
[config] support for configuring muxcable to manual mode of operation (#1642)
[config] Fix config int add incorrect ip (#1414)

Signed-off-by: Dror Prital <drorp@nvidia.com>
2021-06-26 12:08:04 +03:00
Alexander Allen
b128bdc246
Bump sonic-platform-daemons (#7936)
3ab5a04 [xcvrd] Force cleanup of chassis global variable on deinit (#193)
2021-06-22 16:33:35 +03:00
Junchao-Mellanox
873f6a8b92
[202012] [sonic-platform-common] Update submodule (#7929)
b0dad8c Add to check pcie configuration revision to get the right configuration. (#195)
f66ffc3 [eeprom_tlv_info] Optimize EEPROM data process by using visitor pattern (#193)
2021-06-21 09:15:42 -07:00
Rajkumar-Marvell
c6282294b9 [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-21 09:56:02 +00:00
Qi Luo
8b7091ff51 Revert some mistakenly merged/pushed code
* Revert "fix"

This reverts commit 93585b0a0a.

* Revert "Version control git (#6562)"

This reverts commit 52b87753db.

* Revert "Revert "[files/build/versions]: support reproduceable build for git (#5774)""

This reverts commit 1cb8daf585.

* Revert "[files/build/versions]: support reproduceable build for git (#5774)"

This reverts commit 547aa9b2c7.
2021-06-21 06:35:54 +00:00
liushilongbuaa
52b87753db Version control git (#6562)
* support reproduceable build for git clone

Signed-off-by: shilongliu <shilongliu@microsoft.com>

* fix

* bug-fix

Signed-off-by: shilongliu <shilongliu@microsoft.com>

* bug-fix

Signed-off-by: shilongliu <shilongliu@microsoft.com>

Co-authored-by: shilongliu <shilongliu@microsoft.com>
2021-06-18 13:32:32 +08:00
Guohan Lu
1cb8daf585 Revert "[files/build/versions]: support reproduceable build for git (#5774)"
This reverts commit d75c290f00.
2021-06-18 13:32:27 +08:00
liushilongbuaa
547aa9b2c7 [files/build/versions]: support reproduceable build for git (#5774)
* support reproduceable build for git clone

Signed-off-by: shilongliu <shilongliu@microsoft.com>

* fix

Co-authored-by: shilongliu <shilongliu@microsoft.com>
2021-06-18 13:32:20 +08:00
Mykola Gerasymenko
c406d42a26
Add PG_DROP yang model (#7899)
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.

Signed-off-by: Mykola Gerasymenko <mykolax.gerasymenko@intel.com>
2021-06-17 10:32:45 -07:00
Joe LeVeque
c46bf41ea5 [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-17 07:09:50 +00:00
Renuka Manavalan
e851a42db7 [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-17 07:09:50 +00:00
Sudharsan Dhamal Gopalarathnam
199c75f36b
[202012][sonic-utilities] submodule update (#7891)
d86d765 [202012]Fixing db_migrator for Feature table (#1676)
440b0f4 [config] Sort Config Db When Saving (#1623) (#1651)
2021-06-16 18:33:41 +03:00
Blueve
4cbf7e975b [console][minigraph] Avoid generate config for self console port (#7817)
Signed-off-by: Jing Kan jika@microsoft.com
2021-06-16 12:46:25 +00:00
Lawrence Lee
11b2a607f8 [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-16 12:44:52 +00:00
Shi Su
15bc3c3ae0 [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-06-16 03:53:19 +00:00
Stephen Sun
79617d24fd
[submodule][202012] Advance submodule head for sonic-utilities (#7836)
Advance submodule head for sonic-utilities

b894c5b5 Fix build test failure caused by error module name (Azure/sonic-utilities#1662)
5a7c06a0 [config]][tacacs+] Change tacacs+ minimum timeout value base on spec (Azure/sonic-utilities#1631)
080a689c [202012] [db_migrator] fix old 1911 feature config migration to a new one. (Azure/sonic-utilities#1636)
43fff88c Change to use rvtysh when calling the show commands (Azure/sonic-utilities#1646)
88a823f0 [db_migrator][Mellanox] Update Mellanox buffer migrator with 2km-cable supported (Azure/sonic-utilities#1564)
d096ff78 [config]Static routes to config_db (1534)
a68d8d09 route_check: Updates  (Azure/sonic-utilities#1645)
2021-06-11 06:53:43 -07:00
Stepan Blyshchak
4506525b61
[sonic-linux-kernel] submodule update (#7776)
Includes below comments:
```
fcf7cdc [patch] add patch "net: sch_generic: fix the missing new qdisc assignment bug" (#213)
```

#### Why I did it
To bring the fix "net: sch_generic: fix the missing new qdisc assignment bug".

#### How I did it
Updated submodule.

#### How to verify it

Build and run.
Verify that flapping a LAG member port does not lead to this member beeing stuck in disabled state.
2021-06-07 02:05:34 -07:00
Lawrence Lee
6a0e9078d4 [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-06-02 02:38:54 +00:00
Neetha John
20b7654389 [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-31 04:38:18 +00:00
Ying Xie
8fc68f9781
[202012][swss][utilities] advance submodule heads (#7739)
sonic-utilities:
* 8b98d45 2021-05-25 | [show] support for show muxcable firmware version of only active banks (#1629) (HEAD -> 202012) [vdahiya12]
* afd0975 2021-05-20 | [show] add support for muxcable metrics (#1615) [vdahiya12]

sonic-swss
* 7611df5 2021-05-27 | [tunneldecaporch] Set default MTU for the overlay loopback interface (#1756) (HEAD -> 202012) [Volodymyr Samotiy]
* 22fbb5c 2021-05-27 | [202012] Resolve neighbor when nexthop does not exist (#1759) (github/202012) [Shi Su]
* ec7710c 2021-05-27 | [Bulk mode] Limit the size of bulker (#1760) [Shi Su]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2021-05-28 08:41:09 -07:00
Renuka Manavalan
cd7d04d08a 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-27 22:29:55 +00:00
Alexander Allen
bd6096a018 [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-27 22:29:01 +00:00
Joe LeVeque
c67ead6558
[202012][sonic-platform-common] Update submodule (#7695) 2021-05-27 08:19:29 -07:00
Neetha John
908e1a7524 [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-26 02:40:09 +00:00
Sudharsan Dhamal Gopalarathnam
7a8e77d8be
[202012] FEC none config through minigraph (#7670)
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

Backport of #7667 to 202012 branch.
2021-05-25 09:35:25 -07:00
Lior Avramov
38a29254a6
[sonic-snmpagent] submodule update (#7636)
Includes below commits:
748b545 2021-04-05 [SNMP] Update description of entPhysicalDescr mib in case interface is not configured.
2021-05-24 16:23:32 -07:00
xumia
dc44da4e0f 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-24 22:18:00 +00:00
Shi Su
97bea61708 [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-05-24 22:03:27 +00:00
abdosi
75071a98f4 [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-05-24 22:02:54 +00:00
abdosi
c692148205 [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-05-24 22:02:20 +00:00
abdosi
dbded1f48e Changes in FRR temapltes for multi-asic (#6901)
1. Made the command next-hop-self force only applicable on back-end asic bgp. This is done so that BGPL iBGP session running on backend can send e-BGP learn nexthop. Back end asic FRR is able to recursively resolve the eBGP nexthop in its routing table since it knows about all the connected routes advertise from front end asic.

2. Made all front-end asic bgp use global loopback ip (Loopback0) as router id and back end asic bgp use Loopbacl4096 as ruter-id and originator id for Route-Reflector. This is done so that routes learnt by external peer do not see Loopback4096 as router id in show ip bgp <route-prerfix> output.

3. To handle above change need to pass Loopback4096 from BGP manager for jinja2 template generation. This was missing and this change/fix is needed for this also https://github.com/Azure/sonic-buildimage/blob/master/dockers/docker-fpm-frr/frr/bgpd/templates/dynamic/instance.conf.j2#L27

4. Enhancement to add mult_asic specific bgpd template generation unit test cases.
2021-05-24 21:59:57 +00:00
abdosi
8f6b3456ab [multi-asic] BBR support on internal-peers for multi-asic platfroms. (#6848)
Enable BBR config allowas-in 1 for internal peers

Why I did:
To advertise BBR routes learnt via e-BGP peer in one asic/namespace to another iBGP asic/namespace via Route Reflector.
2021-05-24 21:57:10 +00:00
abdosi
82093fd669 [multi-asic] Enhanced iptable default rules (#6765)
What I did:-

For multi-asic platforms added iptable v4 rule to communicate on docker bridge ip
For multi-asic platforms extend iptable v4 rule for iptable v6 also
For multi-asic program made all internal rules applicable for all protocols (not filter based on tcp/udp). This is done to be consistent same as local host rule
For multi-asic platforms made nat rule (to forward traffic from namespace to host) generic for all protocols and also use Source IP if present for matching
2021-05-24 21:56:21 +00:00
Qi Luo
4a53031f59
[202012][swss/platform-daemons/utilities/kernel] Update submodules (#7647)
Includes below commits
```
sonic-swss
05f0438 2021-05-19 | Fix build error (#1751) [Shi Su]
1682a8d 2021-05-12 | [Bulk mode] Improve log in bulk failures (#1740) [Shi Su]
4509e88 2021-04-27 | [routeorch] Add support for blackhole routes (#1723) [Shi Su]
642014d 2019-10-31 | [fix] Use the same storm detection condition for queue occupancy non-zero case as the zero case (#1111) [Wenda Ni]

sonic-utilities
97fc442 2021-05-10 | [config]: Use mod_entry when editing VLAN_INTERFACE (#1602) [Lawrence Lee]
f60d579 2021-04-15 | [techsupport] Update show ip interface command (#1562) [Mahesh Maddikayala]
821d29d 2021-04-14 | Fix Multi-ASIC show specific resursive route by using common parsing function (#1560) [gechiang]

sonic-linux-kernel
61b331f 2021-05-06 | [dps200] Add dps200 PSU module driver (#207) [schobtr]

sonic-platform-daemons
5d2960f 2021-05-17 | [xcvrd] add support for logging mux_metrics events into state DB (#185) [vdahiya12]
a5c9207 2021-05-11 | [thermalctld] Enable stopping thermal manager (#180) [Junchao-Mellanox]
9123f63 2021-05-10 | [muxcable] Remove Xcvrd Sleep (#174) [Tamer Ahmed]
```
2021-05-20 09:59:48 -07:00
Dror Prital
3db6572e67
[202012][sonic-utilities] submodule update
[vnet] Add "vnet_route_check" script (#1300)
Signed-off-by: Dror Prital <drorp@nvidia.com>
2021-05-14 12:30:23 +03:00
lguohan
06c1de67ee [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-10 16:02:02 -07:00
Joe LeVeque
e4a9e0c1b6 [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-05-10 15:59:23 -07:00
Danny Allen
506c0e8e64
[202012][swss-common/utilities/platform-daemons] Update submodule (#7563)
* [202012][swss/swss-common/utilities/platform-daemons] Update submodule

sonic-swss
- [flex-counters] Delay flex counters stats init for faster boot time [202012] (#1736)

sonic-swss-common
- [swig] allow threads (#477)

sonic-utilities
- [sfpshow] Gracefully handle improper 'specification_compliance' field (#1594)

sonic-platform-daemons
- [xcvrd] Change the y_cable presence logic to use "mux_cable" table as identifier from Config DB (#176)
- [xcvrd] Enhance Media Settings (#177)

Signed-off-by: Danny Allen <daall@microsoft.com>
2021-05-10 15:53:43 -07:00
Joe LeVeque
deb9e67838
[202012] Add SOC property to enable AN/LT on some platforms (#7547)
* [202012] Add SOC property to enable AN/LT on some platforms

Why I did it
To enable autonegotiation/link training on some Broadcom-based platforms (Arista 7060CX, 7260CX3, 7050cx3, Celestica DX010)

How I did it
Add appropriate SOC property for enabling the feature to the Broadcom config files of appropriate platforms
Also convert line endings to UNIX format for one Celestica file

* Add 'phy_an_lt_msft' to BCM config file permitted list
2021-05-06 22:21:43 -07:00
Stephen Sun
2fc748eade
[202012][utilities] Update submodule (#7542)
68ea9efc Add pg-drop script to sonic filesystem (#1583)
b216bf0a Fixing serial number read to get from DB if it is populated (#1580)
fa7230c6 Handle the new db version which mellanox_buffer_migrator isn't interested (#1566)

Signed-off-by: Stephen Sun <stephens@nvidia.com>
2021-05-06 19:37:24 +03:00
Qi Luo
97066cbf46
[202012][submodule] Update sonic-utilities submodule (#7528)
Includes below commits:
```
3f8bc52 2021-05-05 | Relax the install_requires, no need to exact version as long as there are no broken changes with future versions (#1530) (#1592) [Qi Luo]
```
2021-05-05 18:39:31 -07:00
trzhang-msft
1c2c1f50ba dhcpmon: support dual tor scenario (#7471) 2021-05-05 09:35:01 -07:00
vmittal-msft
f766a1bccf 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-05-05 09:33:19 -07:00
Danny Allen
6060da3a36
[202012][swss/swss-common/utilities/kernel] Update submodule (#7487)
* [202012][swss/swss-common/utilities/kernel] Update submodule

sonic-swss:
- [Monitor Vlan] Fix a typo in hostif (#1722)
- Update pool sizes during initialization from timer only (#1708)
- [SflowMgr] SamplingRate Update by Speed Change Added (#1721)

sonic-swss-common:
- [swss-common] Add MUX Metrics Table (#482)
- [azp] Purge swss before installing the newly built deb package (#472)

sonic-utilities:
- disk_check: Check & mount RO as RW using tmpfs (#1569)
- No more IP validation as it is more likely a URL (#1555)
- Stop PMON docker before cold and soft reboots (#1514)
- Add soft-reboot reboot type (#1453)
- [acl] Use a list instead of a comma-separated string for ACL port list (#1519)
- sonic-installer: fix py3 issues in bootloader.aboot (#1553)
- Fix unsupported fs.squashfs extraction in sonic-installer (#1366)
- [show][config] cli support for firmware upgrade on Y-Cable (#1528) (#1558)

sonic-linux-kernel:
- [Mellanox] backport kernel patches for hw-management 7.0100.2303 (#211)

Signed-off-by: Danny Allen <daall@microsoft.com>

* Update utilities w/ build fix
2021-05-04 08:35:48 -07:00
guxianghong
a0fde3a626 [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-05-02 08:11:56 -07:00
anish-n
17d5e69c5b Add downstreamsubrole parsing to minigraph.py (#7193) 2021-04-29 10:08:03 -07:00
Stephen Sun
c91b02cb1b
[submodule][202012] Advance submodule head for sonic-swss (#7411)
adf5ab58 [vstest/subintf] Add vs test case to validate processing sequence of APPL DB keys (#1663)
8a732726 [intfsorch] Create subport with the entry contains necessary attributes (#1650)
7ba813b2 [vstest/subintf] Update vs tests to validate physical port host interface vlan tag attribute (#1634)
ed32e333 [portsorch] Configure hostif tagging for subports (#1573)
b5209c43 Handle IPv6 and ECMP routes to be programmed to ASIC (#1711)
515cc1a7 [Dynamic buffer calc][Mellanox] Fix bug: buffer over subscription in buffer pool size calculation (#1706)
0ad524b2 [202012] Allowing the first time FEC and AN configuration to be pushed to SAI (#1710)

Signed-off-by: Stephen Sun <stephens@nvidia.com>
2021-04-24 13:13:37 -07:00
Kamil Cudnik
4ac2734c34
[submodule] Advance sonic-sairedis submodule (#7409)
To fix innovium platform compilation and fix missing -lpython3.5 module
2021-04-23 18:25:34 +02:00
Renuka Manavalan
09c53af61b 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-21 14:00:53 -07:00
Danny Allen
f9d755310e
[202012][submodule] Update sonic-platform-daemons submodule (#7357)
- [muxcable] Fix Redis Selectable Processing (#173)

Signed-off-by: Danny Allen <daall@microsoft.com>
2021-04-19 10:27:00 -07:00
Vivek Reddy
fb20fe91d3 [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-15 19:15:58 -07:00
Vivek Reddy Karri
731401fe4f Reverts the commit which reverts "Backport ethtool to support QSFP-DD (#5725)"
This reverts commit a86cdd87cf.
2021-04-15 19:15:58 -07:00
Lawrence Lee
d7b4c62f6a [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:54 -07:00
Danny Allen
c7c9141a6f
[202012][submodule] Update sonic-swss and sonic-utilities submodules (#7313)
sonic-swss
* Don't update pools when ingress_lossless_pool is created but the initialization hasn't finished yet (#1685)
* Fix dynamic buffer bug occuring in rare condition (#1678)

sonic-utilities
* [load_minigraph]: Avoid starting PFCWD for EPMS devicetype (#1552)

Signed-off-by: Danny Allen <daall@microsoft.com>
2021-04-14 12:53:51 -07:00
Danny Allen
4e1f689574
[202012][submodule] Branch out sonic-sairedis submodule for 202012 (#7316)
- [pyext] Fix pyext/py2 library (#820)
- Added --purge of base docker image packages before installing new ones. (#819) <--- branch point

Signed-off-by: Danny Allen <daall@microsoft.com>
2021-04-14 07:42:31 -07:00
Danny Allen
606249323f
[202012][submodule] Branch out sonic-platform-daemons submodule for 202012 (#7314)
- [xcvrd] refactor Y-Cable firmware information to conform with all vendors (#171)
- [thermalctld] No need exit thermalcltd when loading invalid policy file (#172) <--- branch point

Signed-off-by: Danny Allen <daall@microsoft.com>
2021-04-13 23:13:52 -07:00
vdahiya12
230e78bb59 [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 13:46:45 -07:00
Junchao-Mellanox
f3f96df5cc [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-13 13:45:38 -07:00
shlomibitton
744e174276
[submodule]: update sonic-utilities submodule (#7305)
Revert "Fix fast-reboot-dump.py SonicV2Connector after late merge" (Azure/sonic-utilities#1561)

Signed-off-by: Shlomi Bitton <shlomibi@nvidia.com>
2021-04-13 19:44:30 +03:00
Stepan Blyshchak
abad39ee41
[sonic-swss] update sonic-swss submodule (#7306)
Changes:
ac4596a [intfmgrd] reach reconciled state at start when there are no interfaces configuration to process (#1703)

Signed-off-by: Stepan Blyschak <stepanb@nvidia.com>
2021-04-13 19:35:52 +03:00
MuLin
29eb442d43 [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 15:37:49 -07:00
Ying Xie
4a54148799
[202012][swss][utilities] advance submodule heads (#7267)
SWSS:
* d97c7c7 2021-04-07 | [Dynamic Buffer Calc] Enhancement: coding style and LGTM alerts (#1693) (HEAD -> 202012) [Stephen Sun]
* f70b3da 2021-04-03 | [Makefile] Reorder libsaimetadata and libswsscommon (#1689) [Kamil Cudnik]
* 72ae85d 2021-04-08 | [vlan] Add support of VLAN host interface (#1645) [Volodymyr Samotiy]
* a555b9c 2021-04-02 | Correct the sflow default sample rate (#1623) [fredyu190011]

Utilities:
* 1a789d2 2021-04-07 | Fixed the possibility of using uninitialized variable in route_check.py (#1551) (HEAD -> 202012) [Renuka Manavalan]
* 2412e3c 2021-04-06 | Fix fast-reboot-dump.py SonicV2Connector after late merge (#1546) [shlomibitton]
* f99c5f1 2021-04-02 | [fast-reboot] Fix dump script to support PortChannels in a VLAN group (#1393) [shlomibitton]
* 716e2af 2021-04-04 | Reduce time taken by show commands on multi-asic platforms (#1544) [abdosi]
* a160519 2021-04-03 | [setup.py]: move the module to test requirement (#1542) [lguohan]
* eaa67fe 2021-04-04 | [config] Eliminate race condition between reloading Monit config and (#1543) [yozhao101]
* 2497a9e 2021-04-03 | [reboot] No need enable the Linux magic system request key (#1538) [yozhao101]
* 9fda6fe 2021-04-06 | [fwutil]: Fix next image mount (#1533) [Nazarii Hnydyn]
* 9af50fe 2021-02-09 | Import 'mock' module from 'unittest' library (#1415) (HEAD -> 202012) [Joe LeVeque]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2021-04-08 20:29:15 -07:00
vdahiya12
ca4deb85d5 [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-08 18:39:37 +00:00
Joe LeVeque
cecb527699 [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 18:39:35 +00:00
Prince Sunny
e08dc12acf [IPinIP] Add Loopback2 interface, change dscp mode to uniform (#7234)
Co-authored-by: Ubuntu <prsunny>
2021-04-08 18:38:59 +00:00
Sumukha Tumkur Vani
915cb445cf [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-08 18:38:19 +00:00
Yilan
642a8e720f [build]: Fix pip3 hook ENABLE_VERSION_CONTROL_PY param (#7147) 2021-04-08 18:38:08 +00:00
Joe LeVeque
b4e1b553f5 [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 18:37:48 +00:00
Lawrence Lee
740dd03138 [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 14:03:50 -07:00
Aravind Mani
574c75b7c8 Update Media settings test case (#7220) 2021-04-05 14:03:06 -07:00
Shi Su
3e8022c0f6 [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-02 11:47:30 -07:00
xumia
63625fc816 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-04-02 11:44:36 -07:00
Stephen Sun
dfda1304ff
[submodule] : update sonic-linux-kernel (#7212)
b67c2782 [Mellanox] Backport patch to remove critical trip point from thermal zones (#201)

Signed-off-by: Stephen Sun <stephens@nvidia.com>
2021-04-02 09:39:47 -07:00
Danny Allen
324198e799
[202012][submodule] Update sonic-swss, sonic-swss-common, and sonic-utilites submodules (#7209)
sonic-swss
-[SFlowMgr] Sflow Crash on 200G ports handled (#1683)
-Stablize the test case (#1679)
-Remove PGs from an administratively down port. (#1677)

sonic-swss-common
- fix getting hash from redis db (#465)
- [dbconnector] Initialize redisContext (#464)

sonic-utilities
- route_check: Fix hanging & logging level (#1520)
- Add self timeout and crash if exceeded. (#1502)
- [reboot] User-friendly reboot cause message for kernel panic (#1486)
- [acl-loader]: do not add default deny rule for egress acl (#1531)

Signed-off-by: Danny Allen <daall@microsoft.com>
2021-04-01 19:46:37 -07:00
Guohan Lu
a86cdd87cf Revert "Backport ethtool to support QSFP-DD (#5725)"
This reverts commit 50e4cc1579.
2021-04-01 13:11:15 -07:00
Joe LeVeque
dd9be59cd1
[202012][dockers][supervisor] Increase event buffer size for process exit listener; Set all event buffer sizes to 1024 (#7203)
#### Why I did it

Backport of https://github.com/Azure/sonic-buildimage/pull/7083 to the 202012 branch.

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-04-01 12:52:19 -07:00
Stephen Sun
1b248c1202 [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 21:39:10 -07:00
yozhao101
72a38526f8 [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 15:03:43 -07:00
Joe LeVeque
7155d02df2
[202012][sonic-config-engine] Parse AutoNegotiation element from LinkMetadata section of minigraph file (#7166)
Backport of https://github.com/Azure/sonic-buildimage/pull/7031 to the 202012 branch

#### Why I did it

To enable parsing the `AutoNegotiation` element from the LinkMetadata section of minigraph file

#### How I did it

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 `0` or `1`

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-31 14:25:12 -07:00
Shi Su
576864b769 [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-31 08:49:23 -07:00
vdahiya12
1903650c0f [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-31 08:47:20 -07:00
dependabot[bot]
41f476e4cb 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-31 08:46:05 -07:00
Ying Xie
7dc0ae599a
[202012][swss][utilities] advance submodule heads (#7165)
utilities:
* 83f068b 2021-03-22 | Handling error scenario of adding port to Vlan which is part of LAG (#1516) (HEAD -> 202012) [Sudharsan Dhamal Gopalarathnam]
* 470e8ce 2021-03-24 | Enable PFCWD only on ports where PFC is enabled (#1508) [Andriy Yurkiv]
* 09ef2e0 2021-03-22 | [show][config] add support for setting and displaying switching modes on Y cable (#1501) [vdahiya12]
* 0d17d37 2021-03-24 | Warmboot script improvements - timeout exec, disable swss autorestart, remove trap (#1495) [Vaibhav Hemant Dixit]
* 2718cd8 2021-03-24 | [show] Fix int status of LAGs, configured as Vlan members (#1478) [maksymbelei95]
* cc168fb 2021-03-22 | Fix bug: show vlan config for vlan with no members (#1503) [allas-nvidia]

swss:
* 5d8d1fb 2021-03-26 | Revert "Revert "[buffermgr] Support maximum port headroom checking (#1607)" (#1675)" (#1682) (HEAD -> 202012) [Prince Sunny]
* f8df1f8 2021-03-26 | [Dynamic Buffer Calc] Enhance the field checking in table handling (#1680) [Stephen Sun]
* 6328c9f 2021-03-22 | [MuxOrch] FDB ageout safety check (#1674) [Prince Sunny]
* e1d733e 2021-03-21 | reduce severity of log to info in case of flush on non-existing member (#1669) [allas-nvidia]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2021-03-27 11:37:40 -07:00
abdosi
01057a0b82 [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-26 17:40:33 +00:00
judyjoseph
902ad1357a 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-26 17:39:50 +00:00
trzhang-msft
a6dc65421a 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-26 17:39:27 +00:00
Danny Allen
1201ca693c
[202012][submodule] Update sonic-swss and sonic-utilites submodules for 202012 (#7105)
sonic-swss
* [nbrmgrd] added function to parse IP address from APP_DB (#1672)
* [MUX/PFCWD] Use in_ports for acls instead of seperate ACL table (#1670)
* [mux] VS test for neigh, route and fdb (#1656)
* [Dynamic buffer calc] Bug fix: Remove PGs from an administratively down port. (#1652)
* spell check fixes (#1630)

sonic-utilities
* [reboot]: Stop mux before reboot on dual ToR (#1500)
* [config] Disable/enable container monitoring when stopping/starting services (#1499)
* Add 'show' and 'clear' command for PG drop (#1461)
* [CLI][techsupport] Add NOOP option for commands that did not have that option (#1445)
* [202012][reload] Improve reload by using sonic.target (#1509)

Signed-off-by: Danny Allen <daall@microsoft.com>
2021-03-24 15:27:59 -07:00
shlomibitton
50e4cc1579 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-19 10:29:58 -07:00
Danny Allen
4550094ec4
[202012][submodule] Update sonic-swss, sonic-utilities, and sonic-linux-kernel submodules (#7064)
sonic-swss
* Add table descriptions for dynamic buffer calculation to the documents (#1664)
* Remove vxlanmgrd dependency on orchagent (#1647)

sonic-utilities
* [show] Fix 'show mac' output, when FDB entry with Vlan 1 is present (#1368)
* [warm-reboot]: Check empty key before issuing redis hget (#1496)
* [generate-dump] Remove Arista specific logic (#1482)
* [warm-reboot]: added automated recover for ISSU file (#1466)
* [warm-reboot] Check if warm restart flag is set when issuing a warm-reboot (#1460)
* [show][config] fix for show/config muxcable hwmode model value; fix show/config muxcable return codes; (#1494)

sonic-linux-kernel
* [net] Disable prio and cls cgroups to make working cgroup2 sock matching (#198)

Signed-off-by: Danny Allen <daall@microsoft.com>
2021-03-18 18:10:39 +02:00
Tamer Ahmed
6fb1600234 [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-15 19:09:31 -07:00
Danny Allen
510202736c
[202012][submodule] Update swss for 202012 (#7011)
- Keep attribute order in bulk mode (#1659)

Signed-off-by: Danny Allen <daall@microsoft.com>
2021-03-11 06:47:49 -08:00
Danny Allen
e88579bbab
[202012][submodule] Update sonic-utilities submodule (#7012)
* [202012][submodule] Update sonic-utilities submodule
- [acl-loader] Improve input validation for acl_loader (#1479)
- [show] cli support for show muxcable cableinfo (#1448)

Signed-off-by: Danny Allen <daall@microsoft.com>
2021-03-11 06:47:28 -08:00
Danny Allen
52634787a4
[202012][submodule] Update sonic-linux-kernel submodule (#7013)
- Unset CONFIG_THERMAL_STATISTICS to prevent kernel crash (#199)
- [dni_dps460] Add attributes to retrieve PMBus status command codes (#197)
- [mellanox]: Backport new kernel patches (#195)
- [ci]: build amd64/armhf/arm64 for CI build (#196)
- Fix read and write failure to ‘fan1_target’ attribute of ‘dni_dps460’ driver. (#183)

Signed-off-by: Danny Allen <daall@microsoft.com>
2021-03-11 12:29:04 +02:00
Joe LeVeque
2e0bdd7921 [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 15:12:18 -08:00
Shi Su
98f15e6eca [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 15:11:57 -08:00
Shi Su
d5b3519a84 [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-10 09:34:18 -08:00
judyjoseph
a245f73b1c [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:33:34 -08:00
Renuka Manavalan
a4d81f3c19 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-10 09:32:49 -08:00
trzhang-msft
fdbb7fedd9 dhcp for dual tor: include all vlan intf into downstream intf (#6990)
* include all vlan intf into downstream intf

* add a comment
2021-03-10 09:32:00 -08:00
vdahiya12
d9e917507d [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-10 09:26:53 -08:00
anish-n
e60603cd96 [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-10 09:24:30 -08:00
Tamer Ahmed
7ec9fbb678 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-10 09:23:56 -08:00
Ying Xie
7452720d01 Revert "[sonic-platform-daemons] submodule update (#6957)" (#6979)
This reverts commit 7034edc9af.
2021-03-07 03:12:13 +00:00
Ying Xie
30e9f02f84
[202012][swss][utilities] advance submodule head (#6969)
swss:
* c712c24 2021-03-04 | Update StateDB with error if state change failed, Update APP_DB in all state chg req (#1662) (HEAD -> 202012) [Prince Sunny]

utilities:
* 9a9bff4 2021-03-03 | [acl] Expand VLAN into VLAN members when creating an ACL table (#1475) (HEAD -> 202012) [Danny Allen]
* d1e7d4e 2021-03-04 | [Mellanox] Change mellanox buffer migrator for new SKU Mellanox-SN2700-D40C8S8 (#1470) [Junchao-Mellanox]
* a1df1b4 2021-03-03 | [acl-loader] Add support for matching on ICMP and VLAN info (#1469) [Danny Allen]
* bab4a23 2021-03-03 | [config reload]: On dual ToR systems, cache ARP and FDB tables (#1465) [Lawrence Lee]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2021-03-05 14:04:33 -08:00
Qi Luo
1650777723 [minigraph] For egress ACL attaching to vlan, break them into vlan members (#6895)
#### Why I did it
Some platforms have difficult to attach egress ACL to vlan.

#### How I did it
For egress ACL attaching to vlan, break them into vlan members.

#### How to verify it
Unit test
Tested in DUT
2021-03-05 07:31:21 -08:00
vdahiya12
84a091d99c [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 21:59:42 +00:00
Qi Luo
9d8a3bbdd8 [minigraph] Support tagged VlanInterface if attached to multiple vlans (#6833)
It is possible that one interface attaches multiple vlans. The VlanInterface should be in tagged mode.

Signed-off-by: Qi Luo <qiluo-msft@users.noreply.github.com>
2021-03-04 21:58:37 +00:00
Joe LeVeque
2e1e7e0959 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-04 21:23:05 +00:00