Commit Graph

2404 Commits

Author SHA1 Message Date
mssonicbld
da80c83842
[build] Fix dpkg front lock issue with apt-get (#12332) (#12349)
Co-authored-by: Liu Shilong <shilongliu@microsoft.com>
2022-10-20 10:26:58 +08:00
Ying Xie
7d33b25748
[202205][linkmgrd][utilities][swss] advance submodule head (#12292)
linkmgrd:
* a5ac7f6 2022-10-05 | [Active-Active] Post link prober stats to state db  (#140) (HEAD -> 202205, github/202205) [Jing Zhang]
* f4b0e53 2022-10-05 | [Active-Active] Retry config mux mode standby (#139) [Jing Zhang]

utilities:
* a255838 2022-10-04 | [minigraph] new workflow for golden path (#2396) (HEAD -> 202205, github/202205) [jingwenxie]
* 99425a8 2022-10-03 | [actions] Support Semgrep by Github Actions (#2417) [Mai Bui]
* f41e4d1 2022-09-30 | Fix for show vxlan tunnel command display issue #11902 (#2391) [Senthil Bhava]
* e1d827e 2022-09-29 | [VxLAN]Fix Vxlan delete command to throw error when there are references (#2404) [Sudharsan Dhamal Gopalarathnam]
* d77acf8 2022-09-28 | [doc] add documentation on automatic techsupport based on memory (#2411) [Stepan Blyshchak]
* 2cfc75a 2022-09-28 | [doc] update "config feature" section with "--block" option (#2409) [Stepan Blyshchak]
* 9dc8471 2022-09-28 | [Vxlanmgrd] [CPA] Update the vxlan_tunnel name len to be under IFNAMIZ to overcome netdev creation failure (#2398) [Vivek]
* 342589e 2022-10-03 | Added cisco config platform commands (#2242) (#2418) [yucgu]

swss:
* 9d9f395 2022-10-04 | [intfmgr]: Enable `accept_untracked_na` kernel param (#2436) (HEAD -> 202205, github/202205) [Lawrence Lee]
* 6b6d25d 2022-10-04 |  [orchdaemon]: Fixed sairedis record file rotation (#2480) [Bryan Crossland]

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

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-10-06 16:59:11 -07:00
Stepan Blyshchak
06f8b1f98a
[auto-ts] add memory check (#10433) (#12291)
#### Why I did it

To support automatic techsupport invokation in case memory usage is too high.

#### How I did it

Implemented according to https://github.com/Azure/SONiC/pull/939

#### How to verify it

UT, manual test on the switch.

*DEPENDS* on https://github.com/Azure/sonic-utilities/pull/2116
2022-10-06 08:06:46 -07:00
Ying Xie
13d7d8e82d
[202205][linkmgrd][swss][platform-daemon][platform-common] advance submodule head (#12264)
linkmgrd:
* 44f182b 2022-10-03 | [Active-Standby] fix syslog flood caused by `unkown -> standby` switchovers  (#137) (HEAD -> 202205) [Jing Zhang]
* 9284ce1 2022-09-26 | [Active-Active] avoid being stuck in `unknown` after process init (#136) [Jing Zhang]
* 55711d7 2022-09-16 | Install libyang to azure pipeline (#132) [Hua Liu]

swss:
* 2f7da1e 2022-09-30 | [build] add missing package libyang-dev in lgtm.yml (#2475) (HEAD -> 202205, github/202205) [Qi Luo]

platform-daemon:
* 5b96170 2022-09-23 | add support to execute new ycable API's, add datetime field to mux_info (#297) (HEAD -> 202205) [vdahiya12]

platform-common:
* de1bd8e 2022-09-28 | Remove shell=True (#313) (HEAD -> 202205) [Mai Bui]
* 77760bf 2022-09-23 | [credo][ycable] remove mux-toggle inprogress flags for some API's (#311) [vdahiya12]

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

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-10-06 08:03:12 -07:00
Sudharsan Dhamal Gopalarathnam
4e71763576
[202205][submodule]Advance sonic-utilities submodule pointer (#12263)
To get following fixes:

be7da6b [sonic-installer] use host docker startup arguments when running dockerd in chroot (#2179) (#2407)
d112f7c [202205][auto-ts] add memory check (#2116) (#2413)
2022-10-06 11:23:23 +03:00
Ying Xie
76f7d7fa53 Revert "[auto-ts] add memory check (#10433)"
This reverts commit a2cd0f5d4c.
2022-10-04 21:53:45 +00:00
Tal Berlowitz
93e3657e4c Patch ifupdown2 (#9630) (#11548) 2022-10-03 18:59:53 +00:00
Marty Y. Lok
8c9a713de8 [chassis][supervisor] show system-health summary fails on the supervisor card (#10631)
Fix the command "sudo show system-health summary" shows the following error on the supervisor card. Fixes #10630
2022-10-03 18:59:17 +00:00
Stepan Blyshchak
a2cd0f5d4c [auto-ts] add memory check (#10433)
#### Why I did it

To support automatic techsupport invokation in case memory usage is too high.

#### How I did it

Implemented according to https://github.com/Azure/SONiC/pull/939

#### How to verify it

UT, manual test on the switch.

*DEPENDS* on https://github.com/Azure/sonic-utilities/pull/2116
2022-10-03 18:58:38 +00:00
Ying Xie
1667a089d7
[202205][linkmgrd][swss][platform-daemon] advance submodule head (#12186)
linkmgrd:
* a0834e4 2022-09-22 | [Active-Active] server side admin forwarding state sync up (#133) (HEAD -> 202205) [Jing Zhang]
* ea56020 2022-09-21 | Post switchover reasons to STATE DB (#131) [Jing Zhang]

swss:
* d9cbf44 2022-09-24 | [orchagent] Fix issue: ip prefix shall be inited even if VRF/VNET is not ready (#2461) (HEAD -> 202205, github/202205) [Junchao-Mellanox]
* 3dcd6ff 2022-09-24 | [macsec]: Set MTU for MACsec (#2398) (#2466) [Ze Gan]

platform-daemon:
* 48b6239 2022-09-27 | [ycabled] add support for getting grpc secerts via shared file (#298) (HEAD -> 202205) [vdahiya12]

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

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-09-28 07:50:34 -07:00
Sudharsan Dhamal Gopalarathnam
6527570203
[202205][submodule] Update sonic-utilities submodule (#12162)
Update sonic-utilities submodule pointer to include the following:
* 99ed8ea [link-local]Modify RIF check to include link-local enabled interfaces ([#2394](https://github.com/Azure/sonic-utilities/pull/2394))

Signed-off-by: dgsudharsan <sudharsand@nvidia.com>

Signed-off-by: dgsudharsan <sudharsand@nvidia.com>
2022-09-26 07:55:14 -07:00
Dror Prital
9191779b13
remove JINJA2_CACHE (#12155) 2022-09-23 07:20:24 -07:00
Ying Xie
f0d4997023
[202205][linkmgrd][utilities][swss][sairedis][platform-daemon] advance submodule head (#12149)
linkmgrd:
* 05e5f4c 2022-09-20 | [Active-Active] flaky LinkmgrdBootupSequence unit tests (#134) (HEAD -> 202205) [Jing Zhang]
* 16fcadf 2022-09-13 | [active-standby] update warmboot reconciliation logic (#129) [Jing Zhang]
* e656a87 2022-09-09 | [active-active] shutdown link prober when starting as isolated (#130) [Jing Zhang]

uttilities:
yinxi@ying-dev-vm-01:~/src/sonic-202205/src/sonic-utilities$ git hist github/202205..HEAD
* 562188f 2022-09-14 | Use 'default' VRF when VRF name is not provided (#2368) (HEAD -> 202205) [Sumukha Tumkur Vani]
* c50ba4f 2022-09-20 | [minigraph] add option to specify golden path in load_minigraph (#2350) [jingwenxie]
* cec5ab2 2022-09-20 | [GCU]Remove GCU unique lane check for duplicate lanes platforms (#2343) [jingwenxie]
* 8d20771 2022-09-15 | Vnet_route_check Vxlan tunnel route update. (#2281) [siqbal1986]

swss:
* 88371f7 2022-09-21 | [ci] Only when test stage succeeded or succeededwithissues, PR run Gcov (#2460) (HEAD -> 202205) [Liu Shilong]
* c11dbd7 2022-09-15 | [QoS] Enforce drop probability only for colors whose WRED are enabled (#2422) [Stephen Sun]

sairedis:
* 80928dd 2022-09-06 | [lgtm] Add uuid library (#1119) (HEAD -> 202205, github/202205) [Kamil Cudnik]
* c147dd0 2022-09-16 | [202205][vslib]: Add SAI_PORT_ATTR_OPER_SPEED get #1123 [Ze Gan]

platform-daemon:
* 9cf8adf 2022-09-21 | [ycabled] add notification for gRPC connection state transitions to  IDLE/TRANSIENT_FAILURE (#295) (HEAD -> 202205) [vdahiya12]
* 1e07ae3 2022-09-20 | Use get() to fetch default value from dictionary for port admin_status #286 [anamehra]
* 157f483 2022-09-15 | [Xcvrd] Soak duplicate events and process only updated interested events (#285) [Prince George]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-09-22 16:29:18 +03:00
ganglv
a98b34af29 Fix dhcp option buffer issue (#12033)
Why I did it
Current isc-dhcp uses below code to remove DHCP option:
memmove(sp, op, op[1] + 2);
sp += op[1] + 2;

sp points to the option to be stripped, we can call it as option S.
op points to the option after options S, we can call it as option O.
DHCP option is a typical type-length-value structure, the first byte is type, the second byte is length, and remain parts are value.
In this case, option O length is bigger than option S, and more than 2 bytes, after the memmove, we will get this result:

Now Option S and Option O are overwritten, op[1] was the length of Option O, and it's modified after memmove.
But current implementation is still using op[1] as length to update sp (sp+=op[1]+2), so we get the wrong sp.

How I did it
Create patch from https://github.com/isc-projects/dhcp
The new impelementation use mlen to store the length of Option O before memmove, that's how it fixed the bug.
size_t mlen = op[1] + 2;
memmove(sp, op, mlen);
sp += mlen;

How to verify it
I have a PR for sonic-mgmt to cover this issue:
sonic-net/sonic-mgmt#6330

Signed-off-by: Gang Lv ganglv@microsoft.com
2022-09-21 21:18:27 +00:00
Sudharsan Dhamal Gopalarathnam
962349ff77
[202205][submodule] Update sonic-swss submodule (#12137)
Update sonic-swss submodule pointer to include the following:
* 8eea92e [202205][counters] Revert PR #2432 for the buffer queue/pg counters improvement ([#2462](https://github.com/Azure/sonic-swss/pull/2462))
* 5d8636a [202205] Enhance orchagent and buffer manager in error handling (#2414) ([#2449](https://github.com/Azure/sonic-swss/pull/2449))
* aa22237 [Everflow/ERSPAN] Set correct destination port and mac address when the nexthop is updated for ERSPAN mirror destination (#2392) ([#2455](https://github.com/Azure/sonic-swss/pull/2455))
* 04ce7be check state_db for po before sending ARP/ND pkts (#2444) ([#2450](https://github.com/Azure/sonic-swss/pull/2450))
* f0138a2 [portmgr] Fixed the orchagent crash due to late arrival of notif (#2431) ([#2451](https://github.com/Azure/sonic-swss/pull/2451))
* 7cfde48 Change the log messages in addKernelNeigh/Route from ERROR to INFO ([#2437](https://github.com/Azure/sonic-swss/pull/2437))
* 2c5116e [202205][counters] Improve performance by polling only configured ports buffer queue/pg counters ([#2432](https://github.com/Azure/sonic-swss/pull/2432))
2022-09-21 09:32:03 -07:00
Kebo Liu
ff8296ddfe
[202205] [submodule] Advance sonic-swss-common submodule pointer (#12111)
- Why I did it
To pickup new commit from sonic-swss-common submodule:

afd2382 [202205] Fix sonic-db-cli dictionary output format not backward compatible issue. sonic-net/sonic-swss-common#690

- How I did it
Advance the sonic-swss-common submodule pointer

Signed-off-by: Kebo Liu <kebol@nvidia.com>
2022-09-20 10:14:59 +03:00
gechiang
570f1b0888
[202205][sonic-utilities submodule update] pick up latest needed fix (#12090) 2022-09-15 23:41:18 -07:00
Dror Prital
e129f4198d
[202205][submodule] Advance sonic-sairedis pointer (#12078)
Update sonic-sairedis submodule pointer to include the following:
[202205] Use warm-boot infrastructure for fast-boot (#1121)
2022-09-15 10:06:39 -07:00
Dror Prital
9444176014
[202205][submodule] Advance sonic-utilities pointer (#12079)
Update sonic-utilities submodule pointer to include the following:
[202205][subinterface]Added additional checks in portchannel and subinterface commands (#2371)
[202205] Use warm-boot infrastructure for fast-boot (#2365)
2022-09-15 10:06:12 -07:00
Sudharsan Dhamal Gopalarathnam
79ca9767d3
Update submodule to FRR 8.2.2 (#11502) (#12074)
*The sonic-frr was upgraded to FRR 8.2.2 as part of PR #10691. However, sonic-frr/frr submodule was still referring to previous 7.5 version. Update the sonic-frr/frr submodule to 8.2.2 commit id. Fixes issue #11484.

Co-authored-by: Hasan Naqvi <56742004+hasan-brcm@users.noreply.github.com>
2022-09-14 19:25:16 -07:00
Ying Xie
6812cf0cca
[202205][linkmgrd][utilities][platform-daemons][platform-common][linux-kernel] advance submodule head (#12025)
linkmgrd:
* ab5b2c1 2022-09-02 | Fix mux config (#128) (HEAD -> 202205, github/202205) [Longxiang Lyu]

utilities:
* 7de9305 2022-09-07 | [generate dump]Added error message when saisdkdump fails (#2356) (HEAD -> 202205, github/202205) [Sudharsan Dhamal Gopalarathnam]
* c5b0a6d 2022-09-07 | [counterpoll]Fixing counterpoll show for tunnel and acl stats (#2355) [Sudharsan Dhamal Gopalarathnam]
* 1452b44 2022-09-05 | [GCU] Fix missing backend in dry run (#2347) [jingwenxie]
* bc7b845 2022-09-04 | Add Password Hardening CLI support (#2338) [davidpil2002]
* 55e8948 2022-09-06 | [fast-reboot]Avoid stopping masked services during fast-reboot (#2335) [Sudharsan Dhamal Gopalarathnam]
* f7d69d4 2022-08-30 | Replace cmp in acl_loader with operator.eq (#2328) [Zhaohui Sun]
* 4054ebb 2022-09-05 | Add verification for override (#2305) [jingwenxie]
* 729d811 2022-05-30 | Fix sonic-installer and 'show version' command crash when database docker not running issue. (#2183) [Hua Liu]

platform-daemons:
* 36ba7c0 2022-09-07 | [ycable] cleanup logic for creating grpc future ready (#289) (HEAD -> 202205) [vdahiya12]
* 2a9db73 2022-09-01 | [ycabled] fix insert events from xcvrd;cleanup some mux toggle logic (#287) [vdahiya12]

platform-common:
* d7c990d 2022-09-03 | [CMIS] 'get_transceiver_info' should return 'None' when CMIS cable EEPROM is not ready  (#305) (HEAD -> 202205) [Kebo Liu]

linux-kernel:
* 25ea052 2022-08-31 | [patch]: Add accpt_untracked_na kernel param (#292) (HEAD -> 202205) [Lawrence Lee]

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

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-09-10 05:04:53 -07:00
kellyyeh
281ede963a [dhcp_relay] Add "vlan missing ip helper" dhcp relay unittest (#10654) 2022-09-09 20:53:02 +00:00
bingwang-ms
96588d20e0 Map TC6 to Queue 1 for regular traffic (#11904)
Why I did it
This PR is to update TC_TO_QUEUE_MAP|AZURE for SKU Arista-7050CX3-32S-D48C8 and Arista-7260CX3 T0.

The change is only to align the TC_TO_QUEUE_MAP for regular traffic and bounced traffic. It has no impact on business because we have no traffic being mapped to TC2 or TC6.

How I did it
Update TC_TO_QUEUE_MAP|AZURE , and test cases as well.

How to verify it
Verified by running test case test_j2files.py

/sonic/src/sonic-config-engine$ python3 setup.py test -s tests/test_j2files.py
running test
......
----------------------------------------------------------------------
Ran 29 tests in 25.390s

OK
2022-09-08 16:34:31 +00:00
Dror Prital
9bdde35be0
[202205][submodule] Advance sonic-utilities pointer (#11991)
Update sonic-utilities submodule pointer to include the following:
* [route_check]: Ignore standalone tunnel routes (#2325) ([#2346](https://github.com/sonic-net/sonic-utilities/pull/2346))
* [VRF]Adding CLI checks to ensure Vrf is valid in interface bind and static route commands ([#2333](https://github.com/sonic-net/sonic-utilities/pull/2333))
* Subinterface vrf bind issue fix ([#2211](https://github.com/sonic-net/sonic-utilities/pull/2211))
* [decode-syseeprom] Fix setting use_db based on support_eeprom_db ([#2270](https://github.com/sonic-net/sonic-utilities/pull/2270))
* Fix vrf UT failed issue ([#2309](https://github.com/sonic-net/sonic-utilities/pull/2309))

Signed-off-by: dprital <drorp@nvidia.com>

Signed-off-by: dprital <drorp@nvidia.com>
2022-09-08 08:39:36 -07:00
Ying Xie
7dabf3081f
[zebra] ignore route from default table (#12019)
Signed-off-by: Ying Xie <ying.xie@microsoft.com>

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-09-08 08:32:05 -07:00
Zhaohui Sun
307164f250
Support Restapi/gnmi control plane acls in 202205 branch (#11962)
For the Restapi/gnmi use-cases, Sonic has to support a new Table: EXTERNAL_CLIENT of type CTRLPLANE, stage ingress

This shall match on 'src ip prefix' and dst port '8080'. Caclmgrd must parse this from acl.json and install as in the below example:

iptables -A INPUT -s 20.20.20.20/27 -p tcp --dport 8080 -j ACCEPT

or ip6tables if the 'src ip prefix' is IPv6.

This change for master branch is in PR sonic-net/sonic-host-services#9

Signed-off-by: Zhaohui Sun <zhaohuisun@microsoft.com>
2022-09-08 12:16:14 +08:00
Dror Prital
1521690534
[202205][submodule] Advance sonic-swss pointer (#11940)
Update sonic-swss submodule pointer to include the following:

[BFD]Clean up state_db BFD entries on swss restart (#2434)
Fix the Fec Mode Setting of gbsyncd (#2430)
[neighsyncd] Enabling ipv4 link local entries for non-dualtor (#2427)
tlm_teamd: Filter portchannel subinterface events from STATE_DB LAG_TABLE (#2408)
PFCWD recovery changes using DLR_INIT (#2316)
Dynamic port configuration - add port buffer cfg to the port ref counter (#2194)

Signed-off-by: dprital <drorp@nvidia.com>
2022-09-06 08:46:44 +03:00
Jiahua Wang
fa21a82d22
Add sai_mdio_access_clause22=1 in td3x2-a720dt-48s-flex.config.bcm (#11899)
Back port #11303 to 202205 branch manually
2022-09-01 09:21:59 +08:00
abdosi
3d8d516033 Align API get_device_runtime_metadata() for python version < 3.9 (#11900)
Why I did it:
API get_device_runtime_metadata() added by #11795 uses merge operator for dict but that is supported only for python version >=3.9. This API will be be used by scrips eg:hostcfgd which is still build for buster which does not have python 3.9 support.
2022-09-01 00:13:07 +00:00
arlakshm
1f9321a1a9 [Chassis]: filter inband and recirc ports as internal ports (#11764)
Why I did it
Currently the CLI commands show interface status show interface counters and show interface description displays Ethernet-IB and Ethernet-Rec ports in the output. These are internal ports should only be displayed when the option -d all is used for the above mentioned CLI commands

How I did it
Add the port roles Inb and Rec when classifing a port as internal port.

How to verify it
Verify the CLI output of the command show interface status doesnt display the Ethenet-IB and Ethernet-Rec port when -d all option in not present
Before

Signed-off-by: Arvindsrinivasan Lakshmi Narasimhan <arlakshm@microsoft.com>
2022-09-01 00:10:12 +00:00
Ying Xie
875328bf8a
[202205] Update BRCM KNET modules to support new psample definitions from sflow (#11890)
* [202205][linux-kernel] advance submodule head

linux-kernel:
* 3fe00d4 2022-06-24 | [sflow + dropmon] added missing patch for the sFlow + dropmon feature. (#281) (HEAD -> 202205) [Vadym Hlushko]
* ca727d6 2022-04-21 | [sflow + dropmon] added patches for the sFlow + dropmon feature. (#276) [Vadym Hlushko]

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

* Update BRCM KNET modules to support new psample definitions from sflow… (#11709)

* Update BRCM KNET module to support new psample definitions from sflow dropmon feature

* Update BRCM KNET module to support new psample definitions from sflow dropmon feature

* Advance saibcm-modules-dnx

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
Co-authored-by: Michael Li <52540620+michaelli10@users.noreply.github.com>
2022-08-31 16:53:33 -07:00
Richard.Yu
921b04097b
[202205][sairedis]advance submodule head (#11861)
update sai module with commit

- 566d4a8ef2 2022-08-11 | [SAI-PTF] Enable saiserverv2 with syncd-rpc and fix saithriftv2 build (#1552) (#1533) (#1514) (#1492) (#1558) (#1557) [Richard.Yu]
- a1796a53cc 2022-08-11 | Add support of mdio IPC server class using sai switch api and unix socket

Signed-off-by: richardyu-ms <richard.yu@microsoft.com>

Signed-off-by: richardyu-ms <richard.yu@microsoft.com>
2022-08-31 03:04:37 -07:00
Vivek
4910298f7e
[202205] [sonic_py_common] Cache Static Information in device_info to speed up CLI response (#11866)
* [sonic_py_common] Cache Static Information in device_info to speed up CLI response (#11696)

- Why I did it
Profiled the execution for the following cmd intfutil -c status

- How I did it
Cached the following information:
1. get_sonic_version_info()
2. get_platform_info()
None of the API exposed to the user libraries (for eg: sonic-utilities) has been modified
These methods involve reading text files or from redis. Thus, caching helped to improve the execution time

- How to verify it
Added UT's.
Verified on the device

Signed-off-by: Vivek Reddy Karri <vkarri@nvidia.com>

* Removed UT since libswsscommom dep is missing in <=202205

Signed-off-by: Vivek Reddy <vkarri@nvidia.com>

Signed-off-by: Vivek Reddy Karri <vkarri@nvidia.com>
Signed-off-by: Vivek Reddy <vkarri@nvidia.com>
2022-08-29 08:57:45 -07:00
Ying Xie
76fde84086
[202205][linkmgrd][utilities][swss-common][sairedis][platform-common] advance submodule head (#11859)
linkmgrd:
* 9a993b2 2022-08-23 | [active-active] Remove unnecessary mux wait timeout logs (#122) (HEAD -> 202205) [Jing Zhang]

utilities:
* ec4b09f 2022-08-26 | Handle non-front-panel ports in is_rj45_port (#2327) (HEAD -> 202205, github/202205) [Stephen Sun]
* 4adf897 2022-08-20 | Fix issue: port_type is referenced before initialized (#2323) [Stephen Sun]
* 314bafd 2022-08-25 | [service_mgmt]: Fix fetch MULTI_INST_DEPENDENT bug in service_mgmt.sh.j2 (#2319) [Ze Gan]
* e0166a0 2022-08-25 | portconfig option to configure Tx power and laser frequency of ZR transceiver module (#2197) (#2330) [Prince George]

swss-common:
* af80c12 2022-06-30 | [select] break the select loop if interrupt_on_signal flag is set (#624) (HEAD -> 202205, github/202205) [Stepan Blyshchak]

sairedis:
* a1796a5 2022-07-28 | Add support of mdio IPC server class using sai switch api and unix socket (#1080) (HEAD -> 202205) [Jiahua Wang]

platform-common:
* c1ee4b1 2022-08-20 | [CMIS] Catch Exception to avoid CMIS code crash (#299) (HEAD -> 202205) [Kebo Liu]
* 638d225 2022-07-13 | Fix Cmis memmap field offset (#290) [Prince George]

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

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-08-28 19:27:00 -07:00
abdosi
1b89648c18 New API to support runtime metadata needed for Feature Table field jinja rendering. (#11795)
Added new API to return runtime metadata dictionary as needed during Feature Table field rendering by hostcfgd.
2022-08-27 16:16:17 +00:00
SuvarnaMeenakshi
3b04792887 Add support to get fabric asic namespaces list. (#11793)
Why I did it
VoQ chassis supervisor will have Fabric asics and the sub_role for fabric asics will be "Fabric".
The fabric asics namespaces are not being returned in get_all_namespaces() and is required in caclmgrd to add right cacl to allow internal docker traffic from fabric asic namespaces.
test_cacl_application fails on VoQ chassis Supervisor with the error:
Failed: Missing expected iptables rules: set(['-A INPUT -s 240.127.1.1/32 -d 240.127.1.1/32 -j ACCEPT', '-A INPUT -s 240.127.1.3/32 -d 240.127.1.1/32 -j ACCEPT', '-A INPUT -s 240.127.1.2/32 -d 240.127.1.1/32 -j ACCEPT'])

How I did it
Update get_all_namespaces to return fabric namespaces list.

How to verify it
Verified on VoQ chassis.
2022-08-27 16:16:17 +00:00
vmittal-msft
2eb6c3d03c PFCWD fix for multi port multi priority scenario for HWSKU Dell Z9332 (#11640)
PFCWD fix for multi port multi priority scenario for HWSKU Dell Z9332
2022-08-26 20:52:56 +00:00
anamehra
a2bed2ae4a container_checker on supervisor should check containers based on asic presence (#11442)
Why I did it
On a supervisor card in a chassis, syncd/teamd/swss/lldp etc dockers are created for each Switch Fabric card. However, not all chassis would have all the switch fabric cards present. In this case, only dockers for Switch Fabrics present would be created.

The monit 'container_checker' fails in this scenario as it is expecting dockers for all Switch Fabrics (based on NUM_ASIC defined in asic.conf file).
2022-08-26 20:50:24 +00:00
saksarav-nokia
a5171349a7
[NOKIA][DEVICE]Updated BCM config file to disable the cmic dma abort during cold boot and recycle port setting (#11825)
Signed-off-by: Sakthivadivu Saravanaraj <sakthivadivu.saravanaraj@nokia.com>
2022-08-24 15:53:50 -07:00
Ying Xie
9d00c56439
[202205][swss][sairedis] advance submodule head (#11800)
swss:
* 7db9ddb 2022-08-20 | Handle dual ToR neighbor miss scenario (#2151) (HEAD -> 202205, github/202205) [Lawrence Lee]

sairedis:
* 87d5a3e 2022-08-20 | [202205][SAI] advance SAI version to 1.10 to pick up saithrift and build changes (#1108) (HEAD -> 202205, github/202205) [Ying Xie]

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

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-08-21 17:30:03 -07:00
Saikrishna Arcot
491beaf7f1 [snmpd]: Update to 5.9+dfsg-4+deb11u1 to match Debian version (#11763)
* [snmpd]: Update to 5.9+dfsg-4+deb11u1 to match Debian version

This brings in some security fixes.

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>

* Update snmpd makefile

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>

* Remove binNMU for snmpd

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2022-08-20 17:27:10 +00:00
Ying Xie
f6562a5279
[202205][linkmgrd][platform-daemon][swss] advance submodule head (#11790)
linkmgrd:
* e20e402 2022-08-18 | Update `handleMuxConfigNotification` logic (#125) (HEAD -> 202205) [Jing Zhang]
* 8a54c06 2022-08-17 | [active-active] post mux metrics events (#123) [Jing Zhang]

platform-daemon:
* 1a833f6 2022-08-18 | [ycabled] enable telemetry for 'active-active'; fix gRPC portid ordering (#284) (HEAD -> 202205) [vdahiya12]

utilities:
* 4bacc1c 2022-08-19 | Fix issue: exception in is_rj45_port in multi ASIC env (#2313) (HEAD -> 202205) [Stephen Sun]

swss:
* 4085d3f 2022-07-25 | Revert hwinfo count change (#2383) (HEAD -> 202205) [andywongarista]

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

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-08-19 18:34:35 -07:00
Sambath Kumar Balasubramanian
1d627f73c8
[Chassis][Voq] Update bcm config file system_ref_core_clock_khz param for j2cplus linecards. (#11760)
Update the bcm config file system_ref_core_clock_khz param to
handlesystems with J2cplus linecards.
We need system_ref_core_clock_khz to be set to 1600000 for supporting j2
and j2cplus linecards on the same chassis.
2022-08-19 16:15:12 -07:00
Mai Bui
dd42d828a4 Replace strtok in systemd-sonic-generator (#11710)
Signed-off-by: maipbui <maibui@microsoft.com>

<!--
     Please make sure you've read and understood our contributing guidelines:
     https://github.com/Azure/SONiC/blob/gh-pages/CONTRIBUTING.md

     ** Make sure all your commits include a signature generated with `git commit -s` **

     If this is a bug fix, make sure your description includes "fixes #xxxx", or
     "closes #xxxx" or "resolves #xxxx"

     Please provide the following information:
-->

#### Why I did it
Replace unsafe functions to safe functions
#### How I did it
Replace `strtok()` by `strtok_r()`
#### How to verify it

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

<!--
- Note we only backport fixes to a release branch, *not* features!
- Please also provide a reason for the backporting below.
- e.g.
- [x] 202006
-->

- [ ] 201811
- [ ] 201911
- [ ] 202006
- [ ] 202012
- [ ] 202106
- [ ] 202111
- [ ] 202205

#### Description for the changelog
<!--
Write a short (one line) summary that describes the changes in this
pull request for inclusion in the changelog:
-->

#### Link to config_db schema for YANG module changes
<!--
Provide a link to config_db schema for the table for which YANG model
is defined
Link should point to correct section on https://github.com/Azure/sonic-buildimage/blob/master/src/sonic-yang-models/doc/Configuration.md
-->

#### A picture of a cute animal (not mandatory but encouraged)
2022-08-19 15:21:35 +00:00
Ying Xie
ddf3110f36
[202205][linkmgrd][swss][sairedis][platform-daemon][swsssdk] advance submodule head (#11761)
linkmgrd:
* 476f85e 2022-08-17 | Update linkmgr health after getting default route update (#117) (HEAD -> 202205, github/202205) [Longxiang Lyu]
* fc589e9 2022-08-17 | Use `table` to toggle peer forwarding state (#108) (#120) [Longxiang Lyu]
* bcb5a56 2022-08-17 | Fix azure pipeline (#118) (#121) [Longxiang Lyu]

swss:
* ef3a601 2022-08-17 | [muxorch] Returning true if nbr in skip_neighbor_ in isNeighborActive() (#2415) (HEAD -> 202205) [Nikola Dancejic]

sairedis:
* aed01cd 2022-08-12 | Fix: missing sonic-db-cli in docker-sonic-vs image (#1072) (#1104) (github/202205) [Hua Liu]

platform-daemon:
* 5a68073 2022-08-01 | Xcvrd changes to support 400G ZR configuration (#270) (HEAD -> 202205) [Prince George]

swsssdk:
* ca785a2 2022-06-01 | Remove sonic-db-cli (#122) (HEAD -> 202205, origin/202205) [Hua Liu]

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

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-08-19 07:24:43 -07:00
Prince George
91f3502539 Yang model for xcvr tx power and frequency configuration (#11053)
* Yang model for xcvr tx power and frequency configuration

* Add unit test cases

* Addressed review comments
2022-08-17 17:13:14 +00:00
bingwang-ms
9ee2724992 Update Yang for pfc_enable field (#11747)
Why I did it
This PR is to update Yang model for pfc_enable and pfcwd_sw_enable fields to support more than 2 queues, like 2,3,4,6.
Before this change, the regex "[0-7](,[0-7])?" accepts only no more than 2 queues.

How I did it
Update the regex pattern for pfc_enable and pfcwd_sw_enable, from "[0-7](,[0-7])?" to "[0-7](,[0-7])*

How to verify it
The change is verified by UT. The test input is updated to cover the change.

collected 3 items                                                                                                                                                                                     

tests/test_sonic_yang_models.py ..                                                                                                                                                              [ 66%]
tests/yang_model_tests/test_yang_model.py .
2022-08-17 17:11:13 +00:00
bingwang-ms
91b7018910 Disable tunnel qos remap on KVM (#11735) 2022-08-17 17:11:01 +00:00
jingwenxie
fc09ae01d4 Add yang_config_validation in device_info (#11715)
Why I did it
Put yang_config_validation in common lib and make it reusabe

How I did it
Move the definition to device_info.py
2022-08-17 17:10:45 +00:00
arlakshm
f9bfa47e8f [Chassis] parse 400g zr port config from minigraph (#11616)
Signed-off-by: Arvindsrinivasan Lakshmi Narasimhan arlakshm@microsoft.com

Why I did it
Generate the port configuration required 400G ZR port from minigraph.

How I did it
Add parse logic to get tx_power and laser_freq from LinkMetadata section of the minigraph.
Add UT for packet-chassis and voq chassis

How to verify it
UT
Signed-off-by: Arvindsrinivasan Lakshmi Narasimhan <arlakshm@microsoft.com>
2022-08-17 17:08:31 +00:00
Ying Xie
fd5ddbad8c
[202205][utilities] advance submodule head (#11729)
utilities:
* fbf82b9 2022-08-08 | Fix the issue that sonic_platform is not installed on vs image (#2300) (HEAD -> 202205, github/202205) [Stephen Sun]
* 19a3540 2022-08-13 | Revert "Revert "Improve the way to check port type of RJ45 port (#2249)"" [Ying Xie]

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

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-08-13 07:53:05 -07:00
Ying Xie
ad36e1727f
[202205][kernel][swss][utilities][platform-daemon][linkmgrd] advance submodule head (#11705)
Kernel:
* 86c4b66 2022-07-28 | [Mellanox] Add new kernel patches from HW-MGMT package V.7.0020.3005 (#287) (HEAD -> 202205) [Kebo Liu]
* 3a8416a 2022-07-05 | [patch] mlxsw: i2c: Prevent transaction execution for special chip (#279) [Stepan Blyshchak]

swss:
* 3f69944 2022-08-10 | Set internal class state to reflect the actual state (#2410) (HEAD -> 202205, tag: foo) [Prince Sunny]
* 87e98eb 2022-08-09 | [portsorch] Expose supported FEC modes to STABE_DB and check whether FEC mode is supported before setting it (#2400) [Stephen Sun]
* e71ab99 2022-07-29 | portsorch: initial support for link-training (#2359) [Dante (Kuo-Jung) Su]
* ed5e5be 2022-07-08 | Port configuration incremental update support (#2305) [Junchao-Mellanox]

utilities:
* 0df3ba8 2022-08-12 | Revert "Improve the way to check port type of RJ45 port (#2249)" (HEAD -> 202205) [Ying Xie]
* 9b21903 2022-08-12 | Fix test failure in dump table test in 202205 (#2307) (HEAD -> 202205, github/202205) [Stephen Sun]
* 750d1db 2022-08-11 | Convert IPv6 addresses to lowercase in apply-patch (#2299) (HEAD -> 202205) [dbarashinvd]
* 555947e 2022-08-09 | [config][muxcable] add support to enable/disable ycable telemetry (#2297) [vdahiya12]
* 978f416 2022-08-09 | Fix GCU bug when backend service modifying config (#2295) [jingwenxie]
* 8fed381 2022-08-02 | [intfutil] Check whether the FEC mode is supported on the platform before configuring it to CONFIG_DB (#2223) (github/202205) [Stephen Sun]
* a1a09e4 2022-07-29 | Improve the way to check port type of RJ45 port (#2249) [Stephen Sun]
* 9bdbfb8 2022-05-19 | sonic-utils: initial support for link-training (#2071) [Dante (Kuo-Jung) Su]
* c088ec4 2022-08-10 | Support to enable fips for the command sonic_installer (#2154) (#2303) [xumia]

platform-daemon:
* 767cfb6 2022-08-09 | [ycabled] add capability to enable/disable telemetry (#279) (HEAD -> 202205) [vdahiya12]

linkmgrd:
* cf1ba2b 2022-08-12 | wait for handler to be completed (#114) (HEAD -> 202205, github/202205) [Jing Zhang]
* e99026c 2022-08-11 | [lgtm]: add uuid-dev to lgtm prepare (#112) (HEAD -> 202205) [Jing Zhang]
* bd1b7f0 2022-08-11 | Adjust `DbInterfaceRaceConditionCheck` to Wait Longer for Handlers to be executed (#111) (HEAD -> 202205, github/202205) [Jing Zhang]
* e9dc6b2 2022-08-11 | Backoff mux probing for server down scenario (#106) [Jing Zhang]
* 0d61171 2022-08-09 | Fix race condition caused by strand `wrap` method (#104) [Jing Zhang]
* e9ede7d 2022-07-02 | Enforce switch after config mux to active (#95) [Longxiang Lyu]
* 15dbc30 2022-06-30 | Add unittest to verify mux toggle active (#94) [Longxiang Lyu]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-08-12 21:16:38 -07:00
StormLiangMS
0cec818e74 [bgp-cfgd] BGP allow list enhancement (#11586)
Why I did it
2 things are missing in current allow-prefix list implementation.

In some usecase, need to tell the BGP neighbor and have different allow-prefix list for different neighbors, which is not supported.
for the prefix list, can't support flexible le and ge.
How I did it
To enhance the bgp allow-prefix list feature to have:

To include the neighbor type info for the allow-prefix list.
To support flexible le and ge length for allow-prefix list.
How to verify it
4 new unit test cases are added in this PR to cover changes.
2022-08-11 16:17:51 +00:00
Ying Xie
e8fe21b3a4
[202205][linkmgrd][utilities][swss][swss-common][sairedis][platform-daemon] advance submodule head (#11652)
linkmgrd:
* 17240f1 2022-08-02 | [active-active] Update unhealthy label definition (#102) (HEAD -> 202205, github/202205) [Jing Zhang]
* 99a7b4b 2022-07-28 | Update the definition of healthy label (#99) [Jing Zhang]
* 551144b 2022-08-08 | [Active-Standby]Remove unnecessary `handleMuxWaitTimeout` logs (#100) [Jing Zhang]

utilities:
* 8cbbe4f 2022-08-08 | [crm] add checking for CRM interval range (#2293) (HEAD -> 202205, github/202205) [Andriy Yurkiv]
* 7dac7a7 2022-08-03 | Fix version in db_migrator  for `PORT_QOS_MAP|global` (#2289) [bingwang-ms]
* e14f0c9 2022-08-03 | Add override testcase to verify removal (#2288) [jingwenxie]
* 61ea21d 2022-07-29 | [watermarkstat] Fix CLI script for unconfigured PG counters (#2239) [Nazarii Hnydyn]
* e206e2d 2022-05-19 | [portconfig] Allow to configure interface mtu for physical ports only [Sudharsan Dhamal Gopalarathnam]
* 9751479 2022-08-01 | Transfer organization from Azure to sonic-net (#2285) [Liu Shilong]
* 218b175 2022-07-29 | [202205][counters] Keep counters cache in a single directory (#2280) [Stepan Blyshchak]

swss:
* d772a70 2022-08-09 | [muxorch] return true if the nbr IP is in the skip_neighbors list (#2407) (HEAD -> 202205) [Nikola Dancejic]
* a3ac275 2022-08-08 | [EVPN]Modified tunnel creation logic when creating tunnel in VRF-VNI map creation flow (#2404) (HEAD -> 202205) [Sudharsan Dhamal Gopalarathnam]
* 67c1376 2022-08-09 | [QoS] Fix issue: the WRED profile can not be set if current min > new max or current max < new min (#2379) [Stephen Sun]
* 0295a35 2022-07-21 | [Buffer Orch] Support removing buffer port profile list (#2371) [Stephen Sun]
* 450e9ec 2022-07-07 | Fix: missing sonic-db-cli in docker-sonic-vs image (#2357) [Qi Luo]
* c1c1147 2022-06-02 | Purge package sonic-db-cli which depends on libswsscommon (#2308) [Qi Luo]

swss-common:
* 749cd6f 2022-07-21 | Fix PING database command not backward compatible with python version issue. (#650) (HEAD -> 202205) [Hua Liu]
* 4fa7484 2022-06-27 | Fix: missing sonic-db-cli in docker-sonic-vs image (#640) [Qi Luo]
* 4d0dc7a 2022-06-23 | [sonic-cli] Fix sonic-db-cli output format not backward compatible with python version issue. (#631) [Hua Liu]
* c5573fe 2022-06-03 | Purge package sonic-db-cli which depends on libswsscommon (#628) [Qi Luo]
* 0ade483 2022-08-02 | Add docker-mux related table names  (#627) [Jing Zhang]
* 675d793 2022-05-26 | Re-write sonic-db-cli with c++ for sonic startup performance issue (#607) [Hua Liu]
* 1155773 2022-08-01 | Transfer organization from Azure to sonic-net (#661) (github/202205) [Liu Shilong]

sairedis:
* c62a453 2022-06-03 | Purge package sonic-db-cli which depends on libswsscommon (#1057) (HEAD -> 202205) [Qi Luo]
* 8be9292 2022-07-20 | [syncd] Remove error message when tryTranslateVidToRid fails (#1048) [Kamil Cudnik]
* eb552ee 2022-08-01 | Transfer organization from Azure to sonic-net (#1099) (github/202205) [Liu Shilong]

platform-daemon:
* d150229 2022-08-11 | Correct the peer forwarding state table (#281) (HEAD -> 202205) [Longxiang Lyu]
* 9507e6c 2022-08-10 | [ycabled] remove some spurious logs (#282) (HEAD -> 202205) [vdahiya12]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-08-10 22:24:05 -07:00
bingwang-ms
b389931262 Support TC value above 7 in yang model (#11630) 2022-08-10 22:57:31 +00:00
Ying Xie
5970a065d5 Revert "Update swsssdk submodule (#10996)"
This reverts commit f6ed142456.
2022-08-09 23:04:32 +00:00
Saikrishna Arcot
d1f72a4878 Change dhcp6relay to be a submodule, and rename it to dhcprelay (#10711)
Why I did it
src/dhcprelay is being split out to be its own submodule.

How I did it
Add existing dhcprelay commits into the new repo.
Clean up Makefile (sonic-net/sonic-dhcp-relay@772625f)
Add LGTM config (sonic-net/sonic-dhcp-relay@5cc0889)
Add Azure pipeline config (sonic-net/sonic-dhcp-relay@c79cdb7)
Add submodule reference, renaming most references of dhcp6relay to dhcprelay (to reflect that this will not just be for IPv6 in the future).
How to verify it
Successful run of LGTM is tested at sonic-net/sonic-dhcp-relay#4. Failure run of LGTM is tested at sonic-net/sonic-dhcp-relay#3.

Azure pipeline is run for each commit/PR, and will build for amd64, armhf, and arm64. UT/code coverage check is not yet done.

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2022-08-09 22:57:34 +00:00
Ze Gan
f16e7ad8ed [submodule]: Update sonic-wpa-supplicant (#11636)
24f505148 [eloop.c]: Increase timeout of signal termination (#62)
2b2c1ad72 [driver_macsec_sonic.c]: Fixbug: a wrong db_wait in delete sa (#61)

Signed-off-by: Ze Gan <ganze718@gmail.com>
2022-08-08 20:46:57 +00:00
xumia
9fd05ce876 Fix CVE-2017-1000487 alert for thrift 0.14.1 (#11634)
Why I did it
Fix CVE-2017-1000487 alert in thrift 0.14.1.
See https://nvd.nist.gov/vuln/detail/CVE-2017-1000487

How I did it
Change the version of org.codehaus.plexus:plexus-utils from 3.0.14 to 3.0.16.
2022-08-08 20:46:52 +00:00
Stephen Sun
8a12a4ba02 Support queue 7 in dual ToR scenario (#11571)
Signed-off-by: Stephen Sun <stephens@nvidia.com>
2022-08-08 20:45:17 +00:00
bingwang-ms
fda1290926 Support different DSCP_TO_TC_MAP for T1 in dualtor deployment (#11569)
* Support different DSCP_TO_TC_MAP for T1 in dualtor deployment
2022-08-08 20:44:32 +00:00
Ze Gan
7dcd1f20ef [submodule]: Update sonic-wpa-supplicant (#11539)
```
88d1eaea9 [mka]: Fix rekey of PN based cannot triggered in XPN cipher (#57)
```

Signed-off-by: Ze Gan <ganze718@gmail.com>
2022-08-08 20:43:45 +00:00
StormLiangMS
0b4e8f77f2 [bgpcfgd] improve the log when delete a loopback interface (#11152)
Why I did it
The bgpcfgd doesn't support deletion of 'zebra set src', if an interface is deleted, the bgpcfgd will drop a warning message. In current implementation, we only care about the loopback0 interface but not others.
To improve the log print to have the key info, which will give the name of the deleted interface. We can ignore it if it is not the loopback0 interface. The application layer should be aware of that update and deletion is not supported, delete or update with a new address of loopback0 could cause issue, this log can give enough info to root cause the issue.

How I did it
How to verify it
2022-08-08 20:41:07 +00:00
Hua Liu
f6ed142456 Update swsssdk submodule (#10996)
Updating sonic-utilities sub module with the following commits

ca785a2 Remove sonic-db-cli

#### Why I did it
To fix sonic-db-cli high CPU usage on SONiC startup issue: https://github.com/Azure/sonic-buildimage/issues/10218
sonic-db-cli re-write with c++ and move to sonic-swss-common repo.

#### How I did it

#### How to verify it

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

#### Description for the changelog
ca785a2 Remove sonic-db-cli

#### A picture of a cute animal (not mandatory but encouraged)


Co-authored-by: liuh-80 <azureuser@liuh-dev-vm-02.5fg3zjdzj2xezlx1yazx5oxkzd.hx.internal.cloudapp.net>
2022-08-08 20:40:15 +00:00
tjchadaga
f2d7481b5f Fix for TSA error logging on multi-asic (#11519) 2022-08-01 19:20:43 +00:00
Ying Xie
b1456ee1c8
[202205][linkmgrd][utilities][swss][sairedis][platform-daemon][platform-common] advance submodule head (#11578)
linkmgrd:
* e0fe1d4 2022-07-27 | TSA enhancement (#98) (HEAD -> 202205) [Jing Zhang]

utilities:
* 7d7e15e 2022-07-18 | [vnet_route_check] Align DB data parse logic with format used by swsscommon API (#2268) (HEAD -> 202205) [Volodymyr Samotiy]
* b3d5d18 2022-07-20 | [MultiAsic] sudo reboot command doesn't gracefully stop Asic syncd# on multiasic platform (#2258) [Marty Y. Lok]
* 504ebe6 2022-07-08 | Add 'traffic_shift_away' option to config load_minigraph (#2240) [tjchadaga]
* 4079e4a 2022-06-20 | Gives cisco-8000 more flexibility to easily add subcommnads under show platform (#2213) [Nathan Cohen]
* 46443c6 2022-07-27 | Update db_migrator to support `PORT_QOS_MAP|global` (#2205) [bingwang-ms]
* d7fbdd6 2022-05-26 | fix for non-coherent cmis modules (#2163) [qinchuanares]
* 79b4439 2022-06-24 | [sfpshow/sfputil] Enhance sfpshow and sfputil to behavior correctly on RJ45 ports (#2111) [Kebo Liu]

swss:
* 275f311 2022-07-26 | [DualToR] Handle race condition between tunnel_decap and mux orchestrator (#2397) (HEAD -> 202205) [Devesh Pathak]
* 47586e8 2022-07-22 | [EVPN]Fix missing Vlan member update notification in P2MP scenario (#2388) [Sudharsan Dhamal Gopalarathnam]
* 7d5c73f 2022-07-19 | [macsecmgr]: Fix cleanup macsec objs if container stop (#2376) [Ze Gan]
* c03996f 2022-07-17 | [orchagent]: Enhance initSaiPhyApi (#2367) [andywongarista]
* 57890d7 2022-07-27 | Fix for remote system interface not getting created (#2364) [skeesara-nokia]
* 1a93ec9 2022-07-13 | Orchagent changes for synchronizing npu/phy device Tx in the data path before enabling transceiver<CMIS compliant> Tx. (#2277) [jaganbal-a]

sairedis:
* a4903be 2022-07-20 | Update PN with XPN support (#1081) (HEAD -> 202205, github/202205) [Ze Gan]
* 2cb5671 2022-07-27 | Add SAI_OBJECT_TYPE_TUNNEL object to break-before-make list (#1075) [Vaibhav Hemant Dixit]

platform-daemon:
* 901c6a1 2022-06-28 | [CMIS]Improved 400G link bring up sequence (#254) (HEAD -> 202205) [Prince George]

platform-common:
* f223b3f 2022-07-09 | Support get_port_or_cage_type (#288) (HEAD -> 202205) [Stephen Sun]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-07-29 09:38:12 -07:00
bingwang-ms
5a313e6912 Automatically enable tunnel_qos_remap on T1 and T0 in DualToR deployment (#11508)
Why I did it
This PR is to backport PR #11056 and PR #11045 into master branch.
This PR is to enable tunnel_qos_remap on T1 and T0 in DualToR deployment.
On T1, we check the property DownstreamRedundancyTypes. On T0, we check the property RedundancyType.
tunnel_qos_remap is set to enabled if gemini is in DownstreamRedundancyTypes (on T1) or RedundancyType (on T0).

How I did it
The change is implemented in minigraph.py.

How to verify it
Verified by test_minigraph_case.py and 'test_j2files.py`.
2022-07-28 20:37:45 +00:00
Ze Gan
7a502a25c1 [iproute2]: Enhance iproute2 to update PN for XPN (#11474)
Why I did it
ip command cannot update packet number if the cipher is XPN.

How I did it
Specify SSCI when update packet number and ignore SSCI value if update action.

Signed-off-by: Ze Gan <ganze718@gmail.com>
2022-07-28 20:37:12 +00:00
abdosi
1d32553a91 Added Support for deployment_id parsing for Device Asic metadata (#11454)
What I did:
Added Support for deployment_id parsing for Device Asic metadata.

Why I did:-
Deployment Id is used in BGP docker for FRR template generation. For multi-asic platforms running in namespace without deployment id as key in DEVICE_METADATA FRR template generation fails. This change is needed after this #10154 where if deployment_id is none we don't update DEVICE_METADA dictionary.

How I verify:-
Added unit-test.
2022-07-28 20:36:34 +00:00
tjchadaga
f56963603b Add bgp_device_global yang model (#11343) 2022-07-28 20:31:36 +00:00
Stephen Sun
b4d8ee3fec [Mellanox] Support Mellanox-SN4600C-C64 as T1 switch in dual-ToR scenario (#11261)
- Why I did it
Support Mellanox-SN4600C-C64 as T1 switch in dual-ToR scenario
This is to port #11032 and #11299 from 202012 to master.

Support additional queue and PG in buffer templates, including both traditional and dynamic model
Support mapping DSCP 2/6 to lossless traffic in the QoS template.
Add macros to generate additional lossless PG in the dynamic model
Adjust the order in which the generic/dedicated (with additional lossless queues) macros are checked and called to generate buffer tables in common template buffers_config.j2
Buffer tables are rendered via using macros.
Both generic and dedicated macros are defined on our platform. Currently, the generic one is called as long as it is defined, which causes the generic one always being called on our platform. To avoid it, the dedicated macrio is checked and called first and then the generic ones.
Support MAP_PFC_PRIORITY_TO_PRIORITY_GROUP on ports with additional lossless queues.
On Mellanox-SN4600C-C64, buffer configuration for t1 is calculated as:

40 * 100G downlink ports with 4 lossless PGs/queues, 1 lossy PG, and 3 lossy queues
16 * 100G uplink ports with 2 lossless PGs/queues, 1 lossy PG, and 5 lossy queues

Signed-off-by: Stephen Sun <stephens@nvidia.com>
2022-07-28 20:30:00 +00:00
tjchadaga
fc93871881 Changes to persist TSA/B state across reloads (#11257) 2022-07-28 20:29:45 +00:00
kellyyeh
4abfd37a8d [dhcpmon] Open different socket for dual tor to enable interface filtering (#11201) 2022-07-28 20:28:29 +00:00
Ying Xie
f96f0e464f
[202205][sairedis][platform-daemon][linkmgrd][utilities][swss-common] advance submodule head (#11518)
sairedis:
* 38c0bb1 2022-07-21 | [sairedis] Fix reopen recoding file (#1087) (HEAD -> 202205, github/202205) [Kamil Cudnik]

platform-daemon:
* 17587b6 2022-07-22 | [ycabled] add secure channel support for grpc dualtor active-active connectivity  (#275) (HEAD -> 202205, github/202205) [vdahiya12]

linkmgrd:
* c911ec7 2022-07-21 | Avoid unnecessary error logs from `handleGetServerMacAddressNotification` (#96) (HEAD -> 202205) [Jing Zhang]
* bbae81d 2022-07-18 | Add support for reconciliation after warm restart  (#76) [Jing Zhang]

utilities:
* bcc1206 2022-07-20 | Change db_migrator major version on master branch from version 2 to 3 (#2272) (HEAD -> 202205) [Vaibhav Hemant Dixit]
* ad40697 2022-07-21 | Fix test for pfcwd_sw_enable in db_migrator_test (#2253) [bingwang-ms]
* 886f612 2022-07-22 | Revert "show commands for SYSTEM READY (#1851) (#2261)" (#2274) (github/202205) [Ying Xie]
* a6404b7 2022-07-17 | show commands for SYSTEM READY (#1851) (#2261) [Senthil Kumar Guruswamy]

swss-common:
* 509b265 2022-07-06 | Add device global table definition (#645) (HEAD -> 202205) [tjchadaga]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-07-23 00:22:15 -07:00
Neetha John
f92e3e8262 Update 7260 MMU and ECN settings (#11449)
Signed-off-by: Neetha John <nejo@microsoft.com>

Why I did it
Improve throughput and latency for 7260 deployments

How I did it
Update the dynamic threshold to 0 and ECN settings as 2mb/10mb/5%

How to verify it
Updated unit tests to use the modified values for 7260 ecn settings.
2022-07-22 22:14:41 +00:00
Ying Xie
aee974269f [minigraph] allow LibraPeeringLink to be dualtor indication as well (#11492)
Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-07-21 15:26:11 +00:00
vdahiya12
3829faf2c9
[caclmgrd][dualtor] add iptables rule for dualtor gRPC to allow packets getting forwarded from loopback IP (#11458)
This PR is a required for changing the L3 IP forwarding Behavior to SoC in active-active toplogy. Basically, for getting a packet to be forwarded to the SoC IP in active-active topology, the requirement is to use the the LoopBack 3 IP inside SONiC device as the SRC IP. This is required because in active-active topology by default if the ToR wants to send packet to the SoC, it would pick the Vlan IP since that's the IP in the subnet, but since there are firewalls inside the SoC , the IP packets with Vlan IP as src IP in the IP header will be dropped. Hence to overcome this limitation, there is an iptable nat rule that is installed inside the kernel, with which all the packets which have SoC IP as destination IP, use Loopnack 3 IP as src in IP header

How I did it
check the config DB if the ToR is a DualToR and has an SoC IP assigned.
put an iptable rule
iptables -t nat -A POSTROUTING --destination -j SNAT --to-source "
Signed-off-by: vaibhav-dahiya vdahiya@microsoft.com
2022-07-20 09:00:28 -07:00
Ying Xie
3e9c1d16c1
[202205][platform-daemon] move submodule head (#11475)
platform-daemon:
* 17f886d 2022-07-18 | [ycabled] remove some redundant logging for active-active cable type (#274) (HEAD -> 202205, github/202205) [vdahiya12]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-07-18 17:58:32 -07:00
Ying Xie
10cafd5490
[202205][swss][sairedis] advance submodule head (#11463)
swss:
* 7841930 2022-07-15 | [vxlan]Fixing L2MC vlan member caching issue (#2378) (HEAD -> 202205) [Sudharsan Dhamal Gopalarathnam]
* b8cd435 2022-07-14 | [muxorch] Always use direct link for SoC IPs (#2369) [Longxiang Lyu]
* 6158d5c 2022-07-08 | Add BGP profile to Vnet routes (#2337) [Prince Sunny]
* bdb7ffd 2022-07-06 | [teammgr]: Waiting MACsec ready before doLagMemberTask (#2286) [Ze Gan]

sairedis:
* 58359d4 2022-06-30 | [sairedis] Perform log rotate on request (#1058) (HEAD -> 202205, github/202205) [Kamil Cudnik]
* cad0268 2022-07-13 | Enable cisco debug shell by default (#1078) [VenkatCisco]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-07-18 10:44:20 -07:00
bingwang-ms
f7cc66ad4c Add flag to control the generation of PORT_QOS_MAP|global entry (#11448)
Why I did it
This PR is to add a flag to control whether to generate PORT_QOS_MAP|global entry or not.
It's because for some HWSKU, such as BackEndToRRouter and BackEndLeafRouter, there is no DSCP_TO_TC_MAP defined.
Hence, if the PORT_QOS_MAP|global entry is generated, OA will report some error because the DSCP_TO_TC_MAP map AZURE can not be found.

Jul 14 00:24:40.286767 str2-7050qx-32s-acs-03 ERR swss#orchagent: :- saiObjectTypeQuery: invalid object id oid:0x7fddb43605d0
Jul 14 00:24:40.286767 str2-7050qx-32s-acs-03 ERR swss#orchagent: :- meta_generic_validation_objlist: SAI_SWITCH_ATTR_QOS_DSCP_TO_TC_MAP:SAI_ATTR_VALUE_TYPE_OBJECT_ID object on list [0] oid 0x7fddb43605d0 is not valid, returned null object id
Jul 14 00:24:40.286767 str2-7050qx-32s-acs-03 ERR swss#orchagent: :- applyDscpToTcMapToSwitch: Failed to apply DSCP_TO_TC QoS map to switch rv:-5
Jul 14 00:24:40.286767 str2-7050qx-32s-acs-03 ERR swss#orchagent: :- doTask: Failed to process QOS task, drop it
This PR is to address the issue.

How I did it
Add a flag require_global_dscp_to_tc_map to control whether to generate the PORT_QOS_MAP|global entry. The default value for require_global_dscp_to_tc_map is true. If the device type is storage backend, the value is changed to false. Then the PORT_QOS_MAP|global entry is not generated.

How to verify it
Update the current test_qos_dscp_remapping_render_template to cover storage backend.
2022-07-17 03:20:20 +00:00
Neetha John
aa63d3101d Minigraph parser changes to select mmu profiles based on SonicQosProfile attribute (#11429)
Signed-off-by: Neetha John <nejo@microsoft.com>

Why I did it
There is a need to select different mmu profiles based on deployment type

How I did it
There will be separate subfolders (RDMA-CENTRIC, TCP-CENTRIC, BALANCED) in each hwsku folder which contains deployment specific mmu and qos settings. SonicQosProfile attribute in the minigraph will be used to determine which settings to use. If that attribute is not present, the default settings that exist in the hwsku folder will be used
2022-07-17 03:20:07 +00:00
xumia
3f0c82c831 [Build] Cleanup the version deb preference file after build (#11414)
Why I did it
Cleanup the version deb preference file after build.
The version file is no use after build.

How I did it
Remove the no use version file.
2022-07-17 03:19:54 +00:00
SuvarnaMeenakshi
40b47e96ce [caclmgrd]: Add infrastructure to support adding feature specific acls (#11367)
Why I did it
Add infrastructure to support adding feature specific acls.
If feature specific ACLs has to be added:

if feature_name in self.feature_present and self.feature_present.get('feature_name'):
    add_feature_specific_acls()
How I did it
Add function to get features present in feature table.

How to verify it
unit-test passes.
2022-07-17 03:17:28 +00:00
Lawrence Lee
669687385b [device]: Add SAI checksum verify to TD3 config (#8857)
* [device]: Add SAI checksum verify to TD3 config
* A new config option was added to control the value of IPV4_INCR_CHECKSUM_ORIGINAL_VALUE_VERIFY in the EGR_FLEX_CONFIG control register (this prevents checksums of 0xffff from being propagated to other devices)
2022-07-17 03:11:54 +00:00
Ying Xie
f98814db30
[202205][utilities][platform-daemon] advance submodule head (#11384)
utilities:
* 9f496a0 2022-07-06 | Update load minigraph to load backend acl (#2236) (HEAD -> 202205, github/202205) [Neetha John]
* ea938e3 2022-07-07 | Add support for IP interface loopback action (#2192) [Lior Avramov]
* a0b04de 2022-07-07 | [show] add new CLI to show tunnel route objects (#2255) [Jing Zhang]

platform-daemon:
* e03d6a9 2022-07-06 | [ycabled][grpc] Fix some time interval,options for grpc keep alive to work (#271) (HEAD -> 202205, github/202205) [vdahiya12]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-07-09 07:57:03 -07:00
xumia
9c6b9c9563 [Build] Fix the missing debian package for reproducible build issue (#11333)
Why I did it
Fix the missing debian package for reproducible build issue.

The gnupg2 should be added into the version file.
https://dev.azure.com/mssonic/build/_build/results?buildId=118139&view=logs&j=88ce9a53-729c-5fa9-7b6e-3d98f2488e3f&t=8d99be27-49d0-54d0-99b1-cfc0d47f0318

The following packages have unmet dependencies:
 gnupg2 : Depends: gnupg (>= 2.2.27-2+deb11u2) but 2.2.27-2+deb11u1 is to be installed
E: Unable to correct problems, you have held broken packages.

The issue was caused by the gnupg2 removed, and not detected.
sonic-buildimage/build_debian.sh

Line 250 in 4fb6cf0

 sudo LANG=C chroot $FILESYSTEM_ROOT apt-get -y remove software-properties-common gnupg2 python3-gi 
How I did it
Export the debian packages when any debian package being removed.
2022-07-07 21:20:30 +00:00
Neetha John
37c2370165 Minigraph parser changes for storage backend acl (#11221)
Signed-off-by: Neetha John nejo@microsoft.com

Why I did it
For storage backend, certain rules will be applied to the DATAACL table to allow only vlan tagged packets and drop untagged packets.

How I did it
Create DATAACL table if the device is a storage backend device
To avoid ACL resource issues, remove EVERFLOW related tables if the device is a storage backend device

How to verify it
Added the following unit tests
- verify that EVERFLOW acl tables is removed and DATAACL table is added for storage backend tor
- verify that no DATAACL tables are created and EVERFLOW tables exist for storage backend leaf
2022-07-07 21:20:07 +00:00
Neetha John
73abb5c58a Add backend acl template (#11220)
Why I did it
Storage backend has all vlan members tagged. If untagged packets are received on those links, they are accounted as RX_DROPS which can lead to false alarms in monitoring tools. Using this acl to hide these drops.

How I did it
Created a acl template which will be loaded during minigraph load for backend. This template will allow tagged vlan packets and dropped untagged

How to verify it
Unit tests

Signed-off-by: Neetha John <nejo@microsoft.com>
2022-07-07 21:19:57 +00:00
Vadym Hlushko
12ed51d85f [sflow + dropmon] added the ENABLE_SFLOW_DROPMON build flag. Added patches for sflow repo. (#10370)
* [sflow + dropmon] added INCLUDE_SFLOW_DROPMON flag, added patches for hsflowd
*Added a capability of monitoring dropped packets for the sFlow daemon in order to improve network - monitoring, diagnostic, and troubleshooting. The drop monitor service allows the sFlow daemon to export another type of sample - dropped packets as Discard samples alongside Counter samples and Packet Flow samples.

Signed-off-by: Vadym Hlushko <vadymh@nvidia.com>
2022-07-07 21:19:34 +00:00
Ying Xie
2d9714de47
[202205][platform-common] advance submodule head (#11345)
platform-common:
* 4fe38c7 2022-06-09 | [multiasic][sfputil]Fix the sftpuitlhelper on mutilasic platform issue (#286) (HEAD -> 202205, github/202205) [Marty Y. Lok]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-07-06 06:55:41 -07:00
Ying Xie
4abead049a
[202205][utilities] advance submodule head (#11340)
utilities;
* 7dae152 2022-07-05 | show linkmgrd status in `show mux status` (#2254) (HEAD -> 202205) [Jing Zhang]
* 6ebba53 2022-07-01 | [config/load_mgmt_config] Support load IPv6 mgmt IP (#2206) (HEAD -> 202205, github/202205) [Jing Kan]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-07-06 06:55:25 -07:00
Longxiang Lyu
7d06c7f621 [minigraph][dualtor] Support parsing soc_ip out of dpg (#11207)
Why I did it
To further support parse out soc_ipv4 and soc_ipv6 out of Dpg:

<DeviceDataPlaneInfo>
  <IPSecTunnels />
  <LoopbackIPInterfaces xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution">
    <a:LoopbackIPInterface>
      <ElementType>LoopbackInterface</ElementType>
      <Name>HostIP</Name>
      <AttachTo>Loopback0</AttachTo>
      <a:Prefix xmlns:b="Microsoft.Search.Autopilot.NetMux">
        <b:IPPrefix>10.10.10.2/32</b:IPPrefix>
      </a:Prefix>
      <a:PrefixStr>10.10.10.2/32</a:PrefixStr>
    </a:LoopbackIPInterface>
    <a:LoopbackIPInterface>
      <ElementType>LoopbackInterface</ElementType>
      <Name>HostIP1</Name>
      <AttachTo>Loopback0</AttachTo>
      <a:Prefix xmlns:b="Microsoft.Search.Autopilot.NetMux">
        <b:IPPrefix>fe80::0002/128</b:IPPrefix>
      </a:Prefix>
      <a:PrefixStr>fe80::0002/128</a:PrefixStr>
    </a:LoopbackIPInterface>
    <a:LoopbackIPInterface>
      <ElementType>LoopbackInterface</ElementType>
      <Name>SoCHostIP0</Name>
      <AttachTo>server2SOC</AttachTo>
      <a:Prefix xmlns:b="Microsoft.Search.Autopilot.NetMux">
        <b:IPPrefix>10.10.10.3/32</b:IPPrefix>
      </a:Prefix>
      <a:PrefixStr>10.10.10.3/32</a:PrefixStr>
    </a:LoopbackIPInterface>
    <a:LoopbackIPInterface>
      <ElementType>LoopbackInterface</ElementType>
      <Name>SoCHostIP1</Name>
      <AttachTo>server2SOC</AttachTo>
      <a:Prefix xmlns:b="Microsoft.Search.Autopilot.NetMux">
        <b:IPPrefix>fe80::0003/128</b:IPPrefix>
      </a:Prefix>
      <a:PrefixStr>fe80::0003/128</a:PrefixStr>
    </a:LoopbackIPInterface>
  </LoopbackIPInterfaces>
</DeviceDataPlaneInfo>
Signed-off-by: Longxiang Lyu lolv@microsoft.com

How I did it
For servers loopback definitions in Dpg, if they contain LoopbackIPInterface with tags AttachTo, which has value of format like <server_name>SOC, the address will be regarded as a SoC IP, and sonic-cfggen now will treat the port connected to the server as active-active if the redundancy_type is either Libra or Mixed.

How to verify it
Pass the unittest.

Signed-off-by: Longxiang Lyu <lolv@microsoft.com>
2022-07-05 22:51:11 +00:00
vmittal-msft
8035e3d9a7 Updated Chassis MMU settings for 40G/100G/400G line cards (#11108)
* Updated Chassis MMU settings for 40G/100G/400G line cards
2022-07-05 16:10:50 +00:00
arista-nwolfe
b3672c1f57
Setting the soc property for num_sa_per_sc on macsec encrypt/decrypt (cherry-pick of PR 11166) (#11279) 2022-07-05 09:06:24 -07:00
Ying Xie
ded05adb3e
[202205][swss][utilities] advance submodule head (#11294)
swss:
* 6bafea4 2022-06-29 | [vnetorch] [vxlanorch] fix a set of memory usage issues (#2352) (HEAD -> 202205, github/202205) [Yakiv Huryk]

utilities:
* c64454c 2022-06-28 | [GCU] Moving UniqueLanes from only validating moves, to be a supplemental YANG validator (#2234) (HEAD -> 202205, github/202205) [Mohamed Ghoneim]
* fbd79d4 2022-06-29 |  Add check to not allow deleting PO if its member of vlan (#2237) [anilkpan]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-06-30 10:35:51 -07:00
judyjoseph
37c9b27ce2 [macsec] Parse masec_enabled and macsec_profile from minigraph (#10917)
* Updates needed to parse the macsec config from minigraph
* Add unit tests in tests/test_cfggen.py::TestCfgGen, and updates
2022-06-30 05:27:17 +00:00
davidpil2002
f17d55dc67 Add support for Password Hardening (#10323)
- Why I did it
New security feature for enforcing strong passwords when login or changing passwords of existing users into the switch.

- How I did it
By using mainly Linux package named pam-cracklib that support the enforcement of user passwords, the daemon named hostcfgd, will support add/modify password policies that enforce and strengthen the user passwords.

- How to verify it
Manually Verification-
1. Enable the feature, using the new sonic-cli command passw-hardening or manually add the password hardening table like shown in HLD by using redis-cli command

2. Change password policies manually like in step 1.
Notes:
password hardening CLI can be found in sonic-utilities repo-
P.R: Add support for Password Hardening sonic-utilities#2121
code config path: config/plugins/sonic-passwh_yang.py
code show path: show/plugins/sonic-passwh_yang.py

3. Create a new user (using adduser command) or modify an existing password by using passwd command in the terminal. And it will now request a strong password instead of default linux policies.

Automatic Verification - Unitest:
This PR contained unitest that cover:
1. test default init values of the feature in PAM files
2. test all the types of classes policies supported by the feature in PAM files
3. test aging policy configuration in PAM files
2022-06-30 05:25:58 +00:00
jingwenxie
6708a55654 [yang] update TCP_FLAGS format in sonic-acl.yang (#11270)
Why I did it
Fix #11224
TCP_FLAGS supports flags/mask pattern.

How I did it
Change the pattern.

How to verify it
Add unit test.
2022-06-30 05:15:41 +00:00
bingwang-ms
d9cd1a1355 Add extra lossy PG profile for ports between T1 and T2 (#11157)
Signed-off-by: bingwang <wang.bing@microsoft.com>

Why I did it
This PR brings two changes

Add lossy PG profile for PG2 and PG6 on T1 for ports between T1 and T2.
After PR Update qos config to clear queues for bounced back traffic #10176 , the DSCP_TO_TC_MAP and TC_TO_PG_MAP is updated when remapping is enable

DSCP_TO_TC_MAP
Before	After	Why do this change
"2" : "1"	"2" : "2"	Only change for leaf router to map DSCP 2 to TC 2 as TC 2 will be used for lossless TC
"6" : "1"	"6" : "6"	Only change for leaf router to map DSCP 6 to TC 6 as TC 6 will be used for lossless TC

TC_TO_PRIORITY_GROUP_MAP
Before	After	Why do this change
"2" : "0"	"2" : "2"	Only change for leaf router to map TC 2 to PG 2 as PG 2 will be used for lossless PG
"6" : "0"	"6" : "6"	Only change for leaf router to map TC 6 to PG 6 as PG 6 will be used for lossless PG

So, we have two new lossy PGs (2 and 6) for the T2 facing ports on T1, and two new lossless PGs (2 and 6) for the T0 facing port on T1.
However, there is no lossy PG profile for the T2 facing ports on T1. The lossless PGs for ports between T1 and T0 have been handled by buffermgrd .Therefore, We need to add lossy PG profiles for T2 facing ports on T1.

We don't have this issue on T0 because PG 2 and PG 6 are lossless PGs, and there is no lossy traffic mapped to PG 2 and PG 6

Map port level TC7 to PG0
Before the PCBB change, DSCP48 -> TC 6 -> PG 0.
After the PCBB change, DSCP48 -> TC 7 -> PG 7
Actually, we can map TC7 to PG0 to save a lossy PG.

How I did it
Update the qos and buffer template.

How to verify it
Verified by UT.
2022-06-30 05:15:41 +00:00
Ying Xie
4ad895c312
[202205][pmon] advance submodule head (#11293)
pmon:
* 547acc0 2022-06-29 | [ycabled] add some retry logic for gRPC channel setup;fix no channel gRPC notification (#269) (HEAD -> 202205, github/202205) [vdahiya12]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-06-29 22:15:05 -07:00
Ying Xie
f16d4949bb
[202205][swss][linkmgrd] advance submodule head (#11275)
swss:
* 665bbbb 2022-06-27 | Add support for IP interface loopback action (#2307) (HEAD -> 202205, github/202205) [Lior Avramov]
* c7f5743 2022-06-28 | [asan] suppress the static variable leaks (#2354) [Yakiv Huryk]
* 37e2a31 2022-06-28 | [tests] [asan] add graceful stop flag (#2347) [Yakiv Huryk]
* 5ab84cf 2022-06-28 | [202205][cherry-pick] Fix mux_acl_rule adding issue (#2358) [bingwang-ms]

linkmgrd:
* a836ef7 2022-06-28 | Use Vlan MAC as src MAC for link prober by default  (#93) (HEAD -> 202205) [Jing Zhang]
* a828e86 2022-06-28 | Fix inconsistent mux state (#92) (github/202205) [Longxiang Lyu]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-06-28 19:46:55 -07:00
Junchao-Mellanox
097e315f08 [system-health] Fix error log system_service'state' while doing confi… (#11225)
- Why I did it
While doing config reload, FEATURE table may be removed and re-add. During this process, updating FEATURE table is not atomic. It could be that the FEATURE table has entry, but each entry has no field. This PR introduces a retry mechanism to avoid this.

- How I did it
Introduces a retry mechanism to avoid this.

- How to verify it
New unit test added to verify the flow as well as running some manual test.
2022-06-28 16:11:17 +00:00
Ze Gan
7d832d1a8a [submodule]: Update submodule for wpa-supplicant (#11264)
3f43852b8 [sonic_operators.cpp]: Increasing select timeout (#55)
a1142e251  [sonic_operators.cpp] Update sonic_db_manager::get_counter (#56)
1069d2dd4 [sonic_operators.cpp]: Fixbug wait with false positive to return success (#54)

Signed-off-by: Ze Gan <ganze718@gmail.com>
2022-06-28 16:10:50 +00:00
Jing Kan
68f6833d81 [minigraph] Support parse IPv6 in device_desc.xml (#11095)
Signed-off-by: Jing Kan jika@microsoft.com
2022-06-28 16:06:58 +00:00
Ying Xie
ae66e14f42
[202205][swss][swss-common][linkmgrd] advance submodule head (#11254)
swss:
* ad2d0ad 2022-06-24 | [PFC_WD] Avoid applying ZeroBuffer Profiles to ingress PG when a PFC storm is detected (#2304) (HEAD -> 202205) [Vivek R]
* ef75554 2022-06-25 | [swssconfig] Optimize performance of swssconfig (#2336) [Junchao-Mellanox]
* d9e9ba8 2022-06-24 | [fdborch] fix heap-use-after-free in clearFdbEntry() (#2353) [Yakiv Huryk]
* 585a69b 2022-06-24 | Create ACL table fails due to incorrect check for supported ACL actions #11235 (#2351) [Ravindranath C K]
* 0d19560 2022-06-24 | [macsec] Refactor the logic of macsec name map (#2348) [Junhua Zhai]
* 111dfc2 2022-06-23 | [macsec] Update macsec flex counter (#2338) (HEAD -> 202205, github/202205) [Junhua Zhai]

swss-common:
* 0213d55 2022-06-23 | [portcounter] Check if counter ID exists before arithmetic operation  (#632) (HEAD -> 202205, github/202205) [Junhua Zhai]
* c21c47e 2022-06-14 | [counter] Add counter table (#622) [Junhua Zhai]

utilities:
* 430cd65 2022-06-23 | [202205] [generate dump] Move the Core/Log collection to the End of process Execution and removed default timeout  (#2230) (github/202205) [Vivek R]

linkmgrd:
* 59334be 2022-06-24 | Remove exception throwing when initializing missing loopback interface (#90) (HEAD -> 202205) [Jing Zhang]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-06-27 08:35:31 -07:00
Stephen Sun
71c2b40491 Support LOSSLESS_TRAFFIC_PATTERN and DEFAULT_LOSSLESS_BUFFER_PARAMETER (#11058)
#### Why I did it
Support the following tables which were introduced during dynamic buffer calculation
- LOSSLESS_TRAFFIC_PATTERN
- DEFAULT_LOSSLESS_BUFFER_PARAMETER

#### How I did it

- LOSSLESS_TRAFFIC_PATTERN

|name|type|range|mandatory|description|
|---|---|---|---|---|
|mtu|uint16|64~10240|true|The maximum packet size of a lossless packet|
|small_packet_percentage|uint8|0~100|true|The percentage of small packet|

- DEFAULT_LOSSLESS_BUFFER_PARAMETER

|name|type|range|mandatory|description|
|---|---|---|---|---|
|default_dynamic_th|int8|-8~7|true|The default dynamic_th for all buffer profiles that are dynamically generated for lossless PG|
|over_subscribe_ratio|uint16|-|false|The oversubscribe ratio for shared headroom pool.|
|||||Semantically, the upper bound is the number of physical ports but it can not be represented in the yang module. So we keep the upper bound open. As the type is (signed) integer whose lower bound is 0 by nature, we do not need to specify the range.|

#### How to verify it
Run unit test
2022-06-24 05:16:20 +00:00
vmittal-msft
7c5567553f Updated buffer profile settings for TD3 based HWSKUs (Arista-7050CX3-32S-C32, Arista-7050CX3-32S-D48C8) (#11202)
* Updated buffer profile settings for TD3 based HWSKUs (Arista-7050CX3-32S-C32, Arista-7050CX3-32S-D48C8)
2022-06-24 05:15:14 +00:00
Ying Xie
f6f87f1a8c
[202205][swss][utilities][sairedis][pmon] advance submodule head (#11223)
swss:
* 43b9f06 2022-06-23 | [ACL] Support stage particular match fields (#2341) (HEAD -> 202205) [bingwang-ms]
* c7f1add 2022-06-22 | Fix qos map test in vs test (#2343) [bingwang-ms]
* 0549f3c 2022-06-22 | Fix for "orchagent crashed when trying to delete fdb static entry with swssconfig #11046" (#2332) [anilkpan]

utilities:
* 785508d 2022-05-25 | [GCU] Handling type1 lists (#2171) (HEAD -> 202205) [Mohamed Ghoneim]
* 56c2c6b 2022-06-22 | [config reload] Fixing config reload when timer based services are disabled (#2200) (#2226) (HEAD -> 202205, github/202205) [Sudharsan Dhamal Gopalarathnam]
* 600979e 2022-06-16 | Fix header for the output table following 'show ipv6 interface' command (#2219) [Dror Prital]

sairedis:
* 14fba45 2022-06-13 | [vslib]: Fixbug in cleanup MACsec device (#1059) (HEAD -> 202205) [Ze Gan]
* ac6e7ad 2022-04-29 | [vslib]: Update packet number of MACsec SA at runtime (#1007) [Ze Gan]

platform-daemons:
* 6ffec22 2022-06-22 | [ycabled] Fix the init values for active-active ports (#266) (HEAD -> 202205) [vdahiya12]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-06-23 16:14:00 -07:00
Neetha John
ef9fb9db05 [sonic-config-engine] Generate expected output with different cable len (#11092)
Why I did it
To address internal build failures where the cable len for some of the skus is set to 300m for all tiers.

How I did it
For the buffers test, generate a new output file based off the original expected output with CABLE_LENGTH table updated to use 300m. In the comparison logic, compare against each of the expected output files and if any matches, the testcase is set to pass

Signed-off-by: Neetha John <nejo@microsoft.com>
2022-06-23 02:33:57 +00:00
Neetha John
3304fcd3a5 [qos]: Adjust 7260 buffer sizes to accomodate extra lossless queues (#11018)
Why I did it
As part of PCBB changes, we need to enable 2 extra lossless queues. The changes in this PR are done to adjust only the reserved sizes on Th2 for the additional 2 lossless queues
Calculations are done based on 40 downlinks for T1 and 16 uplinks for dual ToR

How to verify it
Verified that the rendering works fine on Th2 dut
Unit tests have been updated to reflect the modified buffer sizes when pcbb is enabled. There are existing testcases that will test the original buffer sizes when pcbb is disabled. With these changes, was able to build sonic-config-engine wheel successfully

Signed-off-by: Neetha John <nejo@microsoft.com>
2022-06-23 02:33:48 +00:00
Lior Avramov
f9e93d2f31 Change severity of log messages for cases where docker container was stopped during service checker operation (#11188)
#### Why I did it
There might be a case where service checker periodic operation determined that specific container is running but when it tries to perform an operation on it, it was already closed by the user. This is a valid flow and we should not log an error message, informative warning is enough. 

#### How I did it
I reduce log severity.

#### How to verify it
I verified it manually.
2022-06-22 23:09:39 +00:00
Lior Avramov
e015232ebf Add IP interface loopback action related content to YANG models. (#11012)
*Add IP interface loopback action related content to the required YANG models.
2022-06-22 23:06:18 +00:00
bingwang-ms
6f713419ba Add two extra lossless queues for bounced back traffic (#10496)
Signed-off-by: bingwang <bingwang@microsoft.com>

Why I did it
This PR is to add two extra lossless queues for bounced back traffic.
HLD sonic-net/SONiC#950

SKUs include
Arista-7050CX3-32S-C32
Arista-7050CX3-32S-D48C8
Arista-7260CX3-D108C8
Arista-7260CX3-C64
Arista-7260CX3-Q64

How I did it
Update the buffers.json.j2 template and buffers_config.j2 template to generate new BUFFER_QUEUE table.

For T1 devices, queue 2 and queue 6 are set as lossless queues on T0 facing ports.
For T0 devices, queue 2 and queue 6 are set as lossless queues on T1 facing ports.
Queue 7 is added as a new lossy queue as DSCP 48 is mapped to TC 7, and then mapped into Queue 7

How to verify it
Verified by UT
Verified by coping the new template and generate buffer config with sonic-cfggen
2022-06-22 23:05:14 +00:00
Ying Xie
3ea8df3096
[202205][swss] advance submodule head (#11200)
swss:
* a3bfd96 2022-06-18 | Enhance mock test for dynamic buffer manager for port removing and qos reload flows (#2262) (HEAD -> 202205, github/202205) [Stephen Sun]
* b17d6c0 2022-05-28 | Support mock_test infra for dynamic buffer manager and fix issues found during mock test (#2234) [Stephen Sun]
* 3fb23a1 2022-06-16 | [aclorch] Fix and simplify DTel watchlist tables and entries (#2155) [Mickey Spiegel]
* 9ace643 2022-06-16 | [intfmgr]: Set proxy_arp kernel param (#2334) [Lawrence Lee]
* 013609a 2022-06-14 | [crmorch] Prevent exceededLogCounter from resetting when low and high values are equal (#2327) [Alexander Allen]
* 83a1306 2022-06-13 | Fix key generation in removeDecapTunnel (#2322) [Myron Sosyak]
* 3d018ad 2022-06-15 | Apply `DSCP_TO_TC_MAP` from `PORT_QOS_MAP|global` to switch level (#2314) [bingwang-ms]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-06-21 09:28:46 -07:00
jingwenxie
7a22cbff28
[202205][utilities] advance utilities submodule head (#11184)
13ec600 [generic-config-updater] Add NTP validator (#2212)
4fc09b1 [GCU] Handling non-compliant leaf-list with string values (#2174)
ac89489 Modify override testcase to cover PORT admin_status (#2165)
d7953d2 [GCU] Validate peer_group_range ip_range are correct (#2145)
2022-06-20 09:02:24 -07:00
bingwang-ms
16c424b081 Update YANG for PORT_QOS_MAP to support switch level mapping (#11089)
Signed-off-by: bingwang <wang.bing@microsoft.com>

Co-authored-by: Neetha John <nejo@microsoft.com>
2022-06-17 03:31:43 +00:00
bingwang-ms
255d77e610 Generate switch level dscp_to_tc_map entry from qos_config template (#11087)
* Generate switch level dscp_to_tc_map

Signed-off-by: bingwang <wang.bing@microsoft.com>
2022-06-17 03:31:32 +00:00
yozhao101
8a76cdc66e [hostcfgd] Initialize Restart= in feature's systemd config by the value of auto_restart in CONFIG_DB (#10915)
Why I did it
Recently the nightly testing pipeline found that the autorestart test case was failed when it was run against master image. The reason is Restart= field in each container's systemd configuration file was set to Restart=no even the value of auto_restart field in FEATURE table of CONFIG_DB is enabled.

This issue introduced by #10168 can be reproduced by the following steps:

Issues the config command to disable the auto-restart feature of a container
Runs command config reload or config reload minigraph to enable auto-restart of the container
Checks Restart= field in the container's systemd config file mentioned in step 1 by running the command
sudo systemctl cat <container_name>.service
Initially this PR (#10168) wants to revert the changes proposed by this: #8861. However, it did not fully revert all the changes.

How I did it
When hostcfgd started or was restarted, the Restart= field in each container's systemd configuration file should be initialized according to the value of auto_restart field in FEATURE table of CONFIG_DB.

How to verify it
I verified this change by running auto-restart test case against newly built master image and also ran the unittest:
2022-06-17 00:58:10 +00:00
vdahiya12
bb8e12fe94
[202205][sonic-platform-daemons] submodule update (#11169)
The following commits are pushed

1f112b8 (HEAD -> 202205, origin/202205) [sonic-ycabled] fix grpc logic for timeout,cli HWSTATUS value retrival logic for active-active cable (#264)

Signed-off-by: vaibhav-dahiya vdahiya@microsoft.com
2022-06-16 16:01:14 -07:00
Ying Xie
f14d2ae5e3
[202205][linkmgr] advance submodule head (#11158)
linkmgrrd:
* d6518dd 2022-06-14 | Fix IP header checksum in handleSendSwitchCommand (#88) (HEAD -> 202205, github/202205) [Jing Zhang]

swss:
* 4430445 2022-06-03 | Add port counter sanity check (#2300) (HEAD -> 202205, github/202205) [Junhua Zhai]
* 01b017c 2022-05-28 | [counter] Support gearbox counters (#2218) [Junhua Zhai]

utilities:
* ce96543 2022-05-26 | [subinterface]Avoid removing the subinterface when last configured ip is removed (#2181) (HEAD -> 202205, github/202205) [Sudharsan Dhamal Gopalarathnam]
* ed97c6f 2022-05-26 | [subinterface] Fix route add command to accept subinterface as dev (#2180) [Sudharsan Dhamal Gopalarathnam]
* 53ff644 2022-06-09 | [gendump] Add Support to dump BCM-DNX commands (#1813) [saksarav-nokia]
* 0e31790 2022-06-15 | [config][muxcable] fix minor config DB logic issue (#2210) [vdahiya12]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-06-16 15:59:55 -07:00
zitingguo-ms
ae90bfae4b [AN/LT][Fix bug]:enable phy_an_lt_msft attribute on some platforms (#11147) 2022-06-16 02:13:22 +00:00
StormLiangMS
a4c8290637
[202205] [submodule] Advanced sonic-swss (#11137)
submodule advance
Commit included:

54a9828 - (HEAD, public/202205) Combine PGs in buffermgrd (https://github.com/Azure/sonic-buildimage/pull/2281) (https://github.com/Azure/sonic-buildimage/pull/2329) (6 minutes ago)
2022-06-15 17:03:49 -07:00
Richard.Yu
3467f434e8 [Tunnel PFC][Fix bug] Fix bug and Tests for adding property 'sai_remap_prio_on_tnl_egress' (#11027)
* [Tunnel PFC] Tests for adding property 'sai_remap_prio_on_tnl_egress'

Add tests for adding property 'sai_remap_prio_on_tnl_egress', this
property should only be added in dual tor environment.

Test done:
Run test test_j2files.py

Co-authored-by: richardyu <richardyu@contoso.com>
2022-06-14 14:59:14 +00:00
Ying Xie
c7d8f51c68
[202205][linkmgrd][sairedis] advance submodule head (#11091)
linkmgrd:
* 2da783b 2022-06-07 | Check self's mux mode before switching peer to standby & add support for `detach` mode (#79) (HEAD -> 202205, github/202205) [Jing Zhang]

sairedis:
* 54642c7 2022-06-09 | [counter] Fix port flex counter  (#1052) (HEAD -> 202205, github/202205) [Junhua Zhai]
* b7f5f92 2022-06-06 | [ci] Paralize azure pipeline  (#1054) [Shilong Liu]

swss:
* 77043fb 2022-06-09 | [fpmsyncd] don't manipulate route weight (#2321) (HEAD -> 202205, github/202205) [Ying Xie]
* ae157f1 2022-06-10 | Fix test_warm_reboot issues blocking PR merge (#2309) (#2318) [Shilong Liu]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-06-10 07:42:43 -07:00
vdahiya12
d4c4993282
[202205][sonic-utilities] submodule update (#11065)
0fc6f47 (HEAD -> 202205, origin/202205) [config][muxcable] Add support for displaying soc_ipv4 and cable_type in config/show muxcable commands (#2189)

Signed-off-by: vaibhav-dahiya vdahiya@microsoft.com
2022-06-08 19:50:48 -07:00
Ying Xie
f6f0aaaad8
[202205][linkmgrd] advance submodule head (#11033)
linkmgrd:
* d27ca81 2022-06-05 |  Separate I2C mux state probing and gRPC forwarding state probing  (#86) (HEAD -> 202205) [Jing Zhang]
* 9d7d301 2022-06-01 | Revert "Update log level for mux probing and mux state chance (#23)" (#85) [Jing Zhang]
* 60d3d77 2022-06-05 | Fix peer mux wait back off factor (#84) [Longxiang Lyu]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-06-05 08:34:33 -07:00
bingwang-ms
76502c821e Update qos template to support SYSTEM_DEFAULT table (#10936)
* Update qos template to support SYSTEM_DEFAULT table

Signed-off-by: bingwang <wang.bing@microsoft.com>
2022-06-05 15:21:10 +00:00
Ying Xie
0a01faa383
[202205][linkmgrd] advance submodule heads (#11016)
linkmgrd:
* 3c2b546 2022-05-31 | Add default route support to `active-active` state machine (#78) (github/202205, master, 202205) [Jing Zhang]
* 6fa892e 2022-05-27 | Degrade `LinkProberStateMachineBase` virtual function logging level (#80) [Longxiang Lyu]
* 7b695ca 2022-05-27 | Fix mux wait timer and peer mux wait timer (#81) [Longxiang Lyu]

platform-daemons:
* 0d90023 2022-05-31 | grpc client implementation for active-active dualtor (#248) (github/master, github/202205, master, 202205) [vdahiya12]
* 6b8bf69 2022-05-27 | [ycabled] Fix some syntax warnings in ycabled (#263) [vdahiya12]
* 2bcf936 2022-05-24 | [ycabled] fix the posting for mux_cable_static_info per downlink when ycabled is spawned; synchronizing executing Telemetry API (#257) [vdahiya12]
* ce217c0 2022-04-25 | Include changes from xcvr_api in transceiver_info table (#253) [qinchuanares]
* e0f8a35 2022-04-22 | Fix checkReplyType failed issue via recreating xcvr_table_helper on forking subprocess (#255) [Stephen Sun]

platform-common:
* f575a40 2022-05-24 | [Credo][Ycable] changes for synchronizing executing Telemetry API's when mux toggle is inprogress (#280) (github/202205, master, 202205) [vdahiya12]
* b043372 2022-05-11 | [sonic_ssd] Nokia-7215: "show platform ssdhealth" not showing health percent (#279) [bill-nokia]
* d62d3d6 2022-05-04 | [CMIS]Fix low-power to high power mode transition (#268) [Prince George]
* f918125 2022-05-02 | [syseeprom] Enable display of vendor extension TLV content (#270) [dflynn-Nokia]
* 4e08440 2022-04-14 | [Credo][Ycable] improve logging for Server Powered off/Faulty cables (#272) [vdahiya12]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-06-02 11:49:34 -07:00
Ying Xie
b6aafc1fde
[202205][swss] advance swss submodule head (#11014)
Including change:

* 7ff8f75 2022-06-03 | Revert "[portsorch]: Prevent LAG member configuration when port has active ACL binding (#2165)" (#2306) (HEAD -> 202205, github/202205) [bingwang-ms]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-06-02 10:36:52 -07:00
Jing Zhang
b3e33d4f45
[sonic-linkmgrd][master] submodule updates (#10925)
[sonic-linkmgrd][master] submodule updates

d744bfb Longxiang Lyu Wed May 25 08:40:42 2022 +0800 Support switch between using wellknown mac or server mac addr (#73)
684e989 Jing Zhang Wed May 18 09:59:02 2022 -0700 Avoid switching active when LinkState == Down (#77)
e4aa4fd Longxiang Lyu Tue May 17 09:13:23 2022 +0800 [Makefile] Remove redundant optimization options (#75)
4ec7505 Jing Zhang Thu May 12 08:19:20 2022 -0700 [ci]: uplift diff coverage threshold to 80% (#71)

sign-off: Jing Zhang zhangjing@microsoft.com
2022-05-29 22:53:46 -07:00
xumia
b9ecaa3234
[Build]: Support to use the base image version when a package version not specified (#10971)
Why I did it
It is to fix issue: #10952
[Build]: Support to use the base image version when a package version not specified
2022-05-30 12:06:32 +08:00
Ying Xie
ed27eff71f
[swss] advance sonic-swss submodule head (#10959)
* 910bfd4 2022-05-28 | [ACL] Add default action_list for default ACL table type (#2298) (github/master) [bingwang-ms]
* 4d6fa42 2022-05-27 | [ci] Change artifact reference pipeline to common lib pipeline. (#2294) [Shilong Liu]
* 583236f 2022-05-26 | [P4Orch] Lazy UDF match creation to avoid failure during warm reboot (#2282) [Yilan Ji]
* d7b5ff7 2022-05-26 | [ci] Use correct branch when downloading artifact. (#2292) [Shilong Liu]
* 2f13244 2022-05-26 | [ci] Improve azp trigger settings to automaticlly support new release branch. (#2289) [Shilong Liu]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2022-05-30 09:21:03 +08:00
davidpil2002
ab0930313b
[YANG] Add support for Password Hardening (#10322)
- Why I did it
Yang Model about password hardening feature, the sonic CLI of this feature was autogenerated from this Yang model

- How I did it
Create new Yang model in src/sonic-yang-models/yang-models/sonic-passwh.yang.

- How to verify it
There are unitests(yang test) in this P.R covering all the passwords policies with good and bad values cases.
Or is possible manually using the config/show password commands that were autogenerated from this Yang model. (this CLI code added in sonic-utilities)
2022-05-29 13:54:51 +03:00
bingwang-ms
b62526c46c
Define SYSTEM_DEFAULTS table to control tunnel_qos_remap (#10877)
* Define SYSTEM_DEFAULTS table to control tunnel_qos_remap

Signed-off-by: bingwang <wang.bing@microsoft.com>
2022-05-28 15:34:28 +08:00
Ze Gan
9bf84fcad5
[submodule]: Update submodule for sonic-wpa-supplicant (#10957)
1069d2dd4 [sonic_operators.cpp]: Fixbug wait with false positive to return success

Signed-off-by: Ze Gan <ganze718@gmail.com>
2022-05-28 12:01:32 +08:00
Neetha John
1bce88ad29
[sonic-config-engine] Fix typo in hwsku name in sample graph (#10941)
Signed-off-by: Neetha John <nejo@microsoft.com>

Why I did it
There was a typo in hwsku specified as part of #10889

How I did it
Replaced with the correct hwsku

How to verify it
test_cfggen.py is passing
2022-05-27 09:46:23 -07:00
Sudharsan Dhamal Gopalarathnam
441cd1d283
[yang] add Sample configuration for ACL_TABLE_TYPE (#10937)
Signed-off-by: Sudharsan Dhamal Gopalarathnam <sudharsand@nvidia.com>
2022-05-27 09:45:29 -07:00
Hua Liu
054eb25c85
Update sonic-swss-common submodule (#10872)
Updating sonic-utilities sub module with the following commits

    84dbd93 Clear the fvs vector before popping the message out of notification
    a90b2b7 selectabletimer: add mutex to start() and stop()
    7ae22be Fix SIGTERM can't terminate PubSub::listen issue

#### Why I did it

    To fix hostcfgd can't terminate by sigint issue, need update sonic-swss-common submodule.  

#### How I did it

#### How to verify it

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

#### Description for the changelog

    84dbd93 Clear the fvs vector before popping the message out of notification
    a90b2b7 selectabletimer: add mutex to start() and stop()
    7ae22be Fix SIGTERM can't terminate PubSub::listen issue

#### A picture of a cute animal (not mandatory but encouraged)
2022-05-27 08:58:40 +08:00
AmitKaushik7
e61bfd7bb4
Add crm sample data for snat/dnat/ipmc entries for Yang Model (#10865)
#### Why I did it
For yang model, sample_config_db.json file was missing Sample data for the features SNAT/DNAT/IPMC

#### How I did it
Added the SNAT,DNAT,IPMC(low Threshold/high threshold/threshold_type)entries in CRM table.

#### How to verify it
With sanity Build/test only.
2022-05-26 11:50:07 -07:00
Dror Prital
a5932e3264
[submodule] Advanced sonic-swss pointer (#10926)
[muxorch] Handling optional attributes in muxorch (#2288)
Update netlink messages handler (#2233)
Broadcast Unknown-multicast and Unknown-unicast Storm-control (#1306)
[vstest]: Increase PollingConfig default timeout (#2285)
[FDB] Fix fbdorch to properly handle syncd FDB FLUSH Notif (#2254)
[macsecorch]: Support for non-default sa per sc (#2250)
Migrating the NAT vs tests from Click to direct DB access (#2278)
[neighsync] Ignoring IPv4 link local addresses (#2260)
[IntfMgrd] Retry adding ipv6 prefix by setting disabled_ipv6 flag  (#2267)
Increase Redis Timeout value for Switch Create Opration for Packet (#2243)
Update fdborch.cpp (#2261)

Signed-off-by: dprital <drorp@nvidia.com>
2022-05-26 18:33:59 +03:00
Kebo Liu
c618a653a1
[yang] Support new interface types CR8/SR8/KR8/LR8 (#10826)
- Why I did it
With SAI V.1.10.2, new interface types CR8/SR8/KR8/LR8 have been introduced, we should also support them from the CLI configuration.

- How I did it
Add new enum for the new interface types

- How to verify it
Run the "config interface type" command to verify new interface types can be accepted and handled correctly.

Signed-off-by: Kebo Liu <kebol@nvidia.com>
2022-05-26 18:16:23 +03:00
xumia
cc9a4beb0c
Touch the donwload files to change the modified time (#10929)
Why I did it
It is to improve the build performance, when building multiple targets.
The modified time of downloaded files should be not older than the file .platform.
If not, the file will be downloaded again, when building any dependent targets.

How I did it
When downloading the packages from web site, the modified time will be changed by the command "touch".
2022-05-26 21:55:13 +08:00
Neetha John
b5e59a1355
[sonic-config-engine] Change hwsku for sample graph in unit tests (#10889)
#### Why I did it
To ensure that some internal testcases do not break due to external changes

#### How to verify it
Ran test_cfggen.py with the changes and it passed
2022-05-25 15:48:02 -07:00
Zain Budhwani
8315d11959
Add YANG model and unit tests for sonic-telemetry (#10840)
- Why I did it

YANG schema is missing for sonic-telemetry

- How I did it

Added YANG schema to sonic-yang-models and appropriate unit tests inside of test and test_config

- How to verify it

Build sonic-yang-models python wheels target and verify that unit tests are passing
2022-05-25 10:17:47 -07:00
Hasan Naqvi
a477dbb175
Frr 8.2 upgrade (#10691)
Why I did it
Upgrade FRR to version 8.2.2. Build libyang2 required by FRR.

How I did it
Update FRR version and tag.

How to verify it
Following tests were performed on sonic-vs:

BGP docker status check
BGP configuration and session establishment
Route redistribution and ping
Issued show commands to check the bgp neighbor and routes
Checked app-db to ensure bgp routes are installed with correct interface and nexthop.
Create VRF and check FRR knows the VRF
Check VRF routes are installed in app-db with correct Vrf name and next-hop
Establish BGP Evpn session and check if Evpn routes (multicast, mac, prefix) are exchanged and installed correctly in app-db.
2022-05-24 14:47:09 -07:00
kellyyeh
2ead3aaefc
[dhcp6relay] Fix option parsing and add dhcpv6 client messages (#10819) 2022-05-24 14:37:16 -07:00
arlakshm
915f2834b0
[voq][chassis]fix recirc port admin status (#10769)
Signed-off-by: Arvindsrinivasan Lakshmi Narasimhan arlakshm@microsoft.com

Why I did it
resolves #10761.
For VOQ chassis, the Recirc port, which was added for the Everflow, stays admin down after load minigraph.
This PR add the fix to make the recirc port as admin up

How I did it
The PR adds a change in minigraph.py,  if port has role as Rec make the the port as admin-status up.

How to verify it
UT

Signed-off-by: Arvindsrinivasan Lakshmi Narasimhan <arlakshm@microsoft.com>
2022-05-24 14:36:09 -07:00
Ze Gan
a6b1b0a968
[submodule]: Update submodule for sonic-wpa-supplicant (#10904)
64caafe38 [driver_macsec_sonic]: Fixing missing zeros at the beginning of SCI (#52)

Signed-off-by: Ze Gan <ganze718@gmail.com>
2022-05-25 05:25:57 +08:00
Longxiang Lyu
8f7ef1e593
[dualtor][minigraph.py] Add soc_ipv4 and cable_type to MUX_CABLE (#10776)
Why I did it
To further add cable_type and soc_ipv4 field to table MUX_CABLE, this PR tries to parse the minigraph like the following:
```
      <Device i:type="SmartCable">
        <ElementType>SmartCable</ElementType>
        <SubType>active-active</SubType>
        <Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
          <d5p1:IPPrefix>192.168.0.3/21</d5p1:IPPrefix>
        </Address>
        <AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
          <d5p1:IPPrefix>::/0</d5p1:IPPrefix>
        </AddressV6>
        <ManagementAddress xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
          <d5p1:IPPrefix>0.0.0.0/0</d5p1:IPPrefix>
        </ManagementAddress>
        <ManagementAddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
          <d5p1:IPPrefix>::/0</d5p1:IPPrefix>
        </ManagementAddressV6>
        <SerialNumber i:nil="true" />
        <Hostname>svcstr-7050-acs-1-Servers0-SC</Hostname>
      </Device>
      <Device i:type="Server">
        <ElementType>Server</ElementType>
        <Address xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
          <d5p1:IPPrefix>192.168.0.2/21</d5p1:IPPrefix>
        </Address> 
        <AddressV6 xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
          <d5p1:IPPrefix>fc02:1000::2/64</d5p1:IPPrefix>
        </AddressV6>
        <ManagementAddress xmlns:d5p1="Microsoft.Search.Autopilot.NetMux">
          <d5p1:IPPrefix>0.0.0.0/0</d5p1:IPPrefix>
        </ManagementAddress>
        <Hostname>Servers0</Hostname>
      </Device>
```
Signed-off-by: Longxiang Lyu lolv@microsoft.com

How I did it
get_mux_cable_entries will try to get the mux cable device from the devices list and get the cable type and soc ip address from the device definition.

How to verify it
Pass the unit-test
2022-05-24 15:10:48 +08:00
Song Yuan
b23ad6748a
[Arista] Add QOS and buffer profiles for SKU Arista-7800R3-48CQM2-C48 (#10752)
* Add QOS and buffer profiles for Arista SKU.

* Add unit test for SKU Arista-7800R3-48CQM2-C48.
2022-05-23 13:50:04 -07:00
Senthil Kumar Guruswamy
f37dd770cd
System Ready (#10479)
Why I did it
At present, there is no mechanism in an event driven model to know that the system is up with all the essential sonic services and also, all the docker apps are ready along with port ready status to start the network traffic. With the asynchronous architecture of SONiC, we will not be able to verify if the config has been applied all the way down to the HW. But we can get the closest up status of each app and arrive at the system readiness.

How I did it
A new python based system monitor tool is introduced under system-health framework to monitor all the essential system host services including docker wrapper services on an event based model and declare the system is ready. This framework gives provision for docker apps to notify its closest up status. CLIs are provided to fetch the current system status and also service running status and its app ready status along with failure reason if any.

How to verify it
"show system-health sysready-status" click CLI
Syslogs for system ready
2022-05-20 13:25:11 -07:00
abdosi
4fd629c021
Added Support for BGP allow list feature to have route-map action of setting tag (#10731)
What I did:
Added support to create route-map action set tag <user define value>
when the the allow prefix list matches. The tag can ben define by user in
constants.yml.

Why I did:
Since for Allow List feature we call from base route-map allow-list route-map having set tag option provides way for base route-map to do match tag and take any further action if needed. Adding tag provide metadata that can used by base route-map
2022-05-19 22:51:02 -07:00
Ze Gan
b21cd70955
[Submodule]: update submodule for sonic-swss and sonic-wpa-supplicant (#10842)
Signed-off-by: Ze Gan <ganze718@gmail.com>
2022-05-20 01:21:11 +08:00
StormLiangMS
0cc9fdc69b
[bgpcfgd] ECMP overlay VxLan with BGP support (#10716)
Why I did it
https://github.com/Azure/SONiC/blob/master/doc/vxlan/Overlay%20ECMP%20with%20BFD.md
From the design, need to advertise the route with community string, the PR is to implement this.

How I did it
To use the route-map as the profile for the community string, all advertised routes can be associated with one route-map.
Add one file, mangers_rm.py, which is to add/update/del the route-map. Modified the managers_advertise_rt.py file to associate profile with IP route.

The route-map usage is very flexible, by this PR, we only support one fixed usage to add community string for route to simplify this design.

How to verify it
Implement new unit tests for mangers_rm.py and updated unit test for managers_advertise_rt.py.
Manually verified the test case in the test plan section, will add testcase in sonic-mgmt later. Azure/sonic-mgmt#5581
2022-05-19 10:07:31 +08:00
Lawrence Lee
70e8ad325d
[scapy]: Patch scapy 2.4.5 for sniffing on intfs (#10644)
Apply scapy fix (https://github.com/secdev/scapy/pull/3240) since it is not available in release yet

Signed-off-by: Lawrence Lee <lawlee@microsoft.com>
2022-05-18 13:01:27 -07:00
lizhuhuams
9e3f1c7914
Revert "[reboiot-cause] Fix a broken symlink of previous-reboot-cause file removal issue (#10751)" (#10849)
This reverts commit dee7655526.

Co-authored-by: Ubuntu <lizhuhua@lh-dev-vm-01.ziurp3vhri5utcxng1kcl2l1qa.xx.internal.cloudapp.net>
2022-05-18 10:37:32 -07:00
Qi Luo
59e11f6e79
Update Configuration doc: fix separator and indentation (#10839)
Update Configuration doc: fix separator and indentation
2022-05-17 09:38:12 -07:00
ganglv
1db50e54c8
[sonic-cfggen]: Update UT to run yang validation (#9700)
Why I did it
Config db schema generated by minigraph should run yang validation.

How I did it
Modify run_script to add yang validation.

How to verify it
Run sonic-config-engine unit test.

Signed-off-by: Gang Lv ganglv@microsoft.com
2022-05-16 11:42:20 +08:00
Dante (Kuo-Jung) Su
4b581f1e9d
sonic-port.yang: add link training support (#10025)
This is part of HLD  Azure/SONiC#925

#### Why I did it
Add link-training support

#### How I did it
Update SONiC YANG for port link-training support

#### Description for the changelog
Add "link_training" to sonic-port.yang

#### Link to config_db schema for YANG module changes

https://github.com/sonic-net/SONiC/wiki/Configuration#port
2022-05-15 12:52:22 -07:00
Longxiang Lyu
5eda219bdc
[sonic-config-gen] Modify lag names to enforce 15 chars limit (#10792)
Why I did it
Previous subport unit tests uses port channel names like PortChannel01, so for subport name generated PortChannel01.10, it exceeds Linux network interface name 15 char limit.

Signed-off-by: Longxiang Lyu lolv@microsoft.com

How I did it
Modify PortChannel01 to PortChannel1.
2022-05-15 13:02:49 +08:00
arlakshm
4a1e7d8581
remove voq chassis check (#10805)
Why I did it
Fixes #10793

How I did it
Removed the switch_type validation from the Yang model.

How to verify it
compile sonic_yang_mgmt-1.0-py3-none-any.whl and sonic_yang_mgmt-1.0-py3-none-any.whl

Signed-off-by: Arvindsrinivasan Lakshmi Narasimhan <arlakshm@microsoft.com>
2022-05-13 06:56:11 +08:00
Junchao-Mellanox
9887e76ca2
[submodule] Advance sonic-utilities pointer (#10670)
288c2d8 Revert "[scripts/fast-reboot] Shutdown remaining containers through systemd (#2133)" (#2161)
bce4694 [autoneg] add support for remote speed advertisement (#2124)
a73f156 [show][vrf]Fixing show vrf to include vlan subinterface (#2158)
7a06457 [auto_ts] Enable register/de-register auto_ts config for APP Extension (#2139)
083ebcc Add transceiver-info items advertised for cmis-supported moddules (#2135)
0811214 Validate destination port is not LAG (#2053)
6ab1c51 [minigraph]  Consume golden_config_db.json while loading minigraph (#2140)
c37a957 [Kdump] Remove the duplicate logic if Kdump was disabled (#2128)
1143869 Ordering fix for sfpshow eeprom (#2113)
fdb79b8 Allow fw update for other boot type against on the previous "none" boot fw update (#2040)
a54a091 [GCU] Supressing YANG errors from libyang while sorting (#1991)
fbfa8bc [GCU] Enabling AddRack and adding RemoveRack tests (#2143)
d012be9 [Command-Reference] Add CLI docs for route flow counter (#2069)
8c07d59 [Mellanox] [reboot] [asan] stop asan-enabled containers on reboot (#2107)
697aae3 Fix speed parsing when speed is NOT fetched from APPL_DB (#2138)
22a388b [show] fix get routing stack routine (#2137)
cb3a047 Support option --ports of config qos reload for reloading ports' QoS and buffer configuration to default (#2125)
154a801 Enhance "config interface type/advertised-type" to be blocked on RJ45 ports  (#2112)
3732ac5 Add CLI for route flow counter feature (#2031)
29771e7 [techsupport] improve robustness (#2117)
f9dc681 [intfutil] Display RJ45 port and portchannel speed in 'M' instead of 'G' when it's <= 1000M (#2110)
781ae9f [config] Do not enable pfcwd for BmcMgmtToRRouter (#2136)
23e9398 [scripts/fast-reboot] Shutdown remaining containers through systemd (#2133)
576c9ef [scripts/fast-reboot] stop timers in advance (#2131)
4dad79c bugfix: incorrect command for portchannel creation (#2134)
c17b1f4 [show][muxcable] Decrease the timeout for show mux status/hwmode (#2130)
49d61f8 [scripts/fast-reboot] cleanup (#2132)
52ca324 [config/config_mgmt.py]: Fix dpb issue with upper case mac in (#2066)
9e2fbf4 Update db_migrator to support `pfcwd_sw_enable` (#2087)
4010bd0 FGNHG CLI changes (#1588)
6bd54d0 Fix 'show mac' output when FDB entry for default vlan is None instead of 1 (#2126)
2022-05-12 07:36:59 +03:00
Marty Y. Lok
dee7655526
[reboiot-cause] Fix a broken symlink of previous-reboot-cause file removal issue (#10751)
Signed-off-by: mlok <marty.lok@nokia.com>
2022-05-11 10:07:04 -07:00
rajendra-dendukuri
04175eb34a
SONiC Yang model support for Kdump (#10786)
#### Why I did it
Created SONiC Yang model for Kdump
Tables: KDUMP

#### 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.
2022-05-10 23:25:06 -07:00
Saikrishna Arcot
949e76a00f
Update Linux kernel from 5.10.46 to 5.10.103 (#10634)
Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2022-05-10 13:46:31 -07:00
Sudharsan Dhamal Gopalarathnam
0f6eb29460
[caclmgrd]Added logic to allow BFD port numbers (#10735)
* [caclmgrd]Added logic to allow BFD port numbers
2022-05-09 10:58:00 -07:00
Ze Gan
71a515e14b
[iproute2]: Fix format error of SSCI (#10767)
Signed-off-by: Ze Gan <ganze718@gmail.com>

#### Why I did it
The SSCI is wrong in the output of MACsec so that the virtual SAI cannot parse the output corretly.
The wrong output:
```
142: macsec_eth1: protect on validate strict sc off sa off encrypt on send_sci on end_station off scb off replay off
    cipher suite: GCM-AES-XPN-256, using ICV length 16
    TXSC: 5254008f4f1c0001 on SA 0
        0: PN 103, state on, key 12cbc4b64e26c9a1ba14d810da20d16e
 SSCI 33554432,    RXSC: 525400edac5b0001, state on
        0: PN 107, state on, key 12cbc4b64e26c9a1ba14d810da20d16e
    offload: off
```
Expected
```
142: macsec_eth1: protect on validate strict sc off sa off encrypt on send_sci on end_station off scb off replay off
    cipher suite: GCM-AES-XPN-256, using ICV length 16
    TXSC: 5254008f4f1c0001 on SA 0
        0: PN 252, state on, SSCI 33554432, key 12cbc4b64e26c9a1ba14d810da20d16e
    RXSC: 525400edac5b0001, state on
        0: PN 264, state on, key 12cbc4b64e26c9a1ba14d810da20d16e
```
#### How I did it
Move SSCI before the key so that SSCI will not be the front of SC information.
2022-05-07 17:14:36 +08:00
Robert J. Halstead
7e190c783a
[submodule] Advance sonic-p4rt/sonic-pins pointer (#10566)
#### Why I did it

To pick up new commits:
*  60d2467 Add depends to p4rt debian package

#### How I did it

update sonic-p4rt/sonic-pins submodule pointer

#### How to verify it

should be able to build with p4rt enabled.
2022-05-06 15:35:20 -07:00
Qi Luo
45c5ca089c
Fix: No explicit reading ConfigDB in get_asic_conf_file_path() (#10723)
#### Why I did it
This function is critical for is_multi_asic() and SonicDBConfig initializing. No explicit reading ConfigDB. Otherwise it will implicitly trigger SonicDBConfig initializing.

#### How I did it
1. No explicit reading ConfigDB in get_asic_conf_file_path()
2. Collect asic_conf_path_candidates lazily to prevent any unnecessary side effect and improve the performance
2022-05-06 14:22:23 -07:00
Jing Zhang
322363b9ab
[master][sonic-linkmgrd] submodule updates (#10763)
[master][sonic-linkmgrd] submodule updates

df51322 Longxiang Lyu   Fri May 6 10:01:46 2022 +0800   Add `ActiveActiveStateMachine` implementation (#64)
e721ceb Jing Zhang      Wed May 4 10:07:14 2022 -0700   Add doc for default route related changes  (#63)
7bb06fb Jing Zhang      Tue May 3 09:48:28 2022 -0700   Add Cli support to enable or disable default route related feature (#68)
e4b02cb Jing Zhang      Mon May 2 13:27:54 2022 -0700   Reset WaitActiveUp count before switching to active (#70)
212d960 Jing Zhang      Wed Apr 27 10:35:05 2022 -0700  lower log level to warning (#69)
48abc9e Jing Zhang      Thu Apr 14 16:50:04 2022 -0700  Add support to enable switchover time measurement (with link prober interval decreased to 10ms) feature  (#61)
c4858a6 Jing Zhang      Thu Apr 14 11:27:55 2022 -0700  Avoid proactively switching to `active` if default route is missing  (#62)

sign-off: Jing Zhang zhangjing@microsoft.com
2022-05-06 13:42:23 -07:00
arlakshm
25357d39ed
[sonic-swss-common] submodule update (#10747)
Signed-off-by: Arvindsrinivasan Lakshmi Narasimhan <arlakshm@microsoft.com>

Why I did it
submodule update for the following commits

7a203b1  [chassis] Add new tables in counter db for Voq counter support. (#530)
5effea3 add new table schema for bgp profile (#608)
130dca5 [ci] Update azure pipeline branch variable reference.
708ed39 [ci] Parameterize pipeline and improve azure pipeline (#599)
9c08456 Added new P4RT tables. (#604)
2022-05-06 13:23:20 -07:00
SuvarnaMeenakshi
66c96eaf4c
Revert "[portconfig]: Remove try block for db config initialization (#10581)" (#10756)
This reverts commit 5cd6bc4ce2.
2022-05-06 11:12:56 -07:00
vmittal-msft
9ae17e66a3
[sonic-sairedis update] Support for SAI header v1.10.2 with BRCM SAI v7.1.0.0 and MLNX SAI v1.21.1.0 (#10583) 2022-05-05 20:27:29 -07:00
kellyyeh
cfdb8431df
[dhcp6relay] Add dhcpv6 option check (#10486) 2022-05-05 18:04:14 -07:00
xumia
8ec8900d31
Support SONiC OpenSSL FIPS 140-3 based on SymCrypt engine (#9573)
Why I did it
Support OpenSSL FIPS 140-3, see design doc: https://github.com/Azure/SONiC/blob/master/doc/fips/SONiC-OpenSSL-FIPS-140-3.md.

How I did it
Install the fips packages.
To build the fips packages, see https://github.com/Azure/sonic-fips
Azure pipelines: https://dev.azure.com/mssonic/build/_build?definitionId=412

How to verify it
Validate the SymCrypt engine:

admin@sonic:~$ dpkg-query -W | grep openssl
openssl 1.1.1k-1+deb11u1+fips
symcrypt-openssl        0.1

admin@sonic:~$ openssl engine -v | grep -i symcrypt
(symcrypt) SCOSSL (SymCrypt engine for OpenSSL)
admin@sonic:~$
2022-05-06 07:21:30 +08:00
Qi Luo
db94886ac9
[sonic-snmpagent] Update submodule (#10736)
Includes below commits
```
1477c36 2022-05-04 | Fix: if routestr does not exist, skip (#257) [Qi Luo]
5c08435 2022-05-04 | Add VoQ Recirc interface (i.e., Ethernet-Rec) to interface maps for S… (#244) [Song Yuan]
57f1af6 2022-05-02 | Fix: not to use blocking get_all() after keys() (#255) [Qi Luo]
33fdf9d 2022-04-06 | [RFC2737, RFC3433] Exclude RJ45 port from Entity MIB and Entity sensor MIB (#247) [Kebo Liu]
```
2022-05-05 10:24:00 -07:00
Junchao-Mellanox
f8501224b4
[YANG] Fix issue: Non compliant leaf list in config_db schema (#10291)
#### Why I did it

Fix issue: Non compliant leaf list in config_db schema: https://github.com/Azure/sonic-buildimage/issues/9801

#### How I did it

The basic flow of DPB is like:
1.	Transfer config db json value to YANG json value, name it “yangIn”
2.	Validate “yangIn” by libyang
3.	Generate a YANG json value to represent the target configuration, name it “yangTarget”
4.	Do diff between “yangIn” and “yangTarget”
5.	Apply the diff to CONFIG DB json and save it back to DB
 
The fix:
•	For step #1, If value of a leaf-list field string type, transfer it to a list by splitting it with “,” the purpose here is to make step#2 happy. We also need to save <table_name>.<key>.<field_name> to a set named “leaf_list_with_string_value_set”.
•	For step#5, loop “leaf_list_with_string_value_set” and change those fields back to a string.


#### How to verify it

1. Manual test
2. Changed sample config DB and unit test passed
2022-05-05 10:11:35 -07:00
Neetha John
7c4ee4396e
Remove referencing in unit test for arista7800 (#10738)
Signed-off-by: Neetha John nejo@microsoft.com

Why I did it
Address build failures due to sonic config engine unit tests failing. Failures are due to referencing format used in Arista 7800 sample output for buffer template

How I did it
Remove referencing format

How to verify it
Sonic config engine wheel should be built successfully
2022-05-04 15:39:47 -07:00
arlakshm
0dcbfa3a97
[chassis][yang]yang model for bgp voq chassis neighbor (#10642)
Signed-off-by: Arvindsrinivasan Lakshmi Narasimhan arlakshm@microsoft.com

Why I did it
Fixes #10158

How I did it
Add yang model for config_db table BGP_VOQ_CHASSIS_NEIGHBOR and UT
2022-05-04 15:07:59 -07:00
arlakshm
288d667c66
[yang][multi-asic]bgp internal neighbor yang model (#10632)
closes #10157

Why I did it
Add yang model for the bgp_internal_neighbor table in config_db

How I did it
Add new yang model file and unit tests

How to verify it
UT and compile sonic_yang_models-1.0-py3-none-any.whl and sonic_yang_mgmt-1.0-py3-none-any.whl

Signed-off-by: Arvindsrinivasan Lakshmi Narasimhan <arlakshm@microsoft.com>
2022-05-04 15:05:44 -07:00
DavidZagury
799d0c0313
[YANG] Update range of supported port speeds to support 800G ports (#10687)
- Why I did it
To add support for 800G speed for port in the yang.

- How I did it
Change limitation from 400G to 800G.

- How to verify it
Set a port speed to 800G and run the yang DB validation. e.g. by using dynamic port breakout.
2022-05-04 16:56:21 +03:00
kellyyeh
243d0c73f9
[dhcp6relay] Add retry mechanism for binding socket to interface ipv6 addresses (#10712) 2022-05-02 17:14:13 -07:00
Andriy Yurkiv
0a6bb3f6f0
[yang] add yang options for Context object (#10359)
#### Why I did it
Need to pass LY_CTX_DISABLE_SEARCHDIR_CWD to Context in order to disable automatically searching for schemas in current working directory (which is by default searched automatically)

#### How I did it
add additional attribute into YANG context

#### How to verify it
Create some invalid link on switch :
1) **ln -s /usr/abc xxx**
2) run **spm list**
--> There should not be these messages:
```
libyang[1]: Unable to get information about "xxx" file in "/tmp" when searching for (sub)modules (No such file or directory)
libyang[1]: Unable to get information about "xxx" file in "/tmp" when searching for (sub)modules (No such file or directory)
libyang[1]: Unable to get information about "xxx" file in "/tmp" when searching for (sub)modules (No such file or directory)
libyang[1]: Unable to get information about "xxx" file in "/tmp" when searching for (sub)modules (No such file or directory)
```
2022-05-02 09:51:30 -07:00
Sumukha Tumkur Vani
80f5d36a5b
[SWSS] Update submodule (#10719)
Add the following commits:

- [orchagent, crm]: Reset crm threshold exceed count when threshold type changed 5ba6a54786c0fd9b155bb9ea2a7ed724a58aab74
- [pbh] [aclorch] Fixed a bug causes by updating the flow-counter value for the PBH rule 841f00389b338e91ddc4de460ace4ff96adfa796
- [ACL]Avoid incrementing crm count when ACL rule create fails 3d3364f9715fa05fbdf2d09b08676c3055903b84
- set remote vtep the netdev down before delete 7f53db782aed2973f4ff6807911b5a549461f3c7
- Removing Vnet with scope default 2ea8581da4ba6f97bebde4845a234d7c810e5515
2022-04-30 10:39:13 -07:00
Shilong Liu
d258db8aa2
[CG] Fix CG alert about underscore version. (#10705) 2022-04-29 13:40:33 +08:00
Mohamed Ghoneim
e0f5333d9c
[SY] Adding exceptlionList to validation exception (#10699)
#### Why I did it
Adding exceptlionList to validation exception

#### How I did it
Check code.

#### How to verify it
Ran manually.
- Run full config validation from a KVM
- Print the thrown exception

**Before**
```
Error: Data Loading Failed
All Keys are not parsed in FEATURE
dict_keys(['telemetry'])
```
**After**
```
Error: Data Loading Failed
All Keys are not parsed in FEATURE
dict_keys(['telemetry'])
exceptionList:["'status'"]
```

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

<!--
- Note we only backport fixes to a release branch, *not* features!
- Please also provide a reason for the backporting below.
- e.g.
- [x] 202006
-->

- [ ] 201811
- [ ] 201911
- [ ] 202006
- [ ] 202012
- [ ] 202106
- [ ] 202111

#### Description for the changelog
<!--
Write a short (one line) summary that describes the changes in this
pull request for inclusion in the changelog:
-->

#### Link to config_db schema for YANG module changes
<!--
Provide a link to config_db schema for the table for which YANG model
is defined
Link should point to correct section on https://github.com/Azure/SONiC/wiki/Configuration.
-->

#### A picture of a cute animal (not mandatory but encouraged)
2022-04-28 17:29:56 -07:00
jingwenxie
850e45601b
Revert "[sonic-cfggen] make minigraph parser fail when speed and lanes are not in PORT table (#10228)" (#10683)
This reverts commit cd330f0e70.
2022-04-27 08:26:44 +08:00
ganglv
9d7387a18e
[sonic-host-services]: Fix import and invalid path (#10660)
Why I did it
Can not start sonic-hostservice

How I did it
Install python3-dbus and systemd-python, and replace invalid path

How to verify it
Start the service with below commands:
sudo systemctl start sonic-hostservice
sudo systemctl status sonic-hostservice

Signed-off-by: Gang Lv ganglv@microsoft.com
2022-04-27 07:14:51 +08:00
xumia
a06f5493b2
[Submodule]: update submodule for sonic-restapi (#10680)
Why I did it
Update submodule sonic-restapi
e83e0e8 Fix Ctype_char larger than address space issue in 32-bit armhf (#107)
2022-04-26 21:12:36 +08:00
Zhaohui Sun
cc30771f6b
Add python3 virtual environment for docker-ptf (#10599)
Why I did it
Migrate ptftests script to python3, in order to do an incremental migration, add python virtual environment firstly, install all required python packages in virtual env as well.
Then migrate ptftests scripts from python2 to python3 one by one avoid impacting non-changed scripts.

Signed-off-by: Zhaohui Sun zhaohuisun@microsoft.com

How I did it
Add python3 virtual environment for docker-ptf.
Add submodule ptf-py3 and install patched ptf 0.9.3 into virtual environment as well, two ptf issues were reported here:
p4lang/ptf#173
p4lang/ptf#174

Signed-off-by: Zhaohui Sun <zhaohuisun@microsoft.com>
2022-04-26 09:13:26 +08:00
Shilong Liu
672db8d416
[submodule] Update submodule for sonic-mgmt-common (#10664)
submodule update, includes:

ec32690 CVE-2020-25614: Update xmlquery, jsonquery and xpath packages. (#58)
5156527 Showtech sonic mgmt framework: Add Management Framework functionality for "show tech-support" (#49)
2022-04-25 08:16:29 -07:00
bingwang-ms
3fc3259a35
Define qos map AZURE_TUNNEL for QoS remapping of tunnel traffic (#10565)
* Add AZURE_TUNNEL map

Signed-off-by: bingwang <wang.bing@microsoft.com>
2022-04-25 15:06:10 +08:00
Longxiang Lyu
d8c27b6ed2
[YANG][vlan-sub-intf] Enforce Linux interface name length (#10646)
Why I did it
Allow portchannel vlan sub intf long name format as long as it follows Linux interface name length limit(<16).

How I did it
Modify the leaf name check.

How to verify it
Test case passes.
2022-04-25 14:44:40 +08:00
SuvarnaMeenakshi
5cd6bc4ce2
[portconfig]: Remove try block for db config initialization (#10581)
Why I did it
Provide fix for comment: https://github.com/Azure/sonic-buildimage/pull/10475/files#r847753187;
How I did it
Try exception is not required in this scenario, so remove and modify to initial db config according to single or multi-asic platforms.
How to verify it
Verified on multi-asic device.
2022-04-22 16:25:29 -07:00
Richard.Yu
37debbeb38
[CG-Fix-CVE-2021-44906] Patching on thrift.0.14.1 for package minimist (#10555)
* [CG-Fix-CVE-2021-44906] Patching on thrift.0.14.1 for package minimist

Signed-off-by: richardyu-ms <richard.yu@microsoft.com>

* add more information in patch

Signed-off-by: richardyu-ms <richard.yu@microsoft.com>

* Update 0003-Remove-minimist-packages.patch

* change the thrift 0.14.1 to package download

Signed-off-by: richardyu-ms <richard.yu@microsoft.com>

* use the series file for patching

* fix a code defect
2022-04-22 09:43:16 +08:00
Alexander Allen
37e2848b3f
Update sonic-sairedis submodule (#10607)
[sairedis submodule] commits:
c7cbfe8 Update SAI submodule to support python 3.7 (#1035)
2022-04-20 19:45:02 -07:00
Junchao-Mellanox
651ac2c840
[submodule] Update submodule for sonic-swss (#10623)
Swss Commit update:

1fd1dbf Add support for route flow counter (https://github.com/Azure/sonic-buildimage/pull/2094)
d8fadc6 [QoS] Resolve an issue in the sequence where a referenced object removed and then the referencing object deleting and then re-adding (https://github.com/Azure/sonic-buildimage/pull/2210)
eaf7264 [macsecorch]: MACsec with pfc (https://github.com/Azure/sonic-buildimage/pull/2095)
a32b611 [azp]: Reduce diff coverage to 50% threshhold (https://github.com/Azure/sonic-buildimage/issues/2227)
6301db7 [Code owner] Set owners for auto reviews (https://github.com/Azure/sonic-buildimage/issues/2229)
d1fb3dd [BFD]Retry create BFD with different source UDP port on failure (https://github.com/Azure/sonic-buildimage/pull/2225)
53620f3 [orchagent] add & remove port counters dynamically each time port was added or removed (https://github.com/Azure/sonic-buildimage/pull/2019)
cf216be Change ERR to Notice for tunnel term create fail (https://github.com/Azure/sonic-buildimage/pull/2219)
2022-04-20 17:12:28 -07:00
bingwang-ms
d853c9c747
Update submodule sonic-swss-common (#10611)
Signed-off-by: bingwang <wang.bing@microsoft.com>
2022-04-20 08:25:35 +08:00
Qi Luo
936d93cbcd
Fix tagged VlanInterface if attached to multiple vlan as untagged member (#8927)
#### Why I did it
Fix several bugs:
1. If one vlan member belongs to multiple vlans, and if any of the vlans is "Tagged" type, we respect the tagged type
2. If one vlan member belongs to multiple vlans, and all of the vlans have no "Tagged" type, we override it to be a tagged member
3. make sure `vlantype_name` is assigned correctly in each iteration

#### How to verify it
1. Test the command line to parse a minigraph and make sure the output does not change.
```
./sonic-cfggen -m minigraph.mlnx20.xml
```
The minigraph is for HwSKU Mellanox-SN2700-D40C8S8.

2. Test on a DUT with HwSKU Mellanox-SN2700-D40C8S8
```
sudo config load_minigraph
show vlan brief
```
Checked the "Port Tagging" column in the output.
2022-04-19 15:47:07 -07:00
Saikrishna Arcot
330777e795
Image build time improvements (#10104)
* [build]: Patch debootstrap to not unmount the host's /proc filesystem

Currently, when the final image is being built (sonic-vs.img.gz,
sonic-broadcom.bin, or similar), each invocation of sudo in the
build_debian.sh script takes 0.8 seconds to run and execute the actual
command. This is because the /proc filesystem in the slave container has
been unmounted somehow. This is happening when debootstrap is running,
and it incorrectly unmounts the host's (in our case, the slave
container's) /proc filesystem because in the new image being built,
/proc is a symlink to the host's (the slave container's) /proc. Because
of that, /proc is gone, and each invocation of sudo adds 0.8 seconds
overhead. As a side effect, docker exec into the slave container during
this time will fail, because /proc/self/fd doesn't exist anymore, and
docker exec assumes that that exists.

Debootstrap has fixed this in 1.0.124 and newer, so backport the patch
that fixes this into the version that Bullseye has.

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>

* [build_debian.sh]: Use eatmydata to speed up deb package installations

During package installations, dpkg calls fsync multiples times (for each
package) to ensure that tht efiles are written to disk, so that if
there's some system crash during package installation, then it is in at
least a somewhat recoverable state. For our use case though, we're
installing packages in a chroot in fsroot-* from a slave container and
then packaging it into an image. If there were a system crash (or even
if docker crashed), the fsroot-* directory would first be removed, and
the process would get restarted. This means that the fsync calls aren't
really needed for our use case.

The eatmydata package includes a library that will block/suppress the
use of fsync (and similar) system calls from applications and will
instead just return success, so that the application is not blocked on
disk writes, which can instead happen in the background instead as
necessary. If dpkg is run with this library, then the fsync calls that
it does will have no effect.

Therefore, install the eatmydata package at the beginning of
build_debian.sh and have dpkg be run under eatmydata for almost all
package installations/removals. At the end of the installation, remove
it, so that the final image uses dpkg as normal.

In my testing, this saves about 2-3 minutes from the image build time.

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>

* Change ln syntax to use chroot

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2022-04-19 09:22:16 -07:00