Commit Graph

1804 Commits

Author SHA1 Message Date
Dror Prital
bc935d4002
[202012][submodule] Advance sonic-linux-kernel pointer (#11406)
Update sonic-linux-kernel submodule pointer to include the following:
* [202012][patch] mlxsw: i2c: Prevent transaction execution for special chip states ([#282](https://github.com/Azure/sonic-linux-kernel/pull/282))

Signed-off-by: dprital <drorp@nvidia.com>
2022-07-11 21:40:26 +03:00
Neetha John
ec7cc16199
[202012] Submodule update for sonic-utilities (#11400)
Signed-off-by: Neetha John <nejo@microsoft.com>

This PR contains the following commits
5a54bd7 Added cisco config platform commands (Azure/sonic-utilities#2241)
62c1640 [config/load_mgmt_config] Support load IPv6 mgmt IP (Azure/sonic-utilities#2206)
c061a18 Fix header for the output table following 'show ipv6 interface' command (Azure/sonic-utilities#2219)
ecca18ff [202012] Update load minigraph to load backend acl (Azure/sonic-utilities#2235)
2022-07-11 09:10:02 -07:00
Junhua Zhai
9991b6ac5b [dhcp6relay] Check interface address is not NULL (#11359)
Why I did it
Daemon dhcp6relay may crash due to null pointer access to ifa_addr member of struct ifaddrs. It's not guaranteed that the interface must have available ifa_addr. That is true for some special virtual/pseudo interfaces.

How I did it
Check the pointer to ifa_addr is valid ahead of accessing it.
2022-07-08 21:39:48 +00:00
xumia
de786ccd25 [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-08 21:39:44 +00:00
Neetha John
26ee4ae4a4 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-08 21:39:39 +00:00
Alexander Allen
2c3dc47b2c [sonic-py-common] Add platform and chassis info methods to device_info (#7652)
#### Why I did it
These methods were added to make some convenient platform and chassis information methods accessible through sonic-py-common. These methods were refactored from sonic-utilities and are used in the `show platform summary` and `show version` commands. 

#### How I did it
There are two methods, one is `get_platform_info()` which simply calls local methods to collect useful platform information into a dictionary format, this came directly from sonic-utilities.
2022-07-08 21:39:33 +00:00
Neetha John
6fe583ed1c
[202012] Minigraph parser changes for storage backend acl (#11267)
Signed-off-by: Neetha John <nejo@microsoft.com>

Backport #11221

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-08 08:47:25 -07:00
Prince Sunny
0c6892776d
[Submodule] Update sonic-swss (#11369)
* e84a901 - 2022-07-06 : [vnetorch] fix use-after-free in removeBfdSession() (#2366) [Yakiv Huryk]
2022-07-07 22:36:46 -07:00
Vivek
729b4b4c40
Update sonic-swss submodule (#11310)
Update sonic-swss submodule

```
639d10e [PFC_WD] [202012] Avoid applying ZeroBuffer Profiles to ingress PG when a PFC storm is detected (https://github.com/Azure/sonic-buildimage/pull/2310)
475ae19 [202012] [cherry-pick] Apply `DSCP_TO_TC_MAP` from `PORT_QOS_MAP|global` to switch level (https://github.com/Azure/sonic-buildimage/issues/2328)
aa6f855 [ci] Change artifact reference pipeline to common lib pipeline. (https://github.com/Azure/sonic-buildimage/pull/2294)
752f8c5 [ci] Use correct branch when downloading artifact. (https://github.com/Azure/sonic-buildimage/pull/2292)
b3fcc5d [ci] Improve azp trigger settings to automaticlly support new release branch. (https://github.com/Azure/sonic-buildimage/pull/2289)
```
2022-07-06 17:43:35 -07:00
vmittal-msft
6ada55439d 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-07-05 20:57:53 +00:00
Stephen Sun
fe6be5da92
[202012] Configure different map between uplink and downlink on t1 switch in dual ToR scenario (#11299)
- Why I did it
Configure different DSCP_TO_TC_MAP between uplink and downlink on T1 switch in dual ToR scenario
On T1 uplink, both DSCP 2/6 will be mapped to TC 1 for the purpose of avoiding such traffic occupying lossless buffers.
On T1 downlink, they will be mapped to TC 2/6 respectively. (unchanged)

- How I did it
For vendors who want to configure different DSCP_TO_TC_MAP between uplinks and downlinks on T1, they should
Define generate_dscp_to_tc_map macro in SKU's qos.json.j2 file
Define map AZURE for downlink and AZURE_UPLINK for uplink
Define jinja2 variable different_dscp_to_tc_map as True

Signed-off-by: Stephen Sun <stephens@nvidia.com>
2022-07-03 15:58:06 +03:00
Jing Kan
2b76288a24
[minigraph] Support parse IPv6 in device_desc.xml (#11095) (#11272)
Signed-off-by: Jing Kan jika@microsoft.com
2022-07-01 16:23:56 +08:00
Nathan Cohen
94e3eb0474
Updated sonic-utilities to most recent 202012 (#11249) 2022-06-30 15:03:31 +08:00
Sumukha Tumkur Vani
82d59f6b41
[202012][RESTAPI] Update submodule (#11234) 2022-06-23 16:13:17 -07:00
Prince Sunny
86f5dfc1f9
[Submodule] update sonic-swss (#11203)
Commits:

bee3684 - 2022-06-20 : Add BGP profile to Vnet routes (#2339) [Prince Sunny]
f9af510 - 2022-06-16 : [intfmgr]: Set proxy_arp kernel param (#2334) [Lawrence Lee]
725071f - 2022-06-08 : Fix test_warm_reboot issues blocking PR merge (#2309) [Vaibhav Hemant Dixit]
0db6f15 - 2021-11-16 : [orchagent] Flush pipeline every 1 second, not only when select will timeout (#2003) [Kamil Cudnik]
2022-06-21 15:38:10 -07:00
Stephen Sun
307d0e2aca
[Mellanox][202012] Support Mellanox-SN4600C-C64 as T1 switch in dual-ToR scenario (#11032)
Why I did it
Support Mellanox-SN4600C-C64 as T1 switch in dual-ToR scenario

1. Support additional queue and PG in buffer templates, including both traditional and dynamic model
2. Support mapping DSCP 2/6 to lossless traffic in the QoS template.
3. Add macros to generate additional lossless PG in the dynamic model
4. 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.
5. 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

How to verify it
Run regression test.
2022-06-21 10:04:49 -07:00
bingwang-ms
6ddf5cd7dc
[202012] [cherry-pick] Generate switch level dscp_to_tc_map entry from qos_config template (#11132)
* Generate switch level dscp_to_tc_map

Signed-off-by: bingwang <wang.bing@microsoft.com>
2022-06-17 20:49:56 +08:00
Jing Kan
5b2261da37
Revert "[202012][openssh] openssh: Upgrade from 7.9 to 8.4, to match version in buster-backports (#10910)" (#11136)
This reverts commit 14fdcc815a.
2022-06-17 20:46:43 +08:00
Jing Zhang
a99debadc1
[sonic-linkmgrd][202012] submodule update (#11144)
[sonic-linkmgrd][202012] submodule update

0839af2 Longxiang Lyu Wed Jun 15 08:46:21 2022 +0800 [202012] Fix IP header checksum in handleSendSwitchCommand (#89)
afc4972 Jing Zhang Wed Jun 1 10:33:12 2022 -0700 Revert "Update log level for mux probing and mux state chance (#23)" (#85)
ed52d0a Longxiang Lyu Tue May 31 10:28:30 2022 +0800 Add a command line option to store logs into a separate file (#83)

sign-off: Jing Zhang zhangjing@microsoft.com
2022-06-15 14:40:31 -07:00
Vaibhav Hemant Dixit
dec5dcde01
[Advance submodule] Update sonic-sairedis pointer to latest (#11142)
Update sonic-sairedis submodule to include cross-branch warmboot fix:

Azure/sonic-sairedis#1065: Support ACL action data object in remove dep tree:
This is required if some of the attributes on ACL action data
object are OID's and we need to catch their refrence when
removing object and it's dependency tree.
2022-06-14 22:40:41 -07:00
Richard.Yu
27cfcf2c5d
[202012][Tunnel PFC][Fix bug] Fix bug and Tests for adding property 'sai_remap_prio_on_tnl_egress' (#11099)
* [202012][Tunnel PFC][Fix bug] Fix bug and Tests for adding property 'sai_remap_prio_on_tnl_egress'

manual cherry-pick from https://github.com/Azure/sonic-buildimage/pull/11027
Fix a bug in the template
Add tests for adding property 'sai_remap_prio_on_tnl_egress', this
property should only be added in dual tor environment.

* merge change after sync from 202012 and remove a mistaken changes in cherry-pick

Signed-off-by: richardyu-ms <richard.yu@microsoft.com>
2022-06-14 18:50:18 -07:00
Nikola Dancejic
49a2d8558d
Update submodule sonic-swss (#11109)
Signed-off-by: Nikola Dancejic <nikola.dancejic@live.com>
2022-06-10 20:45:06 -07:00
Neetha John
5ceb25e21b
[202012] [sonic-config-engine] Generate expected output with different cable len (#11082)
* Generate expected output with 300m cable len and compare against it

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

* Rewrite assert logic

Signed-off-by: Neetha John <nejo@microsoft.com>
2022-06-10 18:06:44 +08:00
bingwang-ms
68f4e0b738
Update submodule sonic-utilities (#11088)
Signed-off-by: bingwang <wang.bing@microsoft.com>
2022-06-10 08:14:24 +08:00
StormLiangMS
52962f8f59
cherry-pick [bgpcfgd] ECMP overlay VxLan with BGP support to 202012 (#11079)
Why I did it
This is a cherry-pick PR from master to 202012 branch
below is the original PR which merged to master.
#10716

How I did it
How to verify it
2022-06-09 17:28:12 +08:00
bingwang-ms
adfe20b5f6
[202012] Automatically enable tunnel_qos_remap on T1 and T0 in DualToR deployment (#11056)
* Automatically enable tunnel_qos_remap on T1 and T0 in DualToR deployment

Signed-off-by: bingwang <wang.bing@microsoft.com>
2022-06-09 16:13:17 +08:00
Neetha John
881796f376
[202012] Adjust 7260 buffer sizes to accomodate extra lossless queues (#11050)
Backport changes from #11018

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

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
2022-06-06 18:13:16 -07:00
bingwang-ms
2faabf43eb
[202012] Automatically generate extra attributes for tunnel qos remapping (#11045)
* Automatically generate extra attributes for tunnel qos remapping

Signed-off-by: bingwang <wang.bing@microsoft.com>
2022-06-07 08:43:04 +08:00
bingwang-ms
05884d1182
[202012][submodule] Advance sonic-utilities submodule (#11044)
* Update submodule sonic-utilities

Signed-off-by: bingwang <bingwang@microsoft.com>
2022-06-07 08:41:27 +08:00
bingwang-ms
7242722bce
[submodule]: update sonic-swss (#11034)
This PR is to advance sonic-swss submodule for 202012 branch.
Changes include

eef993f [202012][cherry-pick]Update orchagent to support new field pfcwd_sw_enable (#2302)
ab675b3 [202012][cherry-pick] Support tunnel traffic QoS remapping (#2246)

Signed-off-by: bingwang <bingwang@microsoft.com>
2022-06-06 09:52:31 -07:00
bingwang-ms
e159998657
[202012][cherry-pick] Add two extra lossless queues for bounced back traffic (#10715)
* Add extra lossless queues

Signed-off-by: bingwang <bingwang@microsoft.com>
2022-06-04 19:25:02 +08:00
bingwang-ms
eda95b8caa
[sonic-sairedis]: update submodule sonic-sairedis (#10982)
544e4c2 (origin/202012) [ci] Paralize azure pipeline (#1044)
45b310d Enable SAI_SWITCH_ATTR_UNINIT_DATA_PLANE_ON_REMOVAL attribute (#1016)
9e56674 Advance submodule SAI for 202012 branch (#1032)

Signed-off-by: bingwang <wang.bing@microsoft.com>
2022-06-03 23:33:28 -07:00
bingwang-ms
7ec6a60230
[cherry-pick] [202012] Update qos config to clear queues for bounced back traffic (#10608)
* Update qos config to clear queues for bounced back traffic

Signed-off-by: bingwang <wang.bing@microsoft.com>
2022-06-02 16:29:25 +08:00
Jing Kan
14fdcc815a
[202012][openssh] openssh: Upgrade from 7.9 to 8.4, to match version in buster-backports (#10910)
* Use buster-backports version
* Use dget dsc file instead source repo
* Update make files
* Upgrade openssh-client to 8.4 in base image
* Remove useless installation
* Install openssh-server from buster-backports in build_debian
* Update dev buster package version list

Signed-off-by: Jing Kan jika@microsoft.com
2022-06-02 16:06:22 +08:00
kellyyeh
79555c894a
[dhcp6relay] Add dhcpv6 option check (#10486) (#10808) 2022-06-01 14:20:26 -07:00
vdahiya12
148ff285a6
[202012][sonic-platform-common][sonic-platform-daemons] submodule (#10938)
Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>

This PR adds the following commits are added in sonic-platform-common
ac25515 (HEAD -> 202012, origin/202012) [Credo][Ycable] changes for
synchronizing executing Telemetry API's when mux toggle is inprogress
(#280)
fb304c1 [sonic_ssd] Nokia-7215: "show platform ssdhealth" not showing
health percent (#279)
8bfe9c0 [Credo][Ycable] improve logging for Server Powered off/Faulty
cables (#272)

The following commits are added in sonic-platform-daemons
6695c55 (HEAD -> 202012, origin/202012) [ycabled] fix the posting for
mux_cable_static_info per downlink when ycabled is spawned;
synchronizing executing Telemetry API (#257)
6a315ae (HEAD -> 202012, origin/202012) [ycabled] Fix some syntax
warnings in ycabled (#263)
2022-05-31 11:03:15 -07:00
StormLiangMS
1ec4f3ea5c
submodule advance (#10949)
Update sonic-swss-common submodule pointer to include the following:

fb89310 - (HEAD, origin/202012) [Overlay ECMP] add new table schema for bgp profile [sonic-utilities]: Update submodule; Add commands to sudoers as necessary #608 (10 hours ago)
3632090 - [ci] Update azure pipeline branch variable reference. (4 weeks ago)
2022-05-31 23:47:33 +08:00
xumia
aebc3a8d6a
[Build]: Support to use the base image version when a package version not specified (#10971) (#10976)
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-31 22:18:17 +08:00
bingwang-ms
c4e806fcf7
[202012][cherry-pick] Define SYSTEM_DEFAULTS table to control tunnel_qos_remap (#10930)
[202012][cherry-pick] Define `SYSTEM_DEFAULTS` table to control tunnel_qos_remap (#10930)

Signed-off-by: bingwang <bingwang@microsoft.com>
2022-05-30 17:52:43 +08:00
SuvarnaMeenakshi
ec9732aa3b
[202012][multi-asic][sonic-config-engine]: Get PORT table from namespace config db (#10475)
Why I did it
Cherry-pick of: #7632
portconfig.py gets PORT table from config_db if it is present. If not, port_config.ini files are parsed.
For multi-asic platform, if namespace is passed to get_port_config(), config_db connection was done to host namespace always and not to asic specific namespace.
Provides fix for: #7161

How I did it
Modify db connection function to connect to namespace config_db.

How to verify it
Unit-test passed.
Verified on multi-asic VS platform.
2022-05-27 16:28:33 -07:00
Jing Zhang
0761850f17
[sonic-linkmgrd][202012] submodule updates (#10924)
[sonic-linkmgrd][202012] submodule updates

489cf3 Jing Zhang Wed May 18 09:59:02 2022 -0700 Avoid switching active when LinkState == Down (#77)
a6c9713 Jing Zhang Tue May 24 11:03:54 2022 -0700 [202012] Add option to enable or disable default route related feature (#72)
dbb607d 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-27 14:38:43 -07:00
Neetha John
876d982bce [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 17:00:55 +00:00
Guohan Lu
9b84294ffc Revert "[bgpcfgd] ECMP overlay VxLan with BGP support (#10716)"
This reverts commit 35c9becc3c.
2022-05-26 06:20:40 -07:00
Neetha John
a76899b04f [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 22:57:01 +00:00
abdosi
51f4bf111e 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-24 23:14:25 +00:00
StormLiangMS
35c9becc3c [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-24 23:14:21 +00:00
Lawrence Lee
5205a379e4 [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-24 23:14:17 +00:00
StormLiangMS
e659cfb2de [bgpcfgd] to support removal part of configuration of bgp allowed prefix list (#10165)
* fix allow list issue

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

* add the ipaddress in the install list

* add unit test

Co-authored-by: Ubuntu <azureuser@SONIC-SH-STORM-02.5pu3m0fajw1edcfltykk1gauxa.gx.internal.cloudapp.net>

Why I did it
Failed to remove part of configuration of bgp allowed prefix list. The details in #10141

How I did it
There are two issues:

In FRR, ipv6 default route is ::/0, but in the configuration, it is 0::/0, string comparison would be false, but why ipv4 failed to remove the allowed prefix list, ipv6 works? Looks into next one for the answer.

The current managers_allow_list doesn’t support removal part of the prefix list. But why IPv6 works in 1? It is because the bug for the IPv6 default route comparison, it would do the update no matter what is the operation (the code will compare the prefix list in the FRR and configuration db, if all configurations in db are presented in FRR, it do nothing, otherwise it will update the prefix list based on the configuration from db).

How to verify it
Follow the step in #10141
2022-05-24 23:14:13 +00:00
Dror Prital
77298da275
[202012][submodule] Update sonic-swss pointer (#10837)
Signed-off-by: Dror Prital <drorp@nvidia.com>

Co-authored-by: liat-grozovik <44433539+liat-grozovik@users.noreply.github.com>
Co-authored-by: Prince Sunny <prince.sunny@microsoft.com>
Co-authored-by: bingwang-ms <66248323+bingwang-ms@users.noreply.github.com>
2022-05-19 17:35:39 +08:00
Jing Zhang
acfee3be9a
[sonic-linkmgrd][202012] submodule update (#10814)
[sonic-linkmgrd][202012] submodule update
3d13ff2 Jing Zhang      Wed May 4 10:07:14 2022 -0700   Add doc for default route related changes  (#63)
c703be4 Jing Zhang      Mon May 2 13:27:54 2022 -0700   Reset WaitActiveUp count before switching to active (#70)
86eb727 Jing Zhang      Wed Apr 27 10:35:05 2022 -0700  lower log level to warning (#69)
e22c736 Jing Zhang      Mon May 2 13:33:24 2022 -0700   [202012] Avoid proactively switching to active if default route is missing (#67)
d4f282b Jing Zhang      Thu Apr 28 18:35:11 2022 -0700  [202012] Add support to enable switchover time measurement (with link prober interval decreased to 10ms) feature (#66)

sign-off: Jing Zhang [zhangjing@microsoft.com](mailto:zhangjing@microsoft.com)
2022-05-18 17:36:48 -07:00