From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by mx.groups.io with SMTP id smtpd.web10.2335.1594173413543275869 for ; Tue, 07 Jul 2020 18:56:53 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=CpHoOE+S; spf=pass (domain: intel.com, ip: 192.55.52.115, mailfrom: shenglei.zhang@intel.com) IronPort-SDR: FXIkGPYo02DUa0C76+XXqTzu7KggtFZ+hL7jTFMkJZW+Hk8BnF1Kz601+cJTQzGjElsctDZQ3o 03S1sc6jpJfA== X-IronPort-AV: E=McAfee;i="6000,8403,9675"; a="146792255" X-IronPort-AV: E=Sophos;i="5.75,326,1589266800"; d="scan'208";a="146792255" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Jul 2020 18:56:52 -0700 IronPort-SDR: 3mwwjoFBP3D5m+jBX//pJvSx65H5g9zjslsKiAN03xYs+OZIlJzRm3yKt0BZ6nobWAdhdaAJ2h 71fWBGSAoMUQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,326,1589266800"; d="scan'208";a="279796987" Received: from fmsmsx103.amr.corp.intel.com ([10.18.124.201]) by orsmga003.jf.intel.com with ESMTP; 07 Jul 2020 18:56:51 -0700 Received: from fmsmsx111.amr.corp.intel.com (10.18.116.5) by FMSMSX103.amr.corp.intel.com (10.18.124.201) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 7 Jul 2020 18:56:43 -0700 Received: from FMSEDG002.ED.cps.intel.com (10.1.192.134) by fmsmsx111.amr.corp.intel.com (10.18.116.5) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 7 Jul 2020 18:56:43 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.171) by edgegateway.intel.com (192.55.55.69) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 7 Jul 2020 18:56:41 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jiV+3X57pGfw3VvQ/y8IWL21AFJTEEYZVHY0Esafm7rLdhwcxYop/sZOG7F4PJBLhoSmBnei5rJXrwNS1kahrFdkGemzpksP/6LYWS4DDhhgjqzPWFzPCnPAwJ4HTxCFpEZduoeIxmoeN2F/brJKvNYD0yjOKPNuFBvlRH9QF/Rn1szvId1KSJBvL0KF3jT7pjLKSACaMUD3GtB87WZpXNV1hJJk0VSy69qobWr/uB4HWfRlnSIJcSHhZqT+ZDGxJPoVSfrfumXRmUOucJS5FRurhUzyy4glVcdZqK3aDqmPcYwyAAfZZE2PYVLDp9BGBx2it89ivbKVbk+ityGL0g== 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=Mo0cjMsIdWaVoplydABl4dqaUEgEEUzkX/2zbpR4v5c=; b=mBZlTtefxbS+kekcPJNswvqRCqxZuJZXuHITmGvdIXpWtRm7+4UY4MsFFEVbpoeIb2Z0Qmxn9t+q8rFUUWTEtFaO6mGEZmpo8eVMKfyAWK4ZMhPNvRHwwfpo7vNxhIRnktHUmagdxKQNMEMBBFb3ZitzvIbHpzBFQVNf4iJdIo2nnCtO1VXIicbBFKCQ/SHxMFOIF08NUAZQ3k7bvdQjixkeNJnwCofKyr26smObjfHxcWI4Yc0lra+in0lUU5M/OnLYIi8rfmZEddvKqNJXmlXc1q0tlQ5B0QehH+Hz2+0R62kX2ytDcwzLVEZURzvPsru3jau8Zg04VMkKsL8iIQ== 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=Mo0cjMsIdWaVoplydABl4dqaUEgEEUzkX/2zbpR4v5c=; b=CpHoOE+S8ME8/8usKYlEBU6gel102CSj5pPEUR0GGwSBVOFb3Sa8hv7rduNFYwDcqd4mDLI8G9d1JJVpQvCzHcLrK16E6OnmrEePPUSWxLMC/mP90qYE5pC9NcS8UGA/IFRE7EA8T8xR7q3I0DIkiUO71cSZnVXQBjsV+xMa+Iw= Received: from BL0PR11MB3506.namprd11.prod.outlook.com (2603:10b6:208:31::24) by MN2PR11MB4630.namprd11.prod.outlook.com (2603:10b6:208:24e::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3153.27; Wed, 8 Jul 2020 01:56:37 +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.029; Wed, 8 Jul 2020 01:56:37 +0000 From: "Zhang, Shenglei" To: Leif Lindholm CC: "devel@edk2.groups.io" , "Feng, Bob C" , Bret Barkelew , "Kinney, Michael D" , "Gao, Liming" , Sean Brogan Subject: Re: [edk2-devel] [PATCH v7 00/16] Add a plugin to check Ecc issues for edk2 on open ci Thread-Topic: [edk2-devel] [PATCH v7 00/16] Add a plugin to check Ecc issues for edk2 on open ci Thread-Index: AQHWU3MxGryFzf81P0qmv+BD0acUMqj7Y+3wgACggwCAAOSfIA== Date: Wed, 8 Jul 2020 01:56:37 +0000 Message-ID: References: <20200706084846.12748-1-shenglei.zhang@intel.com> <20200706085508.GA12303@vanye> <20200707115638.GB12303@vanye> In-Reply-To: <20200707115638.GB12303@vanye> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: nuviainc.com; dkim=none (message not signed) header.d=none;nuviainc.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.102.204.45] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 4394dab3-69cd-41f6-05f6-08d822e22646 x-ms-traffictypediagnostic: MN2PR11MB4630: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-forefront-prvs: 04583CED1A x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Yt/NpDzY3VF+KamFmsNCjHgKSgfbDpJvLRLUsRPzFkVrcvTOCqptEdnrp489aGiIl35r0r+FWiv1aLXVYaKbFFBjX2u4torafVT1JJyMoxxCY35Ijjd4WzXKZYf/x5PqghIgXjXHGxQt/W8MeBY0lvfPJuFS1zW8sHiF1PYB9Mn4ajafrC9upOmvjBPVVjpRhSR1J8RphI0oJa25WpNgLE/p+gWxryD3T01gD1JOjd6rUsEjaVYZTeh1TLt4rEdjx/NxXm+5OEpAsZaGzR1ctR2Vaagep+bHJIKWPUmBaMEx3RIaJV+dUYn+43drsCZhw++JHHPJ7voVsEZOFPA3jtAbYNtrcrn5qFp9xI5qMLZlxz+F1kJ9XVJk9nfjZrv9IcymilTNbOR3X8i285qmpw== 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)(366004)(396003)(346002)(376002)(39860400002)(136003)(52536014)(2906002)(4326008)(76116006)(66946007)(66476007)(66556008)(54906003)(9686003)(64756008)(55016002)(71200400001)(86362001)(66574015)(186003)(5660300002)(83380400001)(66446008)(966005)(8676002)(8936002)(478600001)(7696005)(53546011)(33656002)(316002)(6916009)(26005)(6506007);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: 94wLgkA5bnRcKArvHi8pQJ6IKtD3rWAs0w2xHQ0mYpF5e/tF11djrGt46oQkpux5RHIITQkt8P5qlBSS/Ek8qFF7Nm5tadK/XK2Qt6GY/cxCVcSUTCuWc3JKIbKuiEBL7LaEsnERsrA6UEw94PgqpL4edSk9Wbpp0o2et+AbqJ2RynleEz5mP0c1wFqBkXZd2coEAclbDuk6qMQ8VoFDvHGkMJ9NMZoJb2oaGS1fNED+e7pI2sirVs893/LMnbpXD+wl273ZjszgMjyig5COlYkFJKQ6zmOv+wEAGpmEEmUWOdhcVmYGw713FzzyTfewqK3Q0zPqkHx06s3MUp0ormJODNPa8TzOSAt0nmqjzUS8aYhsO+IZzQqCoMv3spb79j2Ah0jOGXjb3FlT+HkqgbeMuL8av5vHzWpc76iGCh5hS+4FFvYKHI0cot7ETTEHYTJyAZBm8xY6Sc8Nq98vezj1BTLzziLnRNd9WUo7Ls4ISp+Po+QRNqiB34clzdx/ 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: 4394dab3-69cd-41f6-05f6-08d822e22646 X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Jul 2020 01:56:37.1432 (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: QBB8nCZVzGFcqUcB9WzAVupCXsEk8Fr9SRrA7kiEJrNfmItth/nKVow5/lpW3QXzI5VGkWD4alIWVnqsd+fq8ot0ZpvGhGkpejZrJ01sRGI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR11MB4630 Return-Path: shenglei.zhang@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Comments below. > -----Original Message----- > From: Leif Lindholm > Sent: Tuesday, July 7, 2020 7:57 PM > To: Zhang, Shenglei > Cc: devel@edk2.groups.io; Feng, Bob C ; Bret > Barkelew ; Kinney, Michael D > ; Gao, Liming ; Sean > Brogan > Subject: Re: [edk2-devel] [PATCH v7 00/16] Add a plugin to check Ecc iss= ues > for edk2 on open ci >=20 > On Tue, Jul 07, 2020 at 02:24:14 +0000, Zhang, Shenglei wrote: > > Comments below. > > > > > -----Original Message----- > > > From: devel@edk2.groups.io On Behalf Of Leif > > > Lindholm > > > Sent: Monday, July 6, 2020 4:55 PM > > > To: devel@edk2.groups.io; Zhang, Shenglei > > > Cc: Feng, Bob C ; Bret Barkelew > > > ; Kinney, Michael D > > > ; Gao, Liming ; > Sean > > > Brogan > > > Subject: Re: [edk2-devel] [PATCH v7 00/16] Add a plugin to check Ecc > issues > > > for edk2 on open ci > > > > > > On Mon, Jul 06, 2020 at 16:48:30 +0800, Zhang, Shenglei wrote: > > > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D2606 > > > > As planed we will enable Ecc check for edk2 on open ci. And they a= re > > > > ready now. I appreciate receiving feedback and comments if someone > > > > find errors or false positive issues. > > > > > > > > I created a pipline of EccCheck for my forked edk2. Welcome everyo= ne > to > > > > create 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=3D= 12 > > > &_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 > they > > > won't > > > > be fixed, like submodule and industry standard related things= . So we > > > > add two configuration fields "Exception" and "IgnoreFiles" fo= r 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 dire= ctory. > > > > 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 ad= d > > > > 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. > > > > > > > > v7. Fix a bug that Ecc plugin can not be run correctly under Linux= OS. > > > > > > What is the bug? Where is it fixed? > > > > V6 plugin pipeline link: > > > https://dev.azure.com/shengleizhang/shengleizhang/_build/results?buildId > =3D282&view=3Dlogs&j=3D9b8d87a5-bd93-5358-8ffa-588e312c4376&t=3D282a77bb= - > da29-5801-6299-2bbe15d5aabb > > v7 plugin pipeline link: > > > https://dev.azure.com/shengleizhang/shengleizhang/_build/results?buildId > =3D316&view=3Dlogs&j=3D5e3952f2-9c8a-5394-82c1-a803bcab3ca3&t=3D7ea9e85e= - > 5c3d-5fcf-865e-8449f16cc745 > > > > For the same pull request, v6 plugin can't report out the Ecc issues u= nder > Linux OS. >=20 > Right. So *what* was the bug and *where* (which patch or patches) was > it fixed? This is information that should (in an abbreviated form) be > provided in the cover letter. >=20 > "Fix a bug" is data, not information. The same is true for "can not be > run correctly". And neither tells me which patch I should look at. > If this has been covered in a specific discussion thread, a link to > the thread *and* mentioning which patch(es) it affects is sufficient. >=20 OK. Let me re-answer your question. The bug is that for the same pull request, v6 plugin can't report out the = Ecc issues under Linux OS. It's not difficult to find v6 plugin failed to report out = Ecc issues and v7 plugin managed to do that. V6 plugin pipeline link: https://dev.azure.com/shengleizhang/shengleizhang/_build/results?buildId= =3D282&view=3Dlogs&j=3D9b8d87a5-bd93-5358-8ffa-588e312c4376&t=3D282a77bb-d= a29-5801-6299-2bbe15d5aabb v7 plugin pipeline link: https://dev.azure.com/shengleizhang/shengleizhang/_build/results?buildId= =3D316&view=3Dlogs&j=3D5e3952f2-9c8a-5394-82c1-a803bcab3ca3&t=3D7ea9e85e-5= c3d-5fcf-865e-8449f16cc745 And the update of v7 patch series is 2/16. It fixed some case sensitive issues and separating symbol problems, like u= pdating 'ecc.log' to 'Ecc.log' and updating '\' to'/'. Above solution fixed the plugin failed to report out Ecc issues under Linu= x os. Thanks, Shenglei > Regards, >=20 > Leif >=20 > > > > Thanks, > > Shenglei > > > > > > > > / > > > Leif > > > > > > > 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 che= ck > > > > 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 fi= le > > > > > > > > .pytool/Plugin/EccCheck/EccCheck.py | 267 > ++++++++++++++++++ > > > > .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, 447 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 > > > > > > > > > > > > > > > > > > > > > >=20 > >