Commit Graph

2185 Commits

Author SHA1 Message Date
Stepan Blyshchak
0e057a4bb1
[sonic-swss] update submodule (#9232)
```
5f8ebfa (HEAD, origin/master, origin/HEAD, master) [AclOrch] move ACL counters to flex counter infrastructure (#1943)
8119ec0 [bfdorch] Orchagent support hardware BFD (#1883)
15074ac [sonic-swss]:enable unconfiguring PFC on last TC on a port (#1962)
05c7c05 [Mux orch] set default as standby, change mux orch priority (#2010)
fe5b2a9 [pytest]: Ignore errors deleting host ifs (#2005)
70da9af [ci]: use native arm64 and armhf pool (#2013)
e14a071 [qos] Add EXP to TC map support (#1954)
c91a7f2 [switchorch] Implement VXLAN src port range feature  (#1959)
b20f0f4 Gcov for swss daemon (#1737)
01c243a [CRM][MPLS] Fix the mpls nexthop CRM attribute (#2008)
```

Signed-off-by: Stepan Blyschak <stepanb@nvidia.com>
2021-11-15 07:56:35 -08:00
Guohan Lu
db0b789b73
[submodule]: update sonic-linux-kernel (#9254)
* 6aa8d00 2021-11-12 | marvell-armhf]: add kconfig force inclusion for CONFIG_ARCH_NR_GPIO (#245) (HEAD, origin/master, origin/HEAD) [dflynn-Nokia]
* 39c7d18 2021-11-06 | [arm64]: add kconfig force inclusion for COMPAT_VSDO [Guohan Lu]
* fafaaea 2021-11-06 | [backport] kernel-compat-always-include-linux-compat.h-from-net-compat.patch [Guohan Lu]
* 6ac9b48 2021-10-19 | [ci]: use native arm64/armhf pool to build kernel [Guohan Lu]

Signed-off-by: Guohan Lu <lguohan@gmail.com>
2021-11-14 12:01:39 -08:00
dflynn-Nokia
df12ac5abd
[build]: marvell-armhf bullseye fixes (#9243)
This commit fixes/avoids the following errors encountered during the
marvell-armhf build for bullseye

- Fix Marvell prestera DMA driver build failure due to kallsyms_lookup_name()
  no longer being exported by the updated bullseye kernel. This is a temporary
  fix that will be replaced by a future version of the DMA driver.

- Update qemu-user-static version to align with the new glibc version included
  in bullseye

- Skip systemd-sonic-generator unit tests to avoid test failures. Root cause is
  still TBD

#### Why I did it
Fix the following build errors observed when building marvell-armhf for bullseye
1. Marvell Prestera DMA driver uses kernel API no longer exported
ERROR: modpost: "kallsyms_lookup_name" [/sonic/platform/marvell-armhf/prestera/mrvl-prestera/cpssEnabler/linuxNoKernelModule/drivers//mvDmaDrv.ko] undefined!

2. Old qemu-user-static version does not support semop() leading to following build failure
semop(1): encountered an error: Function not implemented

3. systemd-sonic-generator unit test failure
ssg-test.cc:217: Failure
Expected equality of these values:
  find_string_in_file(str_t, target, num_asics)
    Which is: false
  expected_result
    Which is: true
Error validating Before=single_inst.service in test.service
[  FAILED  ] SsgMainTest.ssg_main_40_npu (20 ms)
[----------] 4 tests from SsgMainTest (36 ms total)

[----------] Global test environment tear-down
[==========] 10 tests from 3 test suites ran. (54 ms total)
[  PASSED  ] 7 tests.
[  FAILED  ] 3 tests, listed below:
[  FAILED  ] SsgMainTest.ssg_main_single_npu
[  FAILED  ] SsgMainTest.ssg_main_10_npu
[  FAILED  ] SsgMainTest.ssg_main_40_npu

 3 FAILED TESTS
2021-11-13 10:48:58 -08:00
Guohan Lu
19f878f591
Revert "[yang] Add missing device types to the device_metadata yang (#9226)" (#9251)
This reverts commit 2dc94b30bb.
2021-11-12 22:08:58 -08:00
liuh-80
ff09b8b8ed
[TACACS+] Add Bash TACACS+ plugin for per-command authorization. (#8715)
This pull request add a bash plugin for TACACS+ per-command authorization

#### Why I did it
1. To support TACACS per command authorization, we check user command before execute it.
2. Fix libtacsupport.so can't parse tacplus_nss.conf correctly issue:
            Support debug=on setting.
            Support put server address and secret in same row.
3. Fix the parse_config_file method not reset server list before parse config file issue.

#### How I did it
The bash plugin will be called before every user command, and check user command with remote TACACS+ server for per-command authorization.

#### How to verify it
UT with CUnit cover all code in this plugin.
Also pass all current UT.

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

#### Description for the changelog
Add Bash TACACS+ plugin.


#### A picture of a cute animal (not mandatory but encouraged)
2021-11-13 09:57:30 +08:00
tjchadaga
645173307a
sonic-platform-daemons submodule update (#9223) 2021-11-12 13:23:12 -08:00
Neetha John
2dc94b30bb
[yang] Add missing device types to the device_metadata yang (#9226)
* Add missing device types to the DEVICE_METADATA type field

Signed-off-by: Neetha John <nejo@microsoft.com>
2021-11-11 19:41:24 -08:00
kellyyeh
a86320a773
DHCPv6 Relay multivlan functionality support (#9178)
Fix support for DHCPV6 Relay multi vlan functionality. Make sure the relayed packet is received at correct interface.

How I did it
Bind a socket to each vlan interface's global and link-local address.
Socket binded to global address is used for relaying data from client to server and receiving data from servers.
Socket binded to link-local address is used for relaying data received from server back to the client.
2021-11-11 17:49:04 -08:00
Vivek Reddy
5826a5c4e7
[submodule] Update sonic-utilities submodule (#9229)
4bcaa602 [generic-config-updater] Adding logging to config-{replace, rollback, checkpoint, list-checkpoints} (#1885)
5e95fc34 [debug dump util] Vlan Module Added (#1877)
7f0bbd99 [debug dump util] Portchannel module added (#1853)
50bbfa0f Removed -t option and other missing fixes (#1884)

update sonic-utilties submodule

Signed-off-by: Vivek Reddy Karri <vkarri@nvidia.com>
2021-11-11 09:22:33 -08:00
Renuka Manavalan
bb92e98bb8
TACACS: Don't send sshd's bad password to AAA (#9123)
When sshd realizes that this login can't succeed due to internal device state
or configuration, instead of failing right there, it proceeds to prompt for
password, so as the user does not get any clue on where is the failure point.

Yet to ensure that this login does not proceed, sshd replaces user provided password
with a specific pattern of characters matching length of user provided password.
This pattern is "INCORRECT", which is bound to fail.

If user provided length is smaller/equal, the substring of pattern is overwritten.
If user provided length is greater, the pattern is repeated until length is exhausted.

But if the PAM-tacacs plugin would send this password to AAA, the user could get
locked out by AAA, for providing incorrect value.

How I did it
Hence this fix, matches obtained password against the pattern. If match, fail just before
reaching AAA server.
2021-11-11 07:46:52 -08:00
Stepan Blyshchak
b8eb9f2769
[sonic-yang-models] add ACL flex counter group (#8909)
Why I did it
To add ACL FC to the YANG model.

How I did it
Added to the YANG model and added a UT.

How to verify it
Together with depends PRs. Run ACL/Everflow test suite.

Signed-off-by: Stepan Blyshchak <stepanb@nvidia.com>
2021-11-11 09:09:36 +08:00
Stepan Blyshchak
a2c2d67098
[ACL] enable ACL FC when genereting config from minigraph but disable by default (#8908)
* [ACL] enable ACL FC when genereting config from minigraph but disable by default
Why I did it
To support ACL counters on Flex Counter Infrastructure.

How I did it
Enable ACL FC in init_cfg and minigraph. Disable when genereting configuration from preset.

How to verify it
Together with depends PRs. Run ACL/Everflow test suite.

Signed-off-by: Stepan Blyshchak <stepanb@nvidia.com>
2021-11-11 09:07:54 +08:00
Guohan Lu
5f11eb320e Revert "sysready (#8889)"
This reverts commit d7e5372e54.
2021-11-10 15:36:20 -08:00
Kiran Kumar Kella
b4dda1c18d Ported iptables patch to 5.10 kernel (#4)
Ported Iptables patch for supporting fullcone NAT option to 5.10 kernel.

Signed-off-by: Kiran Kella <kiran.kella@broadcom.com>
2021-11-10 15:27:22 -08:00
Saikrishna Arcot
91f6800500 Upgrade to ntp 4.2.8p15 for Bullseye
Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2021-11-10 15:27:22 -08:00
Saikrishna Arcot
2b0ad74db6 Update kdump-tools for bullseye
Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2021-11-10 15:27:22 -08:00
Saikrishna Arcot
06d793e985 sonic-frr: Add patch to skip installing png files
In the build in Bullseye, there are no png files available in the
specified installation source directory. For now, don't bother
installing those files.

This may end up being reverted later if there are indeed png files that
need to be installed for documentation.

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2021-11-10 15:27:22 -08:00
Saikrishna Arcot
c923310b8c Update snmpd to 5.9, as part of the Bullseye upgrade
Debian actually did a binNMU for snmpd, so to match the package version
we're building with the version in the offiical repos, that version
needs to be manually specified in the changelog.

Buster still needs 5.7.3, because there's a ABI change between 5.7.3 and
5.9 for libsnmp, so for Buster, make sure that 5.7.3 is built, and for
Bullseye, make sure that 5.9 is built.

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2021-11-10 15:27:22 -08:00
Saikrishna Arcot
da9f72910a Update monit build for Bullseye
Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2021-11-10 15:27:22 -08:00
Saikrishna Arcot
a1d30e3aa0 Python 2 removal/cleanup
Remove Python 2 package installation from the base image. For container
builds, reference Python 2 packages only if we're not building for
Bullseye.

For libyang, don't build Python 2 bindings at all, since they don't seem
to be used.

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2021-11-10 15:27:22 -08:00
Saikrishna Arcot
b0b9bb0d68 openssh: Upgrade from 7.9 to 8.4, to match version in Bullseye
Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2021-11-10 15:27:22 -08:00
Saikrishna Arcot
371f496340 Update initramfs-tools from 0.133 to 0.140
Also update the patch to add support for booting from squashfs to fix a
shellcheck warning.

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2021-11-10 15:27:22 -08:00
Saikrishna Arcot
20598f3019 Update src/sonic-linux-kernel to point to the 5.10 kernel
Some patches have been enabled at this point, others need more rework.

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2021-11-10 15:27:22 -08:00
Senthil Kumar Guruswamy
d7e5372e54
sysready (#8889) 2021-11-10 14:52:52 -08:00
Arun Saravanan Balachandran
8219975d6f
[test] Include chassis fields validation in platform.json unit test (#8820)
Why I did it
Include validation of chassis dict in platform.json unit test
Based on: Azure/SONiC#768

How I did it
Update platform_json_checker to validate fields in chassis dict.

How to verify it
Verified that the unit test reports success for correct values of existing and capabilities fields in platform.json
2021-11-10 12:08:20 -08:00
AmitKaushik7
13bb747398
Adding mmu buffer yang files (#7838)
Why I did it
Added Buffer yang files derived from sonic/mgmt-cvl/testdata/schema from sonic-mgmt-common,  used by mgmt-framework.

Updated BUFFER_PG|({ifname},)*|{pg_num} to BUFFER_PG|{ifname}|{pg_num} in sonic-buffer-pg.yang.
This change is required for configuration migration for dynamic port breakout operation.

Added sonic-buffer-queue.yang for BUFFER_QUEUE

Tables: BUFFER_POOL, BUFFER_PROFILE, BUFFER_PG, BUFFER_QUEUE.

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

How to verify it
sonic_yang_models package build.

Description for the changelog
MMU Buffer yang files (BUFFER_POOL/BUFFER_PROFILE/BUFFER_PG/BUFFER_QUEUE)
2021-11-10 10:23:18 -08:00
liuh-80
e2bffdf9e7
[sonic-utilities] submodule update (#9203)
Updating sonic-utilities sub module with the following commits

63a5257 [TACACS+] Add config command for AAA authorization and accounting. (#1889)
8a8577b [dump] [copp] Fixed the NameError Exception for copp dump module (#1911)
84be8b4 Dump media_settings from appDB during fast-reboot (#1910)
563c416 Allow interface type value none (#1902)
095bf54 generic_updater: Fix service validator related issues (#1901)
efbe1f4 [chassis][supervisor][show][interfaces]show interfaces command warning on Supervisor card (#1771)
487b3b7 Add CRM CLIs for SRV6 nexthop and my_sid_entry (#1883)
2021-11-09 12:19:35 -08:00
gechiang
ef457ab13f
Disable ALPM distributed hitbit thread that is used for debug purpose only but interfered with Other functional operations (#9199) 2021-11-09 07:21:57 -08:00
Ze Gan
07038a0223
[submodule]: update for swss-common (#9192)
52b7a47 (HEAD, origin/master, origin/HEAD) [schema]: MACsec statistics support (#520)
48d7d8a [ci]: use native arm64 and armhf pool to build (#552)

Signed-off-by: Ze Gan <ganze718@gmail.com>
2021-11-09 09:49:38 +08:00
trzhang-msft
de3a928c7c
caclmgrd: support packet mark in DHCP chain (#9131)
* caclmgrd: support packet mark in DHCP chain
2021-11-08 14:54:16 -08:00
Raphael Tryster
e8d316de61
[submodule] Update snmpagent (#9102)
Why I did it
Update pointer to this commit in sonic-snmpagent:

a07da53 2021-10-26 Removed unused variables in rfc2863.py (#237)
2021-11-08 09:55:24 -08:00
Guohan Lu
a2d0dbe604
[sonic-yang]: introduce yang template for cvl yang (#8880)
Signed-off-by: Guohan Lu <lguohan@gmail.com>
2021-11-06 11:35:55 -07:00
Junchao-Mellanox
68dfbfaf2a
Allow interface type value none (#9098)
This PR allow user to set none value to interface type. So there is a way to achieve the goal via CLI:

config interface type XXX none
config interface speed XXX 10000
config interface type XXX CR
2021-11-05 19:09:14 -07:00
Sudharsan Dhamal Gopalarathnam
4f00b86502
[swss] Update Submodule (#9174)
Including the below commits to update swss submodule
8448a60 [vs tests]Migrating sonic-swss tests to use hwsku instead of fakeplatform (#1978)
faa26db Fix random failure in PR/CI build. (#2006)
e03edb6 Allow interface type value none (#1991)
71b9650 [orchagent] Fix group name of port-buffer-drop in flexcounterorch.cpp (#1967)
facdef5 [VS test] Skip flaky virtual chassis test (#2004)
8261c1f [pytest]: Increase timeout when checking services (#2000)
67278be [teammgrd]: Handle LAGs cleanup gracefully on Warm/Fast reboot. (#1934)
e92c1df Enable FEC statistics collection for Ethernet ports (#1994)
9f30ca1 VxLAN Tunnel Counters and Rates implementation (#1859)

Signed-off-by: Sudharsan Dhamal Gopalarathnam <sudharsand@nvidia.com>
2021-11-05 11:39:45 -07:00
Prince Sunny
02902078ee
[Submodule] update for swss-common (#9180)
d23cf88 - 2021-10-28 : [schema] Add ACL_COUNTER_ATTR_ID_LIST (#533) [Stepan Blyshchak]
53b84c7 - 2021-10-26 : Add default route table name to State DB (#543) [Prince Sunny]
2021-11-05 08:24:35 -07:00
liuh-80
a61ffcd92c
[TACACS+] Add Config DB schema and HostCfg Enforcer plugin to support TACACS+ per-command authorization&accounting. (#9029)
[TACACS+] Add Config DB schema and HostCfg Enforcer plugin to support TACACS+ per-command authorization&accounting. (#9029)

#### Why I did it
    Support TACACS per-command authorization&accounting.

#### How I did it
    Change ConfigDB schema and HostCfg enforcer.
    Add UT to cover changed code.

#### How to verify it
    Build following project and pass all UTs:
    make target/python-wheels/sonic_host_services-1.0-py3-none-any.whl

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

#### Description for the changelog
    Add Config DB schema and HostCfg Enforcer plugin to support TACACS+ per-command authorization&accounting.

#### A picture of a cute animal (not mandatory but encouraged)
2021-11-05 12:39:48 +08:00
Akhilesh Samineni
2c801ef442
[yang]: SONiC Yang model for DHCP-Relay parameters (#8946)
SONiC Yang model for DHCP-Relay parameters

What I did
Added DHCPv6 Servers.
Tables: VLAN, DHCP_RELAY.

How I did it
Defined Yang model for Relay based on Guideline doc:
https://github.com/Azure/SONiC/blob/master/doc/mgmt/SONiC_YANG_Model_Guidelines.md

How to verify it
Added test cases to verify it.

Signed-off-by: Akhilesh Samineni akhilesh.samineni@broadcom.com
2021-11-04 10:44:04 -07:00
anamehra
fed19e3fb5
Added get_system_mac support for cisco-8000 device (#9104)
Added get_system_mac support for cisco-8000 device

Why I did it
This is required to assign unique MACs to namespaces on Backend and Frontend asics
for cisco-8000 platforms

How I did it
Add vendor specific hook in get_system_mac. The MAC address are read from /profile.ini
file

How to verify it
config load_minigraph on a multi-asic system
config save
check mac addresses in DEVICE_METADATA section in each config_db json file
2021-11-04 08:27:55 -07:00
kellyyeh
1067bc8fd3
Fix invalid destination address error (#9143) 2021-11-02 12:36:32 -07:00
Vivek Reddy
05b6207849
[hostcfgd] Missing comment added (#9113)
Missing comment change which is supposed to arrive with #8861 is added here

Signed-off-by: Vivek Reddy Karri <vkarri@nvidia.com>
2021-11-02 07:39:05 -07:00
Stepan Blyshchak
9a143aeb4b
[sonic-utilities] update submodule (#9137)
```
ca728b8 [config] fix interface IPv6 address removal. (#1819)
0665d6f VxLAN Tunnel Counters and Rates implementation (#1748)
80a10dc Fix log_ssd_health hang issue (#1904)
ea4a730 [config][cbf] Added config commands for CBF (#1799)
02ce8d6 [sonic-package-manager] update FEATURE entries on upgrade (#1803)
9f123c0 [generate_dump] remove secrets from dump files (#1886)
3a8ab73 [fwutil] Add `fwutil update all` to support the automatic platform component fw updates (#1242)
776fddf [sonic-package-manager] code style fixes and enhancements (#1802)
f53baac [watermarkstat] Fix for error in processing empty array from couters db (#1810)
0b2536b Generic_upater: Apply JSON change (#1856)
```

Signed-off-by: Stepan Blyschak <stepanb@nvidia.com>
2021-11-02 08:56:08 +02:00
Praveen Chaudhary
021b7dcb04
[sonic-breakout_cfg.yang]: Remove pattern from sonic-breakout_cfg.yang. (#6801)
Changes:
-- Remove pattern from sonic-breakout_cfg.yang, it is redundant.
-- test changes.

Signed-off-by: Praveen Chaudhary <pchaudhary@linkedin.com>
2021-11-01 08:26:27 -07:00
Sudharsan Dhamal Gopalarathnam
9661f10d0c
[swss] Update sub module (#9124)
The submodule update includes the following commits
ac3103a Add missing neighbor resolution for MPLS route programming (#1968)
bfba0ad [vlanmgr]Fix for STATE_DB port check logic (#1980)
9ef2ba4 Update VLAN removal code to work with 5.10 kernel and new
41fb26c Handle setting unknown mux state (#1984)
ac09bde Increase timeout for VS tests (#1988)
da8a43e Check if appl DB exists before deleting (#1983)
553d75a Change tunnel orch order (#1977)
7444e96 Add rekey period in macsec mgr (#1958)
d95823d [Buffermgr]Graceful handling of buffer model change (#1956)
b0aa6a0 EVPN VxLAN enhancement to support P2MP tunnel based programming for L
85bdf54 Fix the option missing in kernel config issue (#1973)
6b15584 Orchagent validates mirror session queue parameter against maximum va
fc9ffb9 [copp] Add ISIS, LDP and micro-BFD trap types to CoPP manager (#1890)
452cbc1 [macsecorch]: Add IPG adjusting for MACsec gearbox model (#1925)

Signed-off-by: Sudharsan Dhamal Gopalarathnam <sudharsand@nvidia.com>
2021-11-01 08:23:11 -07:00
abdosi
919b3e5cdf
[chassis-packet] Fixed BGP Internal Peer template (#9106)
What I did:

Fix the typo in Internal Peer Group template for Packet-based Chassis.
Address Review comments of PR: [chassis-packet] minigraph parsing and BGP template changes #8966
- Static Route Parsing for Host
- Formatting of chassis port_config.ini
2021-10-29 11:02:38 -07:00
Qi Luo
1c07d39cda
[sonic-snmpagent] Update submodule (#9076)
#### Why I did it
Includes below commits
```
c2d4945 2021-09-17 | [snmp] Allow system with no ports in config db run without errors (#221) [Lior Avramov]
fccb21b 2021-08-30 | [RFC1213]: Initialize lag oid map in reinit_data instead of (#232) [SuvarnaMeenakshi]
```
2021-10-29 07:15:00 -07:00
thomas.cappleman@metaswitch.com
aab689e961
[swss-common] Update swss-common submodule (#9073)
[schema] Add EXP to TC map config table (#537)
[CI]: Swap the python code coverage report with the cpp report (#544)
Remove SWIG generated files from coverage report (#542)
Update database defintions for PINs / P4Runtime (#536)
[ci]: Support code coverage (#539)
Fix the option missing in kernel config issue (#541)
Add SRV6 APP tables (#538)
[schema] Rename CBF config tables (#535)
2021-10-28 09:39:34 -07:00
Vivek Reddy
37882942c9
[hostcfgd] Fixed the brief blackout in hostcfgd using SubscriberStateTable (#8861)
#### Why I did it

Fixes https://github.com/Azure/sonic-buildimage/issues/8619

#### How I did it

1) Listening to CFG_DB notifications was migrated from ConfigDBConnector to SubscriberStateTable & Select
2) This change in design helped me to remove `update_all_features_config` which was roughly taking a 5-10 sec time to execute and thus the reason for blackout
3) Edited FeatureHandler, Feature & NtpCfgd classes to suit this design  
4) Added corresponding mocks and UT's

**Changes made to classes other than HostConfigDaemon:**
With the previous design, the initially read data from the config db was applied by using hardcoded methods even before the config_db.listen() was called. For Eg: `update_all_features_config` for FeatureHandler and load() named methods for NtpCfgd etc

But with this design, since the existing data is read and given out as a notification by SubscriberStateTable, i've pretty much removed these hardcoded methods. Thus changes made to these class will be around adapting them to the new design and no change in the actual functionality .


#### How to verify it

UT's:
```
tests/determine-reboot-cause_test.py .........                                                                                                                                                                                        [ 29%]
tests/procdockerstatsd_test.py .                                                                                                                                                                                                      [ 32%]
tests/caclmgrd/caclmgrd_dhcp_test.py ......                                                                                                                                                                                           [ 51%]
tests/hostcfgd/hostcfgd_radius_test.py ..                                                                                                                                                                                             [ 58%]
tests/hostcfgd/hostcfgd_test.py .............                                                                                                                                                                                         [100%]
```
Verified manually, 

```
Sep 10 22:53:25.662621 sonic INFO systemd[1]: hostcfgd.service: Succeeded.
Sep 10 22:55:04.127719 sonic INFO /hostcfgd: ConfigDB connect success
Sep 10 22:55:04.128108 sonic INFO /hostcfgd: KdumpCfg init ...
Sep 10 22:55:04.148819 sonic INFO /hostcfgd: Waiting for systemctl to finish initialization
Sep 10 22:55:04.163452 sonic INFO /hostcfgd: systemctl has finished initialization -- proceeding ...
Sep 10 22:55:04.163834 sonic INFO /hostcfgd: Kdump handler...
Sep 10 22:55:04.164019 sonic INFO /hostcfgd: Kdump global configuration update
Sep 10 22:55:04.758784 sonic INFO hostcfgd[184471]: kdump is already disabled
Sep 10 22:55:04.758876 sonic INFO hostcfgd[184471]: Kdump is already disabled
Sep 10 22:55:05.182021 sonic INFO hostcfgd[184511]: Kdump configuration has been updated in the startup configuration
Sep 10 22:55:05.596919 sonic INFO hostcfgd[184528]: Kdump configuration has been updated in the startup configuration
Sep 10 22:55:06.140627 sonic INFO /hostcfgd: Feature nat is stopped and disabled
Sep 10 22:55:06.642629 sonic INFO /hostcfgd: Feature telemetry is enabled and started
Sep 10 22:55:07.101297 sonic INFO /hostcfgd: Feature pmon is enabled and started
Sep 10 22:55:07.554366 sonic INFO /hostcfgd: Feature database is enabled and started
Sep 10 22:55:08.009329 sonic INFO /hostcfgd: Feature mgmt-framework is enabled and started
Sep 10 22:55:08.394952 sonic INFO /hostcfgd: Feature macsec is stopped and disabled
Sep 10 22:55:08.782853 sonic INFO /hostcfgd: Feature snmp is enabled and started
Sep 10 22:55:09.205381 sonic INFO /hostcfgd: Feature teamd is enabled and started
Sep 10 22:55:09.224877 sonic INFO /hostcfgd: Feature what-just-happened is enabled and started
Sep 10 22:55:09.627929 sonic INFO /hostcfgd: Feature lldp is enabled and started
Sep 10 22:55:10.086993 sonic INFO /hostcfgd: Feature swss is enabled and started
Sep 10 22:55:10.170312 sonic INFO /hostcfgd: cmd - service aaastatsd stop
Sep 10 22:55:11.012236 sonic INFO /hostcfgd: cmd - service aaastatsd stop
Sep 10 22:55:12.225946 sonic INFO /hostcfgd: Feature bgp is enabled and started
Sep 10 22:55:12.712792 sonic INFO /hostcfgd: Feature dhcp_relay is enabled and started
Sep 10 22:55:13.166656 sonic INFO /hostcfgd: Feature sflow is stopped and disabled
Sep 10 22:55:13.593639 sonic INFO /hostcfgd: Feature radv is enabled and started
Sep 10 22:55:14.034106 sonic INFO /hostcfgd: Feature syncd is enabled and started
Sep 10 22:55:14.113064 sonic INFO /hostcfgd: cmd - service aaastatsd stop
Sep 10 22:55:14.863601 sonic INFO /hostcfgd: RADIUS_SERVER update: key: 10.10.10.1, op: SET, data: {'auth_type': 'pap', 'passkey': 'p*****', 'retransmit': '1', 'timeout': '1'}
Sep 10 22:55:14.938605 sonic INFO /hostcfgd: cmd - service aaastatsd stop
Sep 10 22:55:15.667545 sonic INFO /hostcfgd: RADIUS_SERVER update: key: 10.10.10.3, op: SET, data: {'auth_type': 'chap', 'passkey': 'p*****', 'retransmit': '2', 'timeout': '2'}
Sep 10 22:55:15.667801 sonic INFO /hostcfgd: RADIUS (NAS) IP change - key:eth0, current global info {}
Sep 10 22:55:15.746531 sonic INFO /hostcfgd: cmd - service aaastatsd stop
Sep 10 23:04:47.435340 sonic INFO /hostcfgd: ntp server update key 0.debian.pool.ntp.org
Sep 10 23:04:47.435661 sonic INFO /hostcfgd: ntp server update, restarting ntp-config, ntp servers configured {'0.debian.pool.ntp.org'}
Sep 10 23:04:47.866394 sonic INFO /hostcfgd: NTP GLOBAL Update
Sep 10 23:04:47.866557 sonic INFO /hostcfgd: ntp global update for source intf old {''} new {'eth0', 'Loopback0'}, restarting ntp-config
Sep 10 23:16:25.157600 sonic INFO /hostcfgd: Running cmd: 'sudo systemctl unmask sflow.service'
Sep 10 23:16:25.178472 sonic INFO hostcfgd[192106]: Removed /etc/systemd/system/sflow.service.
Sep 10 23:16:25.582018 sonic INFO /hostcfgd: Running cmd: 'sudo systemctl enable sflow.service'
Sep 10 23:16:25.604534 sonic INFO hostcfgd[192123]: Created symlink /etc/systemd/system/sonic.target.wants/sflow.service → /lib/systemd/system/sflow.service.
Sep 10 23:16:26.029416 sonic INFO /hostcfgd: Running cmd: 'sudo systemctl start sflow.service'
Sep 10 23:16:26.691927 sonic INFO /hostcfgd: Feature sflow is enabled and started
```
2021-10-28 07:18:07 -07:00
Neetha John
d35b50b116
[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-27 09:27:18 -07:00
Qi Luo
4bda0a921f
[build] Use pip to install setup.py dependency instead of python setup.py install (#8997)
#### Why I did it
Fix a recent build error introduced by a pre-release redis-py. This is a general issue because `python setup.py install` (ie `easy_instal`) does not ignore pre-release versions. The fix is suggested by https://github.com/pypa/setuptools/issues/855#issuecomment-583803959
2021-10-26 21:12:45 -07:00
jingwenxie
b0c73d9a73
[submodule] Update submodule for sonic-utilities (#9051)
8ea834b [sonic_installer] Change sonic_installer check ASIC mismatch by platforms list (#1836)
9017d99 Fix the option missing in kernel config issue (#1888)
6595ad4 [mlag] fix log print sequence (#1730)
e600e1c CLI command to load config in Yang format (#1781)
00948d0 Fix the target db version of portchannel-key test (#1842)
6412fea [sonic-package-manager] remove make_python_identifier (#1801)
f738818 [sonic-package-manager] stop service explicitelly before uninstalling package (#1805)
d8ee5e9 Remove exec from platform_reboot_plugin call to handle any hang issue. (#1879)
827fcee [chassis][routecheck]filter out the chassis internal interfaces (#1798)
4d732c6 [generic_config_updater] Logging (#1864)
25bb184 [config]: Add loopback interfaces to interface name checker (#1869)
c950a55 Validate input of config mirror_session add (#1825)
9ab20fd [show][config] fix the muxcable commands for interface naming mode (#1862)
476b3a4 [multi-asic][cli][chassis-db] Avoid connecting to chassis db for cli commands executed from linecard (#1707)
2021-10-26 15:09:24 +08:00
Ze Gan
d051bc4eb7
Update wpa supplicant (#8998)
Signed-off-by: Ze Gan <ganze718@gmail.com>

986a835153b3df3a37492fbd3a83fc8e38a40c10 Proactively rekey https://github.com/Azure/sonic-wpa-supplicant/pull/36
b84dd21ac7b76686caf53f2e9a2c8eb80519ab31 Fix azurepieline download sonic swss common deb pakcage https://github.com/Azure/sonic-wpa-supplicant/pull/37
66002de9d5e3165ccdbed40451db86ae0a8b3944 [macsec_sonic] driver support for macsec_include_sci https://github.com/Azure/sonic-wpa-supplicant/pull/35
dae8f59cb54c90bc9011bd675806a75dd0808d27 MACsec XPN changes https://github.com/Azure/sonic-wpa-supplicant/pull/34
c2271b2879ed157718edb51e842a3e33debeab7f Move SSCI from SC to SA and change packet number field name to adapt sai 1.7.1 https://github.com/Azure/sonic-wpa-supplicant/pull/26
1bbc8f1ef463dd21428ce80b72da107f3bd2f3f0 Fix for CP state machine issues https://github.com/Azure/sonic-wpa-supplicant/pull/33
2021-10-25 10:14:29 +08:00
vdahiya12
bb9c36c2a3
[sonic-platform-common] submodule update (#9022)
8bb9c5a (HEAD -> master, origin/master, origin/HEAD) Add retry reading/setting mux status to simulated y-cable driver (#221)
2ebd786 [sfp-refactor] Add initial support for SFF-8636 in sonic_xcvr (#218)
221fb8a Fix QSFP-DD power class mask (#212)
4598d40 [Y-Cable][Broadcom] upgrade to support Broadcom Y-Cable API to release 1.2 (#217)
0fdd198 [sfp-refactor] Add initial support for SFF-8436 in sonic_xcvr (#215)
a09f5a3 [sfp-refactor] Add new sonic_xcvr package for common transceiver logic (#201)
7ca4f51 Update SFP index definition (#214)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
2021-10-24 09:06:57 -07:00
vmittal-msft
8b5f33dbb7
[sonic-sairedis submodule] Update SAI header to ver 1.9.1 for MLNX SDK/SAI (#9012)
* Updated sonic-sairedis to point to SAI 1.9.1 and MLNX SAI to 1.19.5(API v1.9.1)
2021-10-22 13:49:55 -07:00
kellyyeh
ddfaa1d61f
[dhcp_relay] fix data type in dhcp6relay, add protection in packet data parsing (#9036) 2021-10-21 23:00:37 -07:00
liuh-80
5b5f3f06f0
[Bash] Fix bash build break when re-build bash issue. (#9027)
This pull request will fix bash build break issue when re-build bash.

#### Why I did it
    src/bash project using quilt to manage patches, and quilt can't apply patch correctly when cache folder '.pc' is not clean.

#### How I did it
    Add command in make file to remove quilt cache folder before apply patches.

#### How to verify it
    Re-build bash target target/debs/buster/bash_5.1-2_amd64.deb to validate this fix work.
    Pass all UT.


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

#### Description for the changelog
    Fix bash build break issue when re-build bash.

#### A picture of a cute animal (not mandatory but encouraged)
2021-10-22 10:29:12 +08:00
Qi Luo
12b8cacaa8
[devices]: Fix unit test script in order to run stretch python 3.5.3 (#9030)
It is required by stretch/sonic-device-data_1.0-1_all.deb, which is required by docker-sonic-mgmt.gz.
Stretch distribution has old Python 3.5.3.

scandir.close() is new in Python version 3.6.
ref: https://docs.python.org/3/library/os.html#os.scandir.close
2021-10-21 18:55:41 -07:00
Saikrishna Arcot
c1d5e0682f
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-21 18:45:00 -07:00
Saikrishna Arcot
861e87812d
dhcp6relay: Save the dbgsym package into the target folder (#9013)
This makes it possible to install the debug symbols if needed. Also install
the package into the debug version of sonic-dhcp-relay container.

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2021-10-21 13:24:33 -07:00
shlomibitton
60e424e3be
Fix delay type from boot instead of unit activation (#8895)
Why I did it
With current code the delay will take place even if simple 'config reload' command executed and this is not desired.
This delay should be used only when fast-rebooting.

How I did it
Change the type of delay to OnBootSec instead of OnActiveSec.

How to verify it
Fast-reboot with this PR and observe the delay.
Run 'config-reload' command and observe no delay is running.
2021-10-20 16:08:36 -07:00
kellyyeh
14aca812e6
Fix dhcpmon bugs (#9008)
* Exclude incrementing on aggregate device if packet received on mgmt interface

* Fix DHCPv6 header offset calculation
2021-10-19 16:15:21 -07:00
ohu1
459d3d1f55
SONiC QoS MAPs and PORT_QOS_MAP Yang (#7375)
Why I did it
Created SONiC Yang model for the following QOS MAPs and PORT QOS MAP:
DSCP_TO_TC_MAP
DOT1P_TO_TC_MAP
TC_TO_QUEUE_MAP
TC_TO_PRIORITY_GROUP_MAP
MAP_PFC_PRIORITY_TO_QUEUE
PORT_QOS_MAP

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

How to verify it
sonic_yang_models package build
The infra code was modified to handle the nested list definition in YANG and translate it to a flat list in DB.
2021-10-19 12:50:07 -07:00
Saikrishna Arcot
6432b508d9
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-18 20:57:26 -07:00
abdosi
3bb248bd67
[chassis-packet] minigraph parsing and BGP template changes (#8966)
1. Changes for Generation LC-Graph for packet-based chassis.
2. Added Support Ipv6 Peering on Loopback4096 for voq also
3. Updated asic topology yml files to be offset of slot
4. Made slot_num to take string slot<number> instead of number
5. Consolidated template_dpg_voq_asic.j2 into dpg_asic.j2
6. Remove Loopback4096 from asic topology and parse as dut invertory for
   multi-asic
7. Updated topo_facts parsing for asic topology_
8. Internal BGP Session rename from <VoqChassisInternal> to <ChassisInternal> and take switch_type as value.
Signed-off-by: Abhishek Dosi <abdosi@microsoft.com>
2021-10-18 18:44:24 -07:00
thomas.cappleman@metaswitch.com
c971fa7ff9
[swss, swss-common, sairedis] submodule update (#8996)
Sonic-swss-common:

[schema.h] Add trap flow counter support (#534) (Azure/sonic-swss-common@31f4253)
[schema] Add CBF table names (#525) (Azure/sonic-swss-common@b15e08d)

Sonic-sairedis:

[cbf] Add Class Based Forwarding support (#909) Azure/sonic-sairedis@ecb95a8
[azp] Enable pretty code coverage results xml (#946) Azure/sonic-sairedis@1148d16
[gearbox] startup gbsyncd in sync mode in vSonic (#939) Azure/sonic-sairedis@e59a085
[unittest] Add more Meta tests (#948) Azure/sonic-sairedis@812f7a5
[syncd] Fix SwitchNotifications to be const reference (#945) Azure/sonic-sairedis@5863ed3
[syncd] Refactor syncd request shutdown command line parser (#944) Azure/sonic-sairedis@d598dea
[unittest] Update meta tests (#943) Azure/sonic-sairedis@26b2237
[ci]: Support code diff coverage (#934) Azure/sonic-sairedis@e545b17
Sonic sairedis changes for SAI SRV6 and SAI refpoint update to v1.9.0 (#937) Azure/sonic-sairedis@921cf0b
[sairedis] Fail get/clear api on objects created in init view mode (#930) Azure/sonic-sairedis@362b34e
[vslib]: Remove invalid lane when create ports (#938) Azure/sonic-sairedis@db403f4
[Barefoot] enable bulk api`s in SAI (#927) Azure/sonic-sairedis@6df04d8
[unittest] Add NotificationBfdSessionStateChange tests (#940) Azure/sonic-sairedis@89d639b
[azp] Skip auto generated saimetadata lib code coverage (#935) Azure/sonic-sairedis@40e9c74
Remove tail white spaces Azure/sonic-sairedis@dabd1a7
Bring back pyext in Makefile.am Azure/sonic-sairedis@94d5545
Add RedisChannel tests Azure/sonic-sairedis@e16606a
Add RedisVidIndexGenerator tests Azure/sonic-sairedis@62b8fdd
Add ServerConfig tests Azure/sonic-sairedis@58725df
Add SkipRecordAttrContainer tests Azure/sonic-sairedis@6842d92
Update Switch tests Azure/sonic-sairedis@cd13f49
Add SwitchConfigContainer tests Azure/sonic-sairedis@6fc213d
Add SwitchConfigContainer tests Azure/sonic-sairedis@ee24c0e
Add SwitchContainer tests Azure/sonic-sairedis@e33c6e9
Add ZeroMQChannel tests Azure/sonic-sairedis@bcd1648
Add VirtualObjectIdManager tests Azure/sonic-sairedis@0a2cb2c
[sairedis] Remove legacy allocateSwitchIndex api Azure/sonic-sairedis@16fff7f

Sonic-swss:

[orchagent] Add separate next hop table and orch (#1702) Azure/sonic-swss@f248e26
[portorch]: Skip to create port if the lane set isn't available in ASIC (#1923) Azure/sonic-swss@fd0cafe
fix the type for SAI_BUFFER_PROFILE_ATTR_BUFFER_SIZE (#1942) Azure/sonic-swss@ef6b5d4
[cfgmgr] Fix for STATE_DB Port check (#1936) Azure/sonic-swss@b592ad7
2021-10-18 11:46:58 -07:00
Ashok Daparthi-Dell
a99d78dedb
[Yang model] SONiC QOS Scheduler, WRED, Queue Yangs (#7281) 2021-10-18 10:01:08 -07:00
Tamer Ahmed
56d4c34be7 [linkmgrd] Relocate Linkmgrd to Github
This PR deletes local-to-buildimage linkmgrd and creates new submodule
pointing to github repo of sonic-linkmgrd.

signed-off-by: Tamer Ahmed <tamer.ahmed@microsoft.com>
2021-10-15 09:59:59 -07:00
liuh-80
a4ac69e4f0
[TACACS+]: Extract tacacs support functions into library and fix memory leak issue. (#8659)
This pull request extract tacacs support functions into library to share TACACS config file parse code with other project. Also fix memory leak issue in parse config code.

Why I did it
    To support TACACS per command authorization, we need reuse the TACACS config file parse code in bash plugin project.

How I did it
    Add libtacsupport.pc.in to extract tacacs support functions into library.
    Fix memory leak issue in TACACS config parse code by convert the dynamic memory allocation memory to static memory allocation.

How to verify it
    Pass all current UT.
    Check shared library generated manually.

Which release branch to backport (provide reason below if selected)
    N/A

Description for the changelog
    Extract tacacs support functions into library, this will share TACACS config file parse code with other project.
    Also fix memory leak issue in parse config code.
2021-10-14 10:04:58 +08:00
Xichen96
4654f72f1c
[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-14 08:33:19 +08:00
Dmytro
e8adee2c83
[frrcfgd][bgpcfgd] Add portchannel support (#8911)
* To add portchannel support in frrcfgd and bgpcfgd
* Update is_zero_ip() to handle portchannel name
Signed-off-by: d-dashkov <Dmytro_Dashkov@Jabil.com>
2021-10-12 18:54:37 -07:00
gechiang
f52f97cfa5
[sonic-utilities] Update sonic-utilities submodule to pick set of new fixes (#8947) 2021-10-11 23:07:27 -07:00
liuh-80
7d40384c58
[TACACS+] Add plugin support to bash. (#8660)
This pull request add plugin support library to bash.
    And we will create a TACACS+ plugin for bash in an other PR, which will bring per command authorization feature to bash.

Why I did it
    To support TACACS per command authorization, we check user command before execute it.

How I did it
    Add plugin support to bash.

How to verify it
    UT with CUnit under bash project cover all new code in plugin.c.
    Also pass all current UT.

Which release branch to backport (provide reason below if selected)
    N/A

Description for the changelog
    Add plugin support to bash.
2021-10-11 15:20:51 +08:00
Sumukha Tumkur Vani
32e73b0872
[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-09 15:41:22 -07:00
Qi Luo
add9b651b6
Add platform_asic file to each platform folder in sonic-device-data based package (#8542)
#### Why I did it
Add platform_asic file to each platform folder in sonic-device-data package. The file content will be used as the ground truth of mapping from PLATFORM_STRING to switch ASIC family.

One use case of the mapping is to prevent installing a wrong image, which targets for other ASIC platforms. For example, currently we have several ONIE images naming as sonic-*.bin, it's easy to mistakenly install the wrong image. With this mapping built into image, we could fetch the ONIE platform string, and figure out which ASIC it is using, and check we are installing the correct image.

After this PR merged, each platform vendor has to add one mandatory text file  `device/PLATFORM_VENDOR/PLATFORM_STRING/platform_asic`, with the content of the platform's switch ASIC family.

I will update https://github.com/Azure/SONiC/wiki/Porting-Guide after this PR is merged.

You can get a list of the ASIC platforms by `ls -b platform | cat`. Currently the options are
```
barefoot
broadcom
cavium
centec
centec-arm64
generic
innovium
marvell
marvell-arm64
marvell-armhf
mellanox
nephos
p4
vs
```

Also support
```
broadcom-dnx
```

#### How I did it

#### How to verify it
Test one image on DUT. And check the folders under `/usr/share/sonic/device`
2021-10-08 19:27:48 -07:00
Vaibhav Hemant Dixit
0780aea966
[master] Submodule advance sonic-swss (#8915)
[Submodule advance sonic-swss]
Include below commits to master image:

Cache routes for single nexthop for faster retrieval Azure/sonic-swss#1922
Reduce route count for route perf test (Azure/sonic-swss#1928)
[pytest]: Re-use DVS container when possible (Azure/sonic-swss#1816)
[PORTSYNCD] when no ports on config db on init, continue and set Port… (Azure/sonic-swss#1861)
[gearbox] Add gearbox unit test (Azure/sonic-swss#1920)
Reverted skipped test_buffer_dynamic test cases (Azure/sonic-swss#1937)
Revert "[buffer orch] Bugfix: Don't query counter SAI_BUFFER_POOL_STA… (Azure/sonic-swss#1945)
2021-10-08 17:29:23 -07:00
arlakshm
34267393b3
[yang] Feature yang changes (#7955)
Why I did it
Add yang model for Feature configuration

How I did it
Add feature.yang and unit tests

Signed-off-by: Arvindsrinivasan Lakshmi Narasimhan <arlakshm@microsoft.com>
2021-10-05 15:44:24 -07:00
Praveen Chaudhary
83108d9c9a
[YANG MGMT]: Support Grouping translation in YANG Models. (#8318)
Changes:
 -- pre Process Grouping section from all yang models, so it can be used
from any yang model.
-- add jsondiff in setup.py, it is useful for test debugging in case of
failures.
-- use 'stypes' instead of head.
-- pass config DB table name in _createLeafDict().
-- added test config for grouping.
-- white spaces changes.

Note: Changes are done in the way that we can add support for other
Generic YANG statement easily for translation.

Signed-off-by: Praveen Chaudhary pchaudhary@linkedin.com
2021-09-30 12:53:34 -07:00
Sudharsan Dhamal Gopalarathnam
1e35915dcf
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-09-30 12:45:51 -07:00
Sumukha Tumkur Vani
33e64a4e7e
[RESTAPI] submodule update (#8859)
Rejection of incorrect CIDR addresses while configuring routes.
2021-09-29 15:43:04 -07:00
Sumukha Tumkur Vani
67db126333
Reduce logging level for RESTAPI from trace to info (#8858) 2021-09-29 15:41:47 -07:00
Ashok Daparthi-Dell
6cbdf11e53
SONIC QOS YANG - Remove qos tables field value refernce format (#7752)
Depends on Azure/sonic-utilities#1626
Depends on Azure/sonic-swss#1754

QOS tables in config db used ABNF format i.e "[TABLE_NAME|name] to refer fieldvalue to other qos tables.

Example:
Config DB:
"Ethernet92|3": {
"scheduler": "[SCHEDULER|scheduler.1]",
"wred_profile": "[WRED_PROFILE|AZURE_LOSSLESS]"
},
"Ethernet0|0": {
"profile": "[BUFFER_PROFILE|ingress_lossy_profile]"
},
"Ethernet0": {
"dscp_to_tc_map": "[DSCP_TO_TC_MAP|AZURE]",
"pfc_enable": "3,4",
"pfc_to_queue_map": "[MAP_PFC_PRIORITY_TO_QUEUE|AZURE]",
"tc_to_pg_map": "[TC_TO_PRIORITY_GROUP_MAP|AZURE]",
"tc_to_queue_map": "[TC_TO_QUEUE_MAP|AZURE]"
},

This format is not consistent with other DB schema followed in sonic.
And also this reference in DB is not required, This is taken care by YANG "leafref".

Removed this format from all platform files to consistent with other sonic db schema.
Example:
"Ethernet92|3": {
"scheduler": "scheduler.1",
"wred_profile": "AZURE_LOSSLESS"
},

Dependent pull requests:
#7752 - To modify platfrom files
#7281 - Yang model
Azure/sonic-utilities#1626 - DB migration
Azure/sonic-swss#1754 - swss change to remove ABNF format
2021-09-28 09:21:24 -07:00
Sudharsan Dhamal Gopalarathnam
b2659dcdbc
Handle feature flow when state is always_enabled (#8811)
Why I did it
When feature state is set to always_enabled hostcfgd throws error message
Sep 21 22:30:55.135377 r-leopard-32 ERR /hostcfgd: Unexpected state value 'always_enabled' for feature bgp
Sep 21 22:30:55.420268 r-leopard-32 ERR /hostcfgd: Unexpected state value 'always_enabled' for feature database
Sep 21 22:30:58.672714 r-leopard-32 ERR /hostcfgd: Unexpected state value 'always_enabled' for feature swss
This is due to feature == always_enabled not handled properly.

How I did it
Handled the scenario when feature is always enabled

How to verify it
Restart hostcfgd with feature state configured as always_enabled and check if there are no errors.
Added UT to cover the scenario.
2021-09-28 08:52:03 -07:00
ArthiSivanantham
ada8043ed3
SONiC Yang for Warm Restart (#7698)
Why I did it
SONiC YANG model support for warm restart.

How I did it
Defined warm restart YANG containers and lists based on config-DB schema.

How to verify it
Successful build of the following packages:
make target/python-wheels/sonic_yang_models-1.0-py3-none-any.whl
make target/python-wheels/sonic_yang_mgmt-1.0-py3-none-any.whl

Signed-off-by: Arthi Sivanantham <arthi_sivanantham@dell.com>
2021-09-28 08:51:26 -07:00
Junchao-Mellanox
c770375b3f
[submodule] Update submodule for sonic-utilities (#8752)
0d538d3 [ci]: Support code diff coverage (#1834)
48887d1 [config] support for configuring muxcable to standby mode of operation (#1837)
2088a9a Provide support to install platform extensions (#1578)
c97fe54 Add check_db_integrity script to setup.py (#1828)
c0b9917 [debug dump util] COPP Module Added (#1670)
826311c [techsupport] Removed interactive option for docker commands and Improved Error Reporting (#1723)
ce11545 [config reload] Removed job-mode for sonic.target restart (#1820)
f76f672 [fdbshow]: Fix typo in comment (#1809)
17208a0 [ci]: Support PR coverage (#1806)
c2c2354 fix wrong code indent in sfputil (#1808)
47a9a0f [portconfig] Validate duplicate speed value and interface type value (#1745)
f1086ee [sonic_installer]Add --skip-platform-check option for sonic_installer when image mismatch (#1791)
c007d65 [warm-reboot] Add new preboot health check: verify database integrity (#1785)
41e31e8 Fix PatchApplier init order (#1762)
2416175 [config reload] Fix config reload failure due to sonic.target job cancellation (#1814)
2b12aad [portstat, intfstat] added rates and utilization (#1750)
26e700a [debug dump util] Techsupport addition (#1669)
9f2326e [debug dump util] Base Skeleton and Click Class added (#1668)
2021-09-28 02:52:04 -07:00
Ashok Daparthi-Dell
6c40fe4f44
[Submodule] update for swss (#8839)
*[Submodule] update for swss with following commits:
a3fdaf4 QOS fieldvalue reference ABNF format to string changes ([sonic-platform-daemons] Update submodule #1754)
a8fcadf Add sleep to ensure starting route perf test after the vs is stable ([mellanox]: Update hw-mgmt service with the stop action #1929)
a89d1f8 Fix failing DPB LAG tests ([socat]: build socat with readline #1919)
86b4ede [portsorch] Avoid orchagent crash when set invalid interface types to port (Upgrade azure-keyvault to known compatible version #1906)
025032f [VS] Skip failing test - test_recirc_port ([rsyslog]: use # to separate container and program name in syslog msg #1918)
d338bd0 [pfcwd] Fix the polling interval time granularity (Download newer version (8.23.0-2) of rsyslog from jessie-backports in hopes of eliminating memory leaks #1912)
14c937e Enabling copp tests ([Mellanox] Update hw-management service config #1914)
fbdcaae [teammgrd]: Improve LAGs cleanup on shutdown: send SIGTERM directly to PID. ([docker-syncd-mlnx] add new mlnx-sfpd daemon to docker-syncd-mlnx #1841)
002bb1d [tlm teamd] Add retry mechanism before logging the ERR in get_dumps. ([py-swss/config] config load-minigraph failure leaves database in wrong state #1629)
57d21e7 [pfcwd] Convert polling interval from ms to us in LUA scripts ([interfaces]: Move IP/MTU information from interfaces file into database #1908)
d01524d [fgnhgorch] Enable packet flow when no FG ECMP neighbors are resolved (Update arista driver submodule to includes interrupt handling changes #1900)
8cf355d Mux state order change ([submodule] update snmpagent and dbsyncd, extending/implementing ieee802.1ab, rfc3433, rfc2737 MIBs #1902)
2021-09-27 18:20:08 -07:00
arunlk-dell
b0b0ba828a
DellEMC: N3248PXE Initial platform commit (#8562)
Why I did it
Added support for the device N3248PXE

How I did it
Implemented the support for the platform N3248PXE
n3248pxe_unit_test_log.txt

Switch Vendor: DellEMC
* Switch SKU: N3248PXE
* ASIC Vendor: Broadcom
* SONiC Image: sonic-broadcom.bin

How to verify it
Verified the show platform commands
2021-09-25 15:35:16 -07:00
arunlk-dell
8325500560
DellEMC: N3248TE Initial platform commit (#8809)
Why I did it
Added support for the device N3248TE

How I did it
Implemented the support for the platform N3248TE

Switch Vendor: DellEMC

Switch SKU: N3248TE
ASIC Vendor: Broadcom
SONiC Image: sonic-broadcom.bin
How to verify it
Verified the show platform commands
2021-09-23 20:47:32 -07:00
Junhua Zhai
27aef53054
[submodule] update sonic-swss-common to latest (#8828)
The following fixes are included:
b502743 [gearbox] Since ASIC_DB, as well its COUNTER_DB, FLEX_COUNTER_DB use separator ':', GB_ASIC_DB
        should use same ((Azure/sonic-swss-common#532)
81182ec Added support for setting TTL on a Table managed entry. ((Azure/sonic-swss-common#526)
2021-09-24 10:25:27 +08:00
bingwang-ms
1d7e82b96d
Update minigraph parser to support type MIRROR_DSCP (#8819)
* Update minigraph parser to support MIRROR_DSCP

Signed-off-by: bingwang <bingwang@microsoft.com>
2021-09-23 16:18:56 +08:00
kellyyeh
bc06c6fcb5
Incorporate DHCPv6 Relay Agent into dhcp-relay docker (#8321) 2021-09-22 16:05:03 -07:00
Sumukha Tumkur Vani
34dddb8ce4
[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-21 10:13:48 -07:00
AmitKaushik7
4049067534
[yang]: Adding yang model for PFC watch dog parameters (#7839)
Added sonic-pfcwd.yang file that defines the yang model for PFC watch dog parameters
sonic-pfcwd.yang is required for configuring action, detection_time, restoration time of PFC watchdog on the interface port.
2021-09-20 14:58:30 -07:00
Prince George
f1dac178f0
Update sonic-platform-daemon submodule (#8788)
Signed-off-by: Prince George <prgeor@microsoft.com>
2021-09-18 12:31:05 +05:30
Sudharsan Dhamal Gopalarathnam
508b6497a1
Advancing sonic-sairedis submodule pointer (#8775) 2021-09-16 20:04:46 +02:00
Lior Avramov
2662a19eec
[sonic-py-swsssdk]: submodule update (#8757)
2cd6236 [voq][chassis] Fix for issue in chassis redis server connection check (#110)
9da577d [port_util] Fix issue in function get_interface_oid_map (#114)
740a44c [port_util] Allow system without ports in config db run without errors (#109)
d07682e Merge pull request #111 from xumia/azp-coverage
482cac2 [Ethernet-IB][index] Modifed the port_util to support the VoQ Inband Port (#113)
69eac92 Support azp diff coverage

Signed-off-by: liora <liora@nvidia.com>
2021-09-15 14:00:43 -07:00
vganesan-nokia
1863e1fa26
[multi-asic][cli][chassis-db] Avoid connecting to chassis db when cli commands are executed from linecards (#8065)
* [multi-asic][cli][chassis-db] Avoiding connecting to chassis db

Currently, for all the cli commands, we connect to all databases
mentioned in the database_config.json. The database_config.json also
includes the databases from chassis redis server from supervisor card.
It is unneccessary to connect to databases from chassis redis server
when cli commands are executed form linecard. But we need to allow
connection to chassis databases when the cli commands are executed from
supervisor card.

The changes in this PR fixes this problem. This PR requires that
asic.conf in supervisor card includes VOQ_SUPERVISOR with value 1 to
indentify the supervisor card. The connect_to_all_dbs_for_ns() is
changed to skip chassis databases form the list of collected databases
if the card is not supervisor card.
2021-09-14 11:04:19 -07:00
Ying Xie
66ca6d33c7
Revert "Revert "[hostcfgd] Delay hostcfgd and aaastatsd for faster boot time (#7965)" (#8705)" (#8724)
This reverts commit f4dea87cf9.
2021-09-14 07:57:43 -07:00
Sudharsan Dhamal Gopalarathnam
b423b17221
[DPB]Removing default admin status initialization in DPB flow while loading minigraph (#8711)
To Fix #8697 . The config load_minigraph initializes 'admin_status' to up when platform.json has DPB configs. This doesn't happen when using port_config.ini
The update minigraph has logic to initialize only the ports whose neighbors are defined or those belonging to portchannel
However, a change was introduced to have default admin status to be 'up' in portconfig.py when the minigraph was using platform.json

This will lead to sanity check failure in sonic-mgmt and thus no test cases could be run
2021-09-13 09:01:29 -07:00
Guohan Lu
1652613ad7
[submodule]: retreat sonic-swss submodule (#8732)
Fix #8722

retreat two commits which cause warm reboot regression

* eb79ca4 2021-09-01 | [pbh]: Add PBH OA (#1782) [Nazarii Hnydyn]
* 3d6b1f0 2021-08-31 | [buffer orch] Bugfix: Don't query counter SAI_BUFFER_POOL_STAT_XOFF_ROOM_WATERMARK_BYTES on a pool where it is not supported (#1857) [Stephen Sun]

Signed-off-by: Guohan Lu <lguohan@gmail.com>
2021-09-10 20:17:15 -07:00
Nazarii Hnydyn
f8949547d7
[submodule]: Advance sonic-sairedis. (#8706)
Signed-off-by: Nazarii Hnydyn <nazariig@nvidia.com>
2021-09-10 11:29:37 +02:00
Sudharsan Dhamal Gopalarathnam
8171bfefc8
Enhancing vs support to mock based on platform (#8685) 2021-09-09 20:03:22 +02:00
pettershao-ragilenetworks
8514a484cd
[platform/ragile] support ra-b6910-64c (#7950)
What I did it
Add new platform x86_64-ragile_ra-b6910-64c-r0 (Tomahawk 3)
ASIC Vendor: Broadcom
Switch ASIC: Tomahawk 3
Port Config: 64x100G

-How I did it
Provide device and platform related files.

-How to verify it
show platform fan
show platform ssdhealth
show platform psustatus
show platform summary
show platform syseeprom
show platform temperature
show interface status
2021-09-09 10:49:37 -07:00
Longxiang Lyu
7e02f7b4ba
[submodule] advance sonic-utilities (#8695)
To include sonic_installer swap setup changes

171eb4f [sonic_installer] Add swap setup support (#1787)
6483b0b QOS fieldvalue refernce ABNF format to string (#1626)
8d16eb5 [Fast-reboot] Set flex counters delay indicator to prevent flex counters enablement after fast-reboot (#1768)
1bc24ca [portstat pfcstat] Unify the packet number format in the output of portstat and pfcstat in all cases (#1755)
d7900dd [config][generic-update] Implementing patch sorting (2nd attempt) (#1794)
7ed9a91 [show] Allow system with no ports in config db run without errors (#1754)

Signed-off-by: Longxiang Lyu <lolv@microsoft.com>
2021-09-09 07:25:14 -07:00
Guohan Lu
f4dea87cf9
Revert "[hostcfgd] Delay hostcfgd and aaastatsd for faster boot time (#7965)" (#8705)
cause regression on the kvm testing

This reverts commit 76d5223c9a.
2021-09-08 08:45:16 -07:00
Qi Luo
74134c0bb6
[sonic-utilities] submodule update (#8658)
Includes commits
```
d7900dd 2021-09-01 | [config][generic-update] Implementing patch sorting (2nd attempt) (#1794) [Mohamed Ghoneim]
7ed9a91 2021-09-01 | [show] Allow system with no ports in config db run without errors (#1754) [Lior Avramov]
```
2021-09-08 04:09:45 -07:00
Ann Pokora
7c9be314e2
[yang]: sonic-yang-models updates for MPLS (#7881)
SONiC YANG model support in buildimage for MPLS:

sonic-yang-model support for MPLS enable/disable
sonic-yang-model support for MPLS CRM thresholds
2021-09-02 10:32:27 -07:00
Nazarii Hnydyn
124e6d42e6
[submodule]: Advance sonic-swss. (#8652)
Commits on Aug 17, 2021
[VS Test] Skip flaky tests (#1875) f501e1c
Skipping another flaky test temporarily (#1878) 15a014b

Commits on Aug 18, 2021
Change rif_rates.lua and port_rates.lua scripts to calculate rates co… ed867b1

Commits on Aug 20, 2021
[ACL] Match TCP protocol while matching TCP_FLAG (#1854) 756471a

Commits on Aug 23, 2021
[macsecmgrd] MACsec XPN changes (#1821) 4bf3d61

Commits on Aug 24, 2021
[ci]: fix artifacts download from swss-common and sairedis (#1882) 12f0ee7

Commits on Aug 26, 2021
[gearbox] Set port speed to SAI_PORT_ATTR_SPEED for gearbox (#1785) fc6cd81
[fpmsyncd][MPLS] updates for MPLS plus AZP libnl3 install (#1871) 76e3406

Commits on Aug 27, 2021
Fix vs test failure in test_buffer_traditional (#1881) db9ca83

Commits on Aug 31, 2021
[buffer orch] Bugfix: Don't query counter SAI_BUFFER_POOL_STAT_XOFF_R… 3d6b1f0

Commits on Sep 01, 2021
[pbh]: Add PBH OA (#1782) eb79ca4 

Signed-off-by: Nazarii Hnydyn <nazariig@nvidia.com>
2021-09-02 01:04:12 -07:00
shlomibitton
112fda7877
[Flex Counters] Reset flex counters delay flag on config DB when enable_counters script is called (#8500)
#### Why I did it
Reset flex counters delay flag on config DB when enable_counters script is called to allow enablement of flex counters in orchagent.

#### How I did it
Push to config DB 'false' value for delay indication when enable_counters script is called before enabling the counters.

#### How to verify it
Observe counters are created when enable_counters script is called.
2021-09-01 21:17:36 -07:00
Nazarii Hnydyn
b7cad1c569
[submodule]: Advance sonic-utilities (#8653)
Commits on Aug 25, 2021
[show][config] cli refactor for muxcable with abstract class implemen… 37039f5
[voq][chassis] VOQ cli show commands implementation (#1689) 7ebb2f7
[PBH] CLI for Policy Based Hashing (#1701) 6fd0675

Commits on Aug 26, 2021
[config reload] Call systemctl reset-failed for snmp,telemetry,mgmt-f… f5ce87a

Commits on Aug 27, 2021
Fix logic in RIF counters print (#1732) 83309c6

Commits on Aug 30, 2021
[ecnconfig] Fix exception seen during display and add unit tests (#1784) 3e8626e

Commits on Aug 31, 2021
[debug dump util] Module implementation Logic and Port Module (#1667) 720b650
2021-09-01 19:11:17 -07:00
Mohamed Ghoneim
3fa8c2595f
[yang-models] Removing sonic-acl import from sonic-nat.yang (#8632)
#### Why I did it
Fixing issue [[sonic-utilities] Unit test failed when building sonic-utilities #1761](https://github.com/Azure/sonic-utilities/issues/1761)

Importing `sonic-acl` caused getting references by `backlinks()` to break, 

#### How I did it
solution is to comment out the importing statement as it is not used anyway.

#### How to verify it
Ran sonic-utilities unit-tests locally after the fix, and all passed.
2021-09-01 07:29:17 -07:00
Myron Sosyak
0ab28bfd3d
Add thrift 0.13.0 (#8307)
#### Why I did it
To bump thrift version to 0.13.0, to fix some dependencies issues.

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

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

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

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

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

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

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

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

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

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

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

Fixes #8512.

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

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

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

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

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

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

#### Why I did it

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

#### How I did it

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

#### How to verify it

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

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

This change makes the template match PREFIX_SET and the documentation.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

#### How I did it

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

#### How to verify it

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

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

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

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

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

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

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

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

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

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

Fix #7488

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

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

#### How I did it

Add the support for monitoring DHCPv6 packets.

#### How to verify it

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

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

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

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

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

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

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

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

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

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

FRR Patches:

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

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

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

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

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

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

This makes existing logic skip enabling the service.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

#### How I did it

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

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

#### How to verify it

config portchannel add PortChannel0004 --min-links 1024

Command should be accepted.

show interfaces portchannel

Output should show PortChannel0004, no errors on CLI.

config portchannel add PortChannel0005 --min-links 1025

Command should be rejected

show interfaces portchannel

Output should not show PortChannel0005 , no errors on CLI.

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


#### Description for the changelog

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Reverts #7469

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

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

- Why I did it

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

- How I did it

hostcfgd configures 'Restart=' value for systemd service.

- How to verify it

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

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

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

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

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

#### How I did it

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

How I did it

NO CHANGE to existing make commands

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Recently, the build started failing with messages like

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

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

#### How I did it

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

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

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

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

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

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

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

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

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

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

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

Add unit tests

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

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

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

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

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

* Per-switching silicon Common config for Broadcom Supported Platforms

* Per-switching silicon Common config for Broadcom Supported Platforms

* Remove property readme

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

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

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

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

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

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

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

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

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

* Resolved review comments.

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

* Merged strtok_r statements in single command.

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

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

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

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

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

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

#### How I did it

update the submodule pointer to including the new commits

#### How to verify it

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

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

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

Add the following configuration to config_db.json

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

Run sudo config reload -y

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

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

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

Fixes #7531

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

How I did it
Listen to VLAN_SUB_INTERFACE table in config db

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* Add templates and code to support VoQ chassis iBGP peers

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

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

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

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

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

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

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

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

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

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

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

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

#### How I did it

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

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

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

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

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

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

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

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

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

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

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

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

#### How I did it

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

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

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

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

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

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

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

Fixes #6343

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

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

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

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

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

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

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

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

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

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

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

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

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

New tests can be added in new json files.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-27 11:54:38 -07:00
maksymbelei95
2ef0eb8c08
[Submodule update] - sonic-utilities (#7144)
* 1ee04fb (HEAD -> master, origin/master, origin/HEAD) Modified the tests to use mock functionality of get_child_port function under portconfig utility (#1464)
* 99d251f Enable PFCWD only on ports where PFC is enabled (#1508)
* eb7945f Warmboot script improvements - timeout exec, disable swss autorestart, remove trap (#1495)
* c7d4947 [show] Fix int status of LAGs, configured as Vlan members (#1478)

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Signed-off-by: Danny Allen <daall@microsoft.com>
2021-02-28 15:02:31 -08:00
abdosi
30b6668b7d
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-02-26 17:05:15 -08:00
Qi Luo
833584eff9
[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-02-26 10:41:49 -08:00
Sangita Maity
18263c99dd
[DPB|master] Update Dynamic Port Breakout Logic for flexible alias support a… (#6831)
To fix [DPB| wrong aliases for interfaces](https://github.com/Azure/sonic-buildimage/issues/6024) issue, implimented flexible alias support [design doc](https://github.com/Azure/SONiC/pull/749)

> [[dpb|config] Fix the validation logic of breakout mode](https://github.com/Azure/sonic-utilities/pull/1440) depends on this

#### How I did it

1. Removed `"alias_at_lanes"` from port-configuration file(i.e. platfrom.json) 
2. Added dictionary to "breakout_modes" values. This defines the breakout modes available on the platform for this parent port, and it maps to the alias list. The alias list presents the alias names for individual ports in order under this breakout mode.
```
{
    "interfaces": {
        "Ethernet0": {
            "index": "1,1,1,1",
            "lanes": "0,1,2,3",
            "breakout_modes": {
                "1x100G[40G]": ["Eth1"],
                "2x50G": ["Eth1/1", "Eth1/2"],
                "4x25G[10G]": ["Eth1/1", "Eth1/2", "Eth1/3", "Eth1/4"],
                "2x25G(2)+1x50G(2)": ["Eth1/1", "Eth1/2", "Eth1/3"],
                "1x50G(2)+2x25G(2)": ["Eth1/1", "Eth1/2", "Eth1/3"]
            }
        }
}
```
#### How to verify it
`config interface breakout`

Signed-off-by: Sangita Maity <samaity@linkedin.com>
2021-02-26 00:13:33 -08:00
abdosi
a520cecb44
[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-02-25 23:15:02 -08:00
abdosi
c66cbc12d3
[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-02-25 09:39:36 -08:00
Stepan Blyshchak
e179ec2fae
[services] introduce sonic.target (#5705)
- Why I did it
Group all SONiC services together and able to manage them together. Will be used in config reload command as much simpler and generic way to restart services.

- How I did it
Add services to sonic.target

- How to verify it
Together with Azure/sonic-utilities#1199
config reload -y

Signed-off-by: Stepan Blyshchak <stepanb@nvidia.com>
2021-02-25 14:26:24 +02:00
pra-moh
2a339faf7e
[submodule]: update telemetry submodule (#6810)
- Adding instructions to build telemetry server/go client inside docker (#68)
- Add RBAC, gNOI, API Versioning and Bulk Set operations. (#61) …
- Support NonTLS option for testing purpose only. (#67) …
- Oc gnmi examples (#62) …
2021-02-24 17:22:54 -08:00
Joe LeVeque
72c420320f
Use 'importlib' module in lieu of deprecated 'imp' module (#6832)
Migrate from using the `imp` module to using the `importlib` module. As of Python 3, the `imp` module has been deprecated in favor of the `importlib` module.
2021-02-24 16:41:03 -08:00
Dmytro Shevchuk
3abd2167bc
[yang] update crm yang model for dynamic port breakout (#6395)
- Why I did it
Fix DPB crash caused of new entries in config db.
Details: #6331

- How I did it
Updated crm yang model
2021-02-24 20:48:43 +02:00