From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by mx.groups.io with SMTP id smtpd.web10.1841.1593676640656548503 for ; Thu, 02 Jul 2020 00:57:21 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=tPxRrWBe; spf=pass (domain: intel.com, ip: 192.55.52.151, mailfrom: shenglei.zhang@intel.com) IronPort-SDR: g/X5xiEpR8DO1zPgNfbZ2N0vWNPtPcosmHvKipzJsZwr8SlcZ+X9LliW1KuXfGAig5IxGRCSbq jS2boIczgbQw== X-IronPort-AV: E=McAfee;i="6000,8403,9669"; a="126920959" X-IronPort-AV: E=Sophos;i="5.75,303,1589266800"; d="scan'208";a="126920959" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Jul 2020 00:57:20 -0700 IronPort-SDR: ikERpFim7kr08FLWjc/yTE2sNdrsn774keIQzyej4JRqUJUdDgHrDa0fQxErbPgWMYJj0JEOd/ XkqwjCSuiZkA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,303,1589266800"; d="scan'208";a="304157517" Received: from orsmsx107.amr.corp.intel.com ([10.22.240.5]) by fmsmga004.fm.intel.com with ESMTP; 02 Jul 2020 00:57:19 -0700 Received: from orsmsx601.amr.corp.intel.com (10.22.229.14) by ORSMSX107.amr.corp.intel.com (10.22.240.5) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 2 Jul 2020 00:57:19 -0700 Received: from orsmsx603.amr.corp.intel.com (10.22.229.16) by ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Thu, 2 Jul 2020 00:57:19 -0700 Received: from ORSEDG002.ED.cps.intel.com (10.7.248.5) by orsmsx603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.1.1713.5 via Frontend Transport; Thu, 2 Jul 2020 00:57:19 -0700 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.174) by edgegateway.intel.com (134.134.137.101) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 2 Jul 2020 00:57:15 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hrCyHElcu0QoPoaCeYW0gt3wLL2QwN5+DLmwk3GGFUQvZBAilvx/6NPyz2ths+1VpYBl6AvU+r8AFQpLcdkJ+qMX3syH3pHTY7DWfEMWM+Df3afXWT2k9b2wKyc9F+NAo6doRsGgcXyQP5le89IbxVfUzTjjaMDAaGVaWmBe25u6vIMRHus4Of85rBouYdg7YR1X33BDPZBhBNCA1xQ8Osjwh9ZQZsUHGgmgzh4L3ddqY+funoMMxi5PmniZZaXepK6mdrmJaqpfhJcWecdLYoSgpBlHJmXNolCACFxcdpqldj4V2HbHJcHVebUJMGZvuGMtY2o9mkcidOiqsomWLw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6Q8QdhdBhKk5a01Df3lO84ctnqccekFgxSryq5cOPZk=; b=hY7SoGlwxHtzklskm5RzIsqeUGyqrMx5jMU4B3/4YolSg+U+bZSne9VA/eznZ5IrbU1V4X6EdCU9uft2SX3Dowag7/iVTsoIkDVi6+5WcvbNTPWFoi9pLxRBtsAO/UOEX2SLJsOQMKM2GP2FtiyN3G8VZtQ/UO68P29Ur30YpF7l5aHccI9s0rIyR2Yd9UZnT6H5MGm+ywaEphGBd2bKjfB3yTi4jsd/hA37sPEw08f6m9A9mpyyet5Qua+ywhOLZxmL7E0IrVYd4kw/deVFl1vna5XaKWGHGGPAF79edw7Oaatj2YjW/UNvHHRDU07ToIqOdkrPNVXMiSkBi6sJ4Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6Q8QdhdBhKk5a01Df3lO84ctnqccekFgxSryq5cOPZk=; b=tPxRrWBe+gnow/+Ikp61GWAeZRXnahfpF+Aba2LwPWmLhr3peb2haAq87IWhRh9NpiK/4aLSAZIzOWrbxa4nMJtGiWVdiPocbgVUjaiXgeVG+mwKGsA378Vx67hhfpL9hUqRszljhsGsywNBgMtdVnP9m42K1DsZq30bZAltHGs= Received: from BL0PR11MB3506.namprd11.prod.outlook.com (2603:10b6:208:31::24) by BL0PR11MB3283.namprd11.prod.outlook.com (2603:10b6:208:69::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3153.20; Thu, 2 Jul 2020 07:57:14 +0000 Received: from BL0PR11MB3506.namprd11.prod.outlook.com ([fe80::b805:cb86:230a:6a1]) by BL0PR11MB3506.namprd11.prod.outlook.com ([fe80::b805:cb86:230a:6a1%6]) with mapi id 15.20.3153.023; Thu, 2 Jul 2020 07:57:14 +0000 From: "Zhang, Shenglei" To: "Gao, Liming" , "devel@edk2.groups.io" CC: "Feng, Bob C" , Bret Barkelew , "Kinney, Michael D" , Sean Brogan Subject: Re: [edk2-devel] [PATCH v6 00/16] Add a plugin to check Ecc issues for edk2 on open ci Thread-Topic: [edk2-devel] [PATCH v6 00/16] Add a plugin to check Ecc issues for edk2 on open ci Thread-Index: AQHWT0q+A+HbqNiua0qnPJnnFgj1BqjzkW7wgAAxUaA= Date: Thu, 2 Jul 2020 07:57:14 +0000 Message-ID: References: <20200701015516.17108-1-shenglei.zhang@intel.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.102.204.36] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 9b761027-9d93-4ca6-6f94-08d81e5d886e x-ms-traffictypediagnostic: BL0PR11MB3283: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8273; x-forefront-prvs: 0452022BE1 x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: GlTExqu88NOYxBu5gyBMS/ZK9/cs9Wre9E4c/BaSTm6025+CyOYFy7xGG2cec65ZZ6SpLwCD4w6tqlYhNsIP/xEWe4GI14hQG6jgmZHoiDltg7jYFP/2+Dm5dQOKKA6DSGHuABH9Dz+aoLNevAvRRlzW0QXwhzVx1QIG8yaOwbreSb4e28cd8mgC8USWW9IRr77VPXfYkwBR6RQcbssA2ioWzfgup3861oXgJrfvTMm2sbLNWz+k6IIvNuGaeo0YvucymtVb9362z3h2+ZVJfbvGufUAsjthxYlF7GiOxqUcW47VYDp+y5vfBYMnCzaX0SapM93X9OnhBv+mMSMfCWYkFov19SPTDnnl5HE4/fr2trX8Zz3OrqjHuoKfMfeN1QWj4pRMn6qSgsiBrypNlw== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BL0PR11MB3506.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFTY:;SFS:(4636009)(136003)(39860400002)(396003)(346002)(366004)(376002)(76116006)(64756008)(66556008)(5660300002)(2906002)(71200400001)(186003)(9686003)(55016002)(8676002)(86362001)(8936002)(26005)(33656002)(54906003)(110136005)(316002)(66476007)(4326008)(53546011)(6506007)(52536014)(7696005)(966005)(66446008)(66946007)(478600001)(83380400001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: IdDsL6E5BDhOv7npMWDrkNZFTbeVOQuw8VLJvUPl/FGHoTc2NvR0PNSP5wXm4nrBHdZ9XKr8X+x0HjWtob9ROb1b9t9axTXAsKYxicjgz/PaUqb4vK/VZmf8ERbm7LOhljeWQSWgXgSgPhFs4gxd3LRHtvwJDQiJ2o9949Y4lIrS5moJKTeac5A4GAmVtqNoCEsGydYHjTx6u2Pr/9d02VGUX2FGXtY88siO8Ec1v2PrwO/aULxZmgDklIvPmT5iJY8aWf8sTwCi9W8dzysSxhflEPq9KFpsUbefsISFki1BG63pRWlTF0m8AFv267P4w//MUiXHmeExpu9+TEHz+nv6gI0drGnYtFDI38s+PBXpKM0WHpIZv5t6VrgI8lT0imFPaGmHcjTDfUh2JVwJ30cNv70MLZIUaaOmiT4okTVswljX4Lz1Ya3olZnj7iuOG6WgaDJ6vNt4a8RjPhEStanWi6+Ue3a7OpBWx6mvuISRnVQizSwbB2fkdWDkjn3J MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BL0PR11MB3506.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9b761027-9d93-4ca6-6f94-08d81e5d886e X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Jul 2020 07:57:14.0736 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 3NduJudGBlxHvJP9KtpqaPjC41CfJRaxefrvLhk2/eZSApMyUKzGEK3LCvo6e6p1FKbgM/SrrJShH2MURQNgShsCVxn5Xqhg7svHt4jOKoI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR11MB3283 Return-Path: shenglei.zhang@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="iso-2022-jp" Content-Transfer-Encoding: quoted-printable Liming, Yes we have instructions to run plugins locally. Since they are not good e= nough and not easy to find. I provide the following steps. Pre-Requisites * Windows OS * Make sure you have python 3.7.x or newer available on path * Make sure you have git installed and available on path 1. Navigate to edk2 2. run `python -m venv pytool-ext-venv` 3. run `pytool-ext-venv\Scripts\activate.bat` 4. run `pip install --upgrade -r pip-requirements.txt` 5. run `stuart_ci_build -c .pytool/CISettings.py TOOL_CHAIN_TAG=3DNO-TARGE= T` It's strongly to remove any anther plugin when developers want to reproduc= e Ecc issues. Thanks, Shenglei > -----Original Message----- > From: Gao, Liming > Sent: Thursday, July 2, 2020 10:31 AM > To: devel@edk2.groups.io; Zhang, Shenglei > Cc: Feng, Bob C ; Bret Barkelew > ; Kinney, Michael D > ; Sean Brogan > Subject: RE: [edk2-devel] [PATCH v6 00/16] Add a plugin to check Ecc iss= ues > for edk2 on open ci >=20 > Shenglei: > Thanks for your work to enable ECC checker in open CI. Have you the st= ep > to run this checker in local environment? The developer may want to > reproduce the issue and fix it. >=20 > Thanks > Liming > -----Original Message----- > From: devel@edk2.groups.io On Behalf Of Zhang, > Shenglei > Sent: 2020=1B$BG/=1B(B7=1B$B7n=1B(B1=1B$BF|=1B(B 9:55 > To: devel@edk2.groups.io > Cc: Feng, Bob C ; Bret Barkelew > ; Kinney, Michael D > ; Gao, Liming ; Sean > Brogan > Subject: [edk2-devel] [PATCH v6 00/16] Add a plugin to check Ecc issues = for > edk2 on open ci >=20 > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D2606 > As planed we will enable Ecc check for edk2 on open ci. And they are rea= dy > now. I appreciate receiving feedback and comments if someone find errors > or false positive issues. >=20 > I created a pipline of EccCheck for my forked edk2. Welcome everyone to > create pull request to test the quality of this plugin. > My forked tree: https://github.com/shenglei10/edk2 >=20 > And I also created some test cases for ECC plugin. Below are test cases. > https://github.com/shenglei10/edk2/tree/ECC > Results can be view in below azure server. > https://dev.azure.com/shengleizhang/shengleizhang/_build?definitionId=3D= 12 > &_a=3Dsummary >=20 > Patches > 1/16: It's a lib necessary for py3 to run Ecc on azure servers. >=20 > 2/16: EccCheck.py is a plugin to report Ecc issues for commits. It can b= e run > on azure servers for open ci, or a local virtual environment. >=20 > 3/16~16/16: We consider some cases that will report out Ecc issues but t= hey > won't > be fixed, like submodule and industry standard related things. So w= e > add two configuration fields "Exception" and "IgnoreFiles" for peop= le > to use. These patches add configuration in yaml files for Ecc check= . >=20 > Cc: Bob Feng > Cc: Bret Barkelew > Cc: Michael D Kinney > Cc: Liming Gao > Cc: Sean Brogan >=20 > v2: Update 1/17, fix the bug that the script can't hanlde multiple commi= ts. >=20 > v3: Update 1/17, set the only workalbe workspace is edk2 root directory. > Update 2/17, designate the version of antlr4 is 4.7.1. > Add 4/17~17/17. >=20 > v4. Update 1/17, remove the function EdksetupRebuild(), instead add > function SetupEnvironment(). Update variables' format and type hints > to pass flake8 and mypy. >=20 > v5. Conver the former method to plugin solution, to align with > other check points on open ci. >=20 > v6. The 1/16 patch is missed in v5 series. Now add it in v6. >=20 > Shenglei Zhang (16): > pip-requirements.txt: Add Ecc required lib > .pytool/Plugin: Add a plugin EccCheck > MdeModulePkg/MdeModulePkg.ci.yaml: Add configuration for Ecc check > ArmVirtPkg/ArmVirtPkg.ci.yaml: Add configuration for Ecc check > CryptoPkg/CryptoPkg.ci.yaml: Add configuration for Ecc check > EmulatorPkg/EmulatorPkg.ci.yaml: Add configuration for Ecc check > FatPkg/FatPkg.ci.yaml: Add configuration for Ecc check > FmpDevicePkg/FmpDevicePkg.ci.yaml: Add configuration for Ecc check > MdePkg/MdePkg.ci.yaml: Add configuration for Ecc check > NetworkPkg/NetworkPkg.ci.yaml: Add configuration for Ecc check > OvmfPkg/OvmfPkg.ci.yaml: Add configuration for Ecc check > PcAtChipsetPkg/PcAtChipsetPkg.ci.yaml: Add configuration for Ecc check > SecurityPkg/SecurityPkg.ci.yaml: Add configuration for Ecc check > ShellPkg/ShellPkg.ci.yaml: Add configuration for Ecc check > UefiCpuPkg/UefiCpuPkg.ci.yaml: Add configuration for Ecc check > UnitTestFrameworkPkg: Add configuration for Ecc check in yaml file >=20 > .pytool/Plugin/EccCheck/EccCheck.py | 268 ++++++++++++++++++ > .pytool/Plugin/EccCheck/EccCheck_plug_in.yaml | 11 + > .pytool/Plugin/EccCheck/Readme.md | 15 + > ArmVirtPkg/ArmVirtPkg.ci.yaml | 11 + > CryptoPkg/CryptoPkg.ci.yaml | 11 + > EmulatorPkg/EmulatorPkg.ci.yaml | 11 + > FatPkg/FatPkg.ci.yaml | 11 + > FmpDevicePkg/FmpDevicePkg.ci.yaml | 11 + > MdeModulePkg/MdeModulePkg.ci.yaml | 11 + > MdePkg/MdePkg.ci.yaml | 11 + > NetworkPkg/NetworkPkg.ci.yaml | 11 + > OvmfPkg/OvmfPkg.ci.yaml | 11 + > PcAtChipsetPkg/PcAtChipsetPkg.ci.yaml | 11 + > SecurityPkg/SecurityPkg.ci.yaml | 11 + > ShellPkg/ShellPkg.ci.yaml | 11 + > UefiCpuPkg/UefiCpuPkg.ci.yaml | 11 + > .../UnitTestFrameworkPkg.ci.yaml | 10 + > pip-requirements.txt | 1 + > 18 files changed, 448 insertions(+) > create mode 100644 .pytool/Plugin/EccCheck/EccCheck.py > create mode 100644 .pytool/Plugin/EccCheck/EccCheck_plug_in.yaml > create mode 100644 .pytool/Plugin/EccCheck/Readme.md >=20 > -- > 2.18.0.windows.1 >=20 >=20 >=20