From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by mx.groups.io with SMTP id smtpd.web12.3431.1593657043669112345 for ; Wed, 01 Jul 2020 19:30:44 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=EFWpCJ8J; spf=pass (domain: intel.com, ip: 192.55.52.43, mailfrom: liming.gao@intel.com) IronPort-SDR: Xe5Sz49l29jRbONzV4zA5eKZJCZi7nQtYqeSCKTKsV72iaKKUTKeWfJBXQ/bc3fCHdv33oj0A6 tJZ2PiUsVBqw== X-IronPort-AV: E=McAfee;i="6000,8403,9669"; a="231648206" X-IronPort-AV: E=Sophos;i="5.75,302,1589266800"; d="scan'208";a="231648206" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Jul 2020 19:30:42 -0700 IronPort-SDR: nLarRvaZ8Vr4RB+6rFgbu2DLrj4UEXUPqf641xp7HALTpQA341VlFpASlZ2NbmUc1Gy3sC5r/e +8xO7f45zvfw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,302,1589266800"; d="scan'208";a="312882384" Received: from fmsmsx105.amr.corp.intel.com ([10.18.124.203]) by orsmga008.jf.intel.com with ESMTP; 01 Jul 2020 19:30:42 -0700 Received: from FMSEDG001.ED.cps.intel.com (10.1.192.133) by FMSMSX105.amr.corp.intel.com (10.18.124.203) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 1 Jul 2020 19:30:41 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.41) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 1 Jul 2020 19:30:41 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=T975KqZZje5oXnZ6UnIvpZ3hsU+Kd230NtERIgW+hpJKNNpD+GvPGGzTBzr8F3aBQpwNODXWBCs9jARpJylkRCZsDUonKSJ0AyZ4bzP/5SRVdtF+1BYMQZyVOu7gm4EaivGxLFqn5G5bYUbkVWkErrx0WlrAPOcbhLkkPpGKVYuHwLq1qSB7NS/wNc0qZlqKG3hLh5Nyc8iQjaSFh7mN2nHpiECOnWls/VDSQUJABeG2lmt4EEHeH9Q6vnog3VrS27Idv+WOrRW8xAD8kqtpR94wwI3ZURPCEvsDNK+7CkjH/AsRgvaeZ9cERyrJO6vL4DudBTn17mehj9Gt46Kzgw== 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=IYnwvVL+B2nE/D7rgmpF5QW2sux55imlK6iaU0oN5nc=; b=DH3yOjRL045HlC4BMRms2roY6h7jE9dtFS90kAG+2JcnQsIP2oClSAark+QNRtUctlewERwZfxZV3DO/c3GocVTGXb+ubGcqPS1SmpFvF+NBmiy6h2GtEnUVop+1B2P4xfotYeQsx42HSOaOKRtx7Ywitb35mZ4Zk7Yld7Bfom+K0hwJeW4y0zFckkxbeKdUCnIwC+pQIqxFaNL3bR3yXhAW8H6mpAVIdIopH/1pRuPgnN5lhDMiNkJaSYxgrfpNH95F8gC61kWUfSY+IjVfgvRYjSE/DaULUc8TQfczEVld6lU25LQuggoj61Qjo/ad4DGlywDb8Ti04oNbOufvKQ== 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=IYnwvVL+B2nE/D7rgmpF5QW2sux55imlK6iaU0oN5nc=; b=EFWpCJ8J9a4VsgMJfm/Tn0vfHtL+Q0gCCZ4Beha/j/np+SIYKi3KWWQjSXJprFFvILCu60JNIFk17Cm2U2Efsbxb6zmd6/624s7G8iR02ggBRgTBVpRq9gvJZaUzF927JaEsmkY6GOWRiMaPsE4WuJi8y+7YnzML9rTCfJJpL1s= Received: from MWHPR11MB1630.namprd11.prod.outlook.com (2603:10b6:301:e::7) by MW3PR11MB4683.namprd11.prod.outlook.com (2603:10b6:303:5c::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3153.23; Thu, 2 Jul 2020 02:30:40 +0000 Received: from MWHPR11MB1630.namprd11.prod.outlook.com ([fe80::7847:b564:1b55:b67e]) by MWHPR11MB1630.namprd11.prod.outlook.com ([fe80::7847:b564:1b55:b67e%6]) with mapi id 15.20.3131.028; Thu, 2 Jul 2020 02:30:40 +0000 From: "Liming Gao" 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 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+HbqNiua0qnPJnnFgj1BqjzkW7w Date: Thu, 2 Jul 2020 02:30:40 +0000 Message-ID: References: <20200701015516.17108-1-shenglei.zhang@intel.com> In-Reply-To: <20200701015516.17108-1-shenglei.zhang@intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.2.0.6 dlp-product: dlpe-windows dlp-reaction: no-action authentication-results: edk2.groups.io; dkim=none (message not signed) header.d=none;edk2.groups.io; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.198.147.217] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 471e7fc3-38d1-4bac-7fb4-08d81e2fe9ab x-ms-traffictypediagnostic: MW3PR11MB4683: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-forefront-prvs: 0452022BE1 x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: xGq1ERef70GFGlLp6ZAM1NLNlk+EgJQnOxgYILpc47xBaXx/mBDz0izcWAJN2AgHykt0d0z8RodGjbM8SKufmceohaxEaLd5N52TVOmBRRKkv5ukq4GfBSbMDAl4uugp/4+9MEKC6ZdEkV0VtFNgrHsUL09Kt/MQStZ17xeL/SGasvNQ3uc8zVm41/JiyTxRKL3/hwWN5obLfjCgkdFL9mKgpAWJPj8Sj1cRRU47wr9x32gmzK+MzLuoo1h/ZhZHMXiXP/rWC334XKGWeiLsY/36+UMTMzpLAcPyvgEfWbkxQsJ34uB6W/vr6McZoBXrne+RVpRK95517K6CQpWgoERyu1Pp06QO11nhlQifqUOlUAcasAB6+ocr9tNc6v0IhNoBB5WSd5p6bQw/WIm/Lg== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR11MB1630.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFTY:;SFS:(4636009)(376002)(366004)(396003)(136003)(346002)(39850400004)(76116006)(66446008)(7696005)(83380400001)(478600001)(52536014)(6636002)(4326008)(53546011)(6506007)(26005)(2906002)(71200400001)(186003)(55016002)(9686003)(66556008)(66946007)(64756008)(5660300002)(110136005)(54906003)(966005)(316002)(8936002)(86362001)(8676002)(33656002)(66476007);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: VkSzFJX9Bjzg1VlwK/WF4Sc7VtY2YRmBBm1b70xtY6Ub0B5/fyVhyer7Koh4QDLKXy7rQeNPUIB04/V54jfUz8An9UJ7+bgPDSBrmW74e201JQt9azlCQBCCJMa8sq4V5pDb9L+Kk/A1bzHw8dUzCkoLLGnFnmp/jvqycQLZk5HK/89tY9vR4FOLED1cjTxFyuA0fXoFI+OuXf4UkUI01WXyEb+KzYd+tVqiW4Jci3AfyGoF4CInOm4m16kg3ZWy6+j3mnryo4aZ4dbBVcjF7pAXdVrFGGHjKMawbRIELpqEn3YH8nm7EEAwLlfLNK+r4YP1zUHMqzsyMK7fpE6Fe1vd3znNJyxPjd6PdsL59MHnMdyYhKjQ5ClTYgYBvyJD+zB6R/OzZX5wMaBanxMKiVcs8tJKN+jdKKfsw4Bzgb1Px+w3Yrsf+63+kBQJ4HHa9tDNgutEgo86G0EeLeO79QfvFEx8cYBxONDMXsLzpWTl9sSfFFTI9Tqp34c7m/9a MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MWHPR11MB1630.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 471e7fc3-38d1-4bac-7fb4-08d81e2fe9ab X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Jul 2020 02:30:40.3433 (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: SnHbS2gww3RDRhW6VTEqfHAbmFPwl1ShH5ouHXEY4ABJLAs1o2WGX5HeWdF8LCho75YG7ga8vaNi4xaCGzqASg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW3PR11MB4683 Return-Path: liming.gao@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="iso-2022-jp" Content-Transfer-Encoding: quoted-printable Shenglei: Thanks for your work to enable ECC checker in open CI. Have you the step= to run this checker in local environment? The developer may want to reprod= uce the issue and fix it.=20 Thanks Liming -----Original Message----- From: devel@edk2.groups.io On Behalf Of Zhang, Shen= glei 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 fo= r edk2 on open ci 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 ready= now. I appreciate receiving feedback and comments if someone find errors o= r false positive issues. I created a pipline of EccCheck for my forked edk2. Welcome everyone to cr= eate pull request to test the quality of this plugin. My forked tree: https://github.com/shenglei10/edk2 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=3D12= &_a=3Dsummary Patches 1/16: It's a lib necessary for py3 to run Ecc on azure servers. 2/16: EccCheck.py is a plugin to report Ecc issues for commits. It can be = run on azure servers for open ci, or a local virtual environment. 3/16~16/16: We consider some cases that will report out Ecc issues but the= y won't be fixed, like submodule and industry standard related things. So we add two configuration fields "Exception" and "IgnoreFiles" for people to use. These patches add configuration in yaml files for Ecc check. Cc: Bob Feng Cc: Bret Barkelew Cc: Michael D Kinney Cc: Liming Gao Cc: Sean Brogan v2: Update 1/17, fix the bug that the script can't hanlde multiple commits= . 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. v4. Update 1/17, remove the function EdksetupRebuild(), instead add function SetupEnvironment(). Update variables' format and type hints to pass flake8 and mypy. v5. Conver the former method to plugin solution, to align with other check points on open ci. v6. The 1/16 patch is missed in v5 series. Now add it in v6. 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 .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 -- 2.18.0.windows.1