From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by mx.groups.io with SMTP id smtpd.web10.1706.1678860572325816644 for ; Tue, 14 Mar 2023 23:09:32 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=Jl8n55oC; spf=pass (domain: intel.com, ip: 134.134.136.65, mailfrom: ray.ni@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1678860572; x=1710396572; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=oZNknRRUTqe3p/vI9/y1WdCih//qEWmoLILm3HYJ5nk=; b=Jl8n55oCEpv4foKm9T+D1EpvSUzRhsp1KbL7EOVSe/U7fVGcVYGZqwyH Or3i1V1g4R8LVzeb7y0hFqPxthx3t5NhG9o6SCsr+VqzypGI9jxdRbr7J PL7kPXZmj7eWVkE0qMrJdZDAEIHxg0bstYCDYzbq05HzmBywtywb00Etx mTOb9CL+EokFi+zK3boDYRQlOGPhvkIA4UNWFVeJO3Df1esmpe6D0GRoW 1P8DbpD5bc61vTvSu1/PgVQ7uCcwxk5IoxmEfltKt8xq1rjJmpASvkuRS FCdoPRQPmjrM2UP73b0eNRMMdOIlOrrIDLtcr2oGRKXv6IWB+xKXbcI71 Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10649"; a="339984951" X-IronPort-AV: E=Sophos;i="5.98,262,1673942400"; d="scan'208";a="339984951" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Mar 2023 23:09:31 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10649"; a="672618829" X-IronPort-AV: E=Sophos;i="5.98,262,1673942400"; d="scan'208";a="672618829" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by orsmga007.jf.intel.com with ESMTP; 14 Mar 2023 23:09:31 -0700 Received: from fmsmsx601.amr.corp.intel.com (10.18.126.81) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.21; Tue, 14 Mar 2023 23:09:30 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.21 via Frontend Transport; Tue, 14 Mar 2023 23:09:30 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.170) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.21; Tue, 14 Mar 2023 23:09:30 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=O+gM1+UWJNwg9CIY6V81LrLasiFLvfbca+IwyPX26y/Dt3zfGUjSNfb6csv9rfuG/q20GUdY1Mno8jo5xiZI/c0ahGk2Zp4Gf1+JthB7BU5GjVuCFk7SUbV9imUsKpWNip0W3lqIpAZqSA7rpo07p4BPfMGwdlCL/NfFChaAzDTgkP5n+nP/rh6FGQl2uvFRs7TJj/nhf0SQeLRSOupvEjRdulrOEEoewq+FRrpoK6abjVZM+R9H7liNU5e6/OL1g5qC5bqRgFK/dyWKkC5tPhJ7yCtzdaPorxIELbGJxi+LYmJQhhSESkB6rKVK6Spcg+jnj66o/dj//CyloWpOlA== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ZhTxTg2fjLCj6fynYLi8VyArmIzHwNASRS2N01E2/jY=; b=mT8xdQYiJGsn5I2cX8bPsWTqNlrRRWTn23rePhK85v9ct3S6aJdnhYBjmP1ykclFztr4Iym0syfodRSNMZhSt/yYENmEW643vT3V2ZQVdQXmiimhDfLinbA7FnlDuKZk6IGZIuubzkrKlNjH3wuWzEraNIfP6/2cOmR1eslq4Dp+38OhQwTC3yrBskKfUuMtlz5joAUHnce2AGv9oh29DnaL7TANbJ/B2vuj80H2vKxkQOzxGuYiiAVaOZSkt4cKqsXg76TBW5GyQqZR3JmbgLrECv4rBGaDSQLLGF4CDABH29HyhOMnOkE5gx91AmRzH9Dozz1oKO4WNj8o+ItPtg== 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 Received: from MN6PR11MB8244.namprd11.prod.outlook.com (2603:10b6:208:470::14) by SA2PR11MB4971.namprd11.prod.outlook.com (2603:10b6:806:118::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6178.17; Wed, 15 Mar 2023 06:09:29 +0000 Received: from MN6PR11MB8244.namprd11.prod.outlook.com ([fe80::ae07:e96a:4a24:8a69]) by MN6PR11MB8244.namprd11.prod.outlook.com ([fe80::ae07:e96a:4a24:8a69%7]) with mapi id 15.20.6178.024; Wed, 15 Mar 2023 06:09:28 +0000 From: "Ni, Ray" To: "Tan, Dun" , "devel@edk2.groups.io" CC: "Dong, Eric" , "Kumar, Rahul R" , Gerd Hoffmann , "Liu, Zhiguang" Subject: Re: [Patch V2 10/14] UefiCpuPkg/CpuPageTableLib: Modify RandomTest to check IsModified Thread-Topic: [Patch V2 10/14] UefiCpuPkg/CpuPageTableLib: Modify RandomTest to check IsModified Thread-Index: AQHZUaYV/AZPZSBJaEWOkEv1qYTK2a77ZL0Q Date: Wed, 15 Mar 2023 06:09:28 +0000 Message-ID: References: <20230308100758.669-1-dun.tan@intel.com> <20230308100758.669-11-dun.tan@intel.com> In-Reply-To: <20230308100758.669-11-dun.tan@intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MN6PR11MB8244:EE_|SA2PR11MB4971:EE_ x-ms-office365-filtering-correlation-id: 614b3970-2d60-47eb-57db-08db251bd5f9 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: N+n0FbdqwXW0WgbU1Njf757/vwxDPohKUgX/UGIhU7jUeVtxWHyezC6kByyFIWWky4ENUlPj4xDuD4j4Zu79uGbR/Chn5jUuxPoX7CJPWmC2vLUUruMb2VjSUyJLrA0kFwcIC7wtAhT+6/1bbxUdsRFsx4HJPfsOw4Ra0b46uUnPFJKUdwWUXj+p2JWxGgKNIr4XMhMPLB3zDkUIGPGyVtkkJ4pSx8IhOEUwE50b0jgPE9H9/yphMK5E81ZcMbz3iAMmo3ReqB4ioMjSYTYbW6gQB+Wn4TbHQ5Y0qn0WPwO+s7NQbEzp1pZt8bQz9M+nJ2pdfmQpDIlDBa2FQwngtCqoMCRjI8ZIdFw3TW36iE2jOVbnw1yi4xhEYMp2KoNi56/BW5luSalXk3mfSYJ0qvs67YlitZzEmN9dKLXzKgPdA71fwinyOn1B+ueRjdLBPoZsZFmgZR1jnFPpPR3thOp5sVnKFtXcogtw2nyZ//6vkI0JkThGOcJXL08kSDl7ybPq9kjdxZHp2njh4bfP28CX8ZCcJdqKsD3Uw78S5tl8YEaF3G6i7Ax/aXHo9GWh463TmADIXFOFEYgINVB3K+L12GSaAvufCRo3bDjD7vNCz2/0K+tm9fuHyYQGUrFfJMPH4qarWdpq/hzQEbokH/d9nGQCazqa/HXFIJASbjDbk+tpYfcOKO3tSxwjq+Zh86QTi98AXpKQTWxIBTlJhQ== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN6PR11MB8244.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230025)(6029001)(396003)(366004)(376002)(346002)(136003)(39860400002)(451199018)(55016003)(26005)(9686003)(33656002)(316002)(110136005)(54906003)(478600001)(38100700002)(8676002)(38070700005)(8936002)(5660300002)(82960400001)(122000001)(64756008)(66946007)(66556008)(52536014)(66476007)(76116006)(4326008)(107886003)(66446008)(2906002)(41300700001)(6506007)(186003)(86362001)(7696005)(71200400001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?Dnb57N74eJxVnkBuql2noqbOg+X1/ojMeT+Bpef6h6fWaJb9obRRuSOL+Hzj?= =?us-ascii?Q?lM93jm1OwZsSs1g/BmRWZBZpKumdL55fBZi5BOunBWQiP8gsasMMzB0F+5d6?= =?us-ascii?Q?KmPMtxBFZMTo4Jq6Txl6pi7m/ogAI4c3aBpTrsNK2KPiRppqTTKJhX32ZcqU?= =?us-ascii?Q?IchxdBQeCJjJmar7JZiWQ5rQ/WxelsuFme0Ak8RElTpFlpuBEcD+FsiXbsLp?= =?us-ascii?Q?vdM/BLSf3fShN4UJFGISSLHxItB4L5kJ2u8II089znK7H2ycbChB8VTxqV2i?= =?us-ascii?Q?2zOLMtKIUDl49UmuNaVKVxd2LObF7CUIhChNDt+Gi8xE7O3zYBZxAFz4H+VO?= =?us-ascii?Q?Ev/1uNSWfP5jKhCDiEEzG+zTQeH0uOB/VNFK5MpUc7M24oyoCE3I9zezysN4?= =?us-ascii?Q?gvAUvj08iLmwG1S1hXE/UwQHN4MO3LQzRnpAkqeJ1pyU/HWx4PA3COFLC4Sm?= =?us-ascii?Q?TjG/07MtBJQZb+OB2UBhvmyAmvwTIPJRSE/yEQfSd72V70GJPHwJLqPc3320?= =?us-ascii?Q?ovg3ONlzlAVQCtgt6GMMekPzvbT3OzI4y1MTTl3sccb7o2ro96ELjiZVskyC?= =?us-ascii?Q?D73vKnGfQg4ytYAHsZVdlIB34WVWK29FHPGBDneELSI7XB9RNgVRDMVdlXoV?= =?us-ascii?Q?Zw5gT4Kj3Dz/d9JjvbqBILTRCq+sLgHuxag8cvQySUPi8Bc5wsyY0ctjpic+?= =?us-ascii?Q?Hp+CS1n0ZrjEe7DkNE8S0ws1Rq41DespfPbDUodELfykovY66lz/T6Xm7+SC?= =?us-ascii?Q?wI33gvyEM3sfLgSHOesj4tlaBDSV/fuoVDjP2Pyu6rU86LVcVb4Cur1i+c/4?= =?us-ascii?Q?oc5Y7ji2bqsuP4/UNAII8nKtwrY30EJh+Um5I350HMYDsK4oXLqwAkQVWj5/?= =?us-ascii?Q?85GAzkCX35oPXvOABIK9w8cTgbczLvnqoRoHxyurdfZDFkAhq9V5XqkSlxzV?= =?us-ascii?Q?1z2o2HO4ptmkexfxmJWex/gX/f8jgJgO7W6UUd9OMmaGpa3jfd/VtXWKaI0q?= =?us-ascii?Q?Ju0pGFQEsA162Y9V00V/Gt4bliQyIgaaocRsKVbHVfynijAkWxomal/0+JuQ?= =?us-ascii?Q?MN1av+9FUXihf2r1ULjfMeCEiE88jlrWvutHm2NIYHue+1mU/7SQy/fxePAv?= =?us-ascii?Q?Yhs9H3ZcmjAjBzzGofh288noUiuy6Kgvcg8wJVUNeJH6J3lHZuBPik5bSXWq?= =?us-ascii?Q?4fAVPQ+1yaF3ebmyfZRB/svCruqyAlAswkfk/3QAUeW9aJwUJkoTfwycM51h?= =?us-ascii?Q?+HAb4ZuvUDD5rn9HkpgF85bQTBP2afO03WBB0e4JcSctdr+pykRxcTS4c+W0?= =?us-ascii?Q?hnyQg2veKU677W+mJu/LYIvwEVd0tStwWIjX0EpDub72daIlJ0qHDLItdzOB?= =?us-ascii?Q?D2cOS+wW72g1aP1RECP0/nwa7Av1fM+woyDVORfwskmj5epDtg6j/2FFf/zS?= =?us-ascii?Q?brZSoXilmSfu59im0D3oBTNhU27lTrgsP7OXm/mFSkYfQJlLayPYjsZZfSg0?= =?us-ascii?Q?FZjhcA1iaILSL+Knp6VihqtbJQ1xrdHcAOPp4boFGipsq36unznWW2F0oD9m?= =?us-ascii?Q?XWBASWAusCi8uYl80yBkwDHaqhNIOj5aAPMQFGO3?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN6PR11MB8244.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 614b3970-2d60-47eb-57db-08db251bd5f9 X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Mar 2023 06:09:28.6977 (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: K1hK3XO04sDfVFbiHXwBoTNEZV6+t3UzMEhAVLzT2XUdR2LKuXVrGpNCXH/GyjQDCbpfj1rx4EoWOODoKeqtlg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR11MB4971 Return-Path: ray.ni@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable >=20 > GenerateSingleRandomMapEntry (MaxAddress, MapEntrys); > Status =3D PageTableParse (*PageTable, PagingMode, NULL, &MapCount); >=20 > + if (MapCount !=3D 0) { > + // > + // Allocate memory for Map > + // Note the memory is only used in this one Single MapEntry Test > + // > + UT_ASSERT_EQUAL (Status, RETURN_BUFFER_TOO_SMALL); > + Map =3D AllocatePages (EFI_SIZE_TO_PAGES (MapCount * sizeof > (IA32_MAP_ENTRY))); > + ASSERT (Map !=3D NULL); > + Status =3D PageTableParse (*PageTable, PagingMode, Map, &MapCount); > + } > + > // > // Check if the generated MapEntrys->Maps[MapsIndex] contains not- > present range. > // > if (MapEntrys->Maps[MapsIndex].Length > 0) { > if (MapCount !=3D 0) { > - UT_ASSERT_EQUAL (Status, RETURN_BUFFER_TOO_SMALL); > - Map =3D AllocatePages (EFI_SIZE_TO_PAGES (MapCount * sizeof > (IA32_MAP_ENTRY))); > - ASSERT (Map !=3D NULL); > - Status =3D PageTableParse (*PageTable, PagingMode, Map, &MapCount)= ; > - > if (Map[MapCount - 1].LinearAddress + Map[MapCount - 1].Length < > MapEntrys->Maps[MapsIndex].LinearAddress + MapEntrys- > >Maps[MapsIndex].Length) { > IsNotPresent =3D TRUE; 1. can you split the Parse() API call into a standalone patch? > + if (MapCount2 =3D=3D 0) { > + UT_ASSERT_EQUAL (IsModified, FALSE); 2. no need to treat "MapCount =3D=3D 0" as special. CompareMem() should be = able to accept 0-length bytes. > + } else if (CompareMem (Map, Map2, MapCount2 * sizeof > (IA32_MAP_ENTRY)) !=3D 0) { > + UT_ASSERT_EQUAL (IsModified, TRUE); > + } else { > + UT_ASSERT_EQUAL (IsModified, FALSE); > + } > }