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.3192.1685956662864338878 for ; Mon, 05 Jun 2023 02:17:43 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=ZNFBn3ie; spf=pass (domain: intel.com, ip: 192.55.52.151, mailfrom: bob.c.feng@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1685956662; x=1717492662; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=suQKAPc5Hmp4YR+EpaV2vkArXt/ZGuErsSc3ldUJWNg=; b=ZNFBn3ie8m5OaxTwmMQsZrCxCK07KKytzVTY1XoijA4Mn7MZW0GhTbNJ nEnDroW/nMVKopojM0LlbTwBIHL99/IuTnqdIIdpOdkn3wEijh/ZJ8kwx neM5osdyOZgLSsJLFZwya5CORjq5f2ds4iTIxVEevHC80OLSjOP1qWFYZ VZdbDS+7qxfnE5c9KNo//EGFvkfwgvdf4q+yestHqYyCyXIZM2clMirim ZXSzk7SbN8utHeKASqZrgXp41K2h+Mb7BFd8Kjpu41ctxl932PFRw+AQe QQc6wXzCMVs3WEXIOMHTqbTmi2adAvXliiGQ6qpxM90FC9CodygHBDVvg A==; X-IronPort-AV: E=McAfee;i="6600,9927,10731"; a="336677810" X-IronPort-AV: E=Sophos;i="6.00,217,1681196400"; d="scan'208";a="336677810" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Jun 2023 02:17:42 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10731"; a="686048597" X-IronPort-AV: E=Sophos;i="6.00,217,1681196400"; d="scan'208";a="686048597" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orsmga006.jf.intel.com with ESMTP; 05 Jun 2023 02:17:41 -0700 Received: from fmsmsx601.amr.corp.intel.com (10.18.126.81) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Mon, 5 Jun 2023 02:17:41 -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.23 via Frontend Transport; Mon, 5 Jun 2023 02:17:41 -0700 Received: from NAM02-DM3-obe.outbound.protection.outlook.com (104.47.56.45) 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.23; Mon, 5 Jun 2023 02:17:41 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cCAlJzqjj9yJwqgV2f6gkDDAI8T8MUAUQh/NMJ05vxCoGeLJl+OslBrUsvo353CoWJaK5ITIbo+RURqA28GjYxZeVlgRqOpaNMbB8eLkHrr5+m7DCXgoloq5VDKt5H92jdYNnMUon9/9d+8hG4ZpkydSzCkoEUN5ALV1NqXA+fB64WmND3iYUshUooLHf9AQ5qzOvIreGnApo8pT8flkJ7YMX5eAL+d++OcgMpVxWPK3+cB2qM6epdtAiBCYa+o9FqRWMe/sjLwEwqB6w7my5SbCr121s7KmPmhdXI5g5bnvjWb5yIPcETv88tu5Cq9kGgDldQKMLXzDoo54OoV9Lw== 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=B8HAEqorkSfSBSo3Kdllg2xzN4Ru4C0umYe6su3p6nc=; b=OxsQDhfazk+JhlPDK6qS5rwAxcVzV/D2qiHWcS693fhBinAOfADtlnjBNQhJXz4jmvkpvI4HDTdMvFSPcljjasySY7b3Q5JzOkFJLQ9NkNRI0/F7w2lkVmLNorVNTyCIVTr4tHYrActcYVSzzxM1VteLIuxT2OWV55E0ZJItaCXHtxHr/tGRWLRR4SuRUbn32wb6022rrUlvledUuYAi1gEUX5ezu0KXWIxFpCVNkGVkTmLjCIT2mY6iZf84t95r4tICYCgHNxfoSNBLREUOcAQ3qDslP+oOBLjbO5pu90PajX6EigJCU/20pwymRu4KDL9PPP1VzftHxa5UHJJqgQ== 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 PH7PR11MB5863.namprd11.prod.outlook.com (2603:10b6:510:135::11) by DM4PR11MB5325.namprd11.prod.outlook.com (2603:10b6:5:390::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Mon, 5 Jun 2023 09:17:38 +0000 Received: from PH7PR11MB5863.namprd11.prod.outlook.com ([fe80::dfc2:2d04:e4aa:249]) by PH7PR11MB5863.namprd11.prod.outlook.com ([fe80::dfc2:2d04:e4aa:249%6]) with mapi id 15.20.6455.030; Mon, 5 Jun 2023 09:17:38 +0000 From: "Bob Feng" To: "Chen, Christine" , "devel@edk2.groups.io" CC: Rebecca Cran , "Gao, Liming" Subject: Re: [Patch V1 1/3] BaseTools: fixing FMMT ShrinkFv issue Thread-Topic: [Patch V1 1/3] BaseTools: fixing FMMT ShrinkFv issue Thread-Index: AQHZcduNfqZQXU4Drke5t3/A4I+wU698OU1g Date: Mon, 5 Jun 2023 09:17:38 +0000 Message-ID: References: <20230418095244.676-1-yuwei.chen@intel.com> In-Reply-To: <20230418095244.676-1-yuwei.chen@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: PH7PR11MB5863:EE_|DM4PR11MB5325:EE_ x-ms-office365-filtering-correlation-id: 8b5761e5-05f7-433c-bd0c-08db65a5b51d x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 8eDPUc3lWIFNjWit+0u5mghxUdBjJ0cruYBwNaKCrMAcdKI6wJHnHb+gUH1fYOHPQMG64w3rdJKtKBYJ6KkPVCLL6laX1PKAB5KjLOmFsXGfFw4hwutTz/cLZmEBOt4YPR0QL0uu8ngXRiheuL39N4VVlk8avIz3H8+nGDRINjKjc/o4OrC2XD3DUD8ftOmR/51SJMAISYIu3RnQsb/UD8/FKgEElE6GLzzfs5zigi4WlsBbigRrZqyPaDVBuWy8BZJ6tVc3RuzkqL1RSS+f82SOwk3rIah/RomKmfOlXqlzinQX0siuP9yi1I7DB9eNRW0xt3G8NbiXDlQx3zR/9cRJO20Q91eCjcKtNf7d09fo431YNPq3KS+9QYTNWRTX7WD0fAy2AwML6h8zahkh3gmO1WkgKxENsBGNVvhFabT/jN7x4S2WA71+1JxC717kbRwElY2Zv/sizah2vrxn1Rb2aGbhu4/BnCpz8VMZDf2kdLuaeUyV+ljLBW7N8A2OeI/fNA0UN9/40OXc1HKOjpYjC5eY8sXq3nEOY5srMKAQ+aLUaIqFeg51ImK8dNQAAcaIdyBOfV4TQ+svFTm4Gcc9kd8paeJ2v9yK4iOTF01JS9Kuu2un2xRsTt+QOa9u x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH7PR11MB5863.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(136003)(346002)(39860400002)(376002)(366004)(396003)(451199021)(54906003)(110136005)(71200400001)(478600001)(52536014)(8936002)(8676002)(5660300002)(38070700005)(2906002)(33656002)(86362001)(4326008)(122000001)(64756008)(66446008)(66476007)(66556008)(316002)(66946007)(76116006)(55016003)(82960400001)(38100700002)(41300700001)(53546011)(9686003)(6506007)(186003)(83380400001)(7696005);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?0P4ky8QsTpkYfOSHBkh6Os0POnCx7kkKWxdtRj85msTQvQgFe51oBFk8d6+I?= =?us-ascii?Q?C4xxIU6+EzLHAwUq3+D1R1JSS1h6DM5f20IrzjXzJfNvZqo2L5TL+te4CM1U?= =?us-ascii?Q?v97+xX2T8C+Mda+VhvwjDj4B6JHtNf/f2lUhk0420a6UfgR6SzcSR2Jp/QE4?= =?us-ascii?Q?ijgqnXWpfm+3lH1KPYK7wGejQ+X8QutuozV7I+7eyp14756KYpEGKVSSh/Ut?= =?us-ascii?Q?6tSMAkW0GaxplcaxEkaP403r+VACjpOZFaRDjc2Fdl5YDv0kHbXSYwbVLIkM?= =?us-ascii?Q?WnTPjpYeqAlqlLAFG5zcCGkFB0FbmNiIBEw7FyMhbXJWSSN/rR1FeCdPMaOr?= =?us-ascii?Q?VPgyrVWpm56t9aKk6wO6kWneYKJY+G0syDotY3zlMsp137h6bJEc3eII8ZfP?= =?us-ascii?Q?f66zOQ3UwGZ2JdGJXNKPhbN9HmnfgE1KaCRQQF9yMguazV1zbO1DNb4spFbN?= =?us-ascii?Q?b2T8tDTMd42IFCV8yddUpOStp9Rk109Oqw2rh90Or+Pl42w33NuHyvPxAgaG?= =?us-ascii?Q?Ly2jJfv9C+eLIpwJH+OHRyORUfU2oQJvEniZvbWd39R69oi1EPAmSaY4jWNW?= =?us-ascii?Q?IbdMsywbD50MwTQKPD5VpzhplayIw4MJFbdvd6k1RxiXeLR5sKHsMX0LyBtu?= =?us-ascii?Q?oFVVOUEVl4PDGWuY9IAtvKbln5bfYJeMx/aYrkWZC3nfiMXNyn1HZAQe7MWr?= =?us-ascii?Q?JdPuEj0cA6XrIDu8YfTEXbWer6hobU/Snu38SzAit7tTFjzf/C54Y0/oe05G?= =?us-ascii?Q?zzerrN/l3hrHeSrywQPq4K6zHAhA50Om3jGX/L3RRbE0ADAhkPSzQu7KXNFQ?= =?us-ascii?Q?BPWN5J+Z3V4QzlALX6UfqlnONW4ZKMxaUPkXFu7z7V3/ytLuDQyAQQenelon?= =?us-ascii?Q?O2GbyURPG+0e6n2RpoW2cXS1stGVoA+2jiGnrK8AaTCpDFE06JD6CW1F1uWE?= =?us-ascii?Q?03zPevAFRRrdIUiWMr7LtGS8NoGVWQHdB4K+8YdS79FYXl/D6h5Zqayp6Bs8?= =?us-ascii?Q?1zTWEApMdgqGXqi3jnNZyDDq1evDdaVIzCfiUarfVF+EmiqqyTUjDDgjrTZZ?= =?us-ascii?Q?3jsAicixbsBLFiwqYHEW6rBR9APv32w+j5OEdxYB20X76pw+x9JJrodZOc1t?= =?us-ascii?Q?5IvlayWQSZVlEYhcK0fy/CsOohPe2UCcd9KUPRokm/2/uK90D9B1JxtvAs6C?= =?us-ascii?Q?Vw72DJ3lSreUv/KgkzQlksHUd/dZdl/Zq3NpyMaqXJiQ7/o5BivRd7higy9R?= =?us-ascii?Q?X2sT2wWny7RrqiN1s+5yKvz5R+2Jv78o57x6WmaNE0UoOziaB6Mps4NW+BES?= =?us-ascii?Q?133mWG2v1hff6Nb5JxhyMdaSh1nQz3z+kbHQu+rxnQq8HWIabjiRSRbNeVjO?= =?us-ascii?Q?4G5FrkRJ9vtnENlr/Nzm6SC254wIxk3HoLMdQziTYz6tNyb1HLfWs/jCXaJJ?= =?us-ascii?Q?6QmGWXi1JvgmDh6b4B+1X3KOCLAAlZNpnNpMnamSklzudMSeS82jXGiMTNZV?= =?us-ascii?Q?IZeWTNHF743PLPu1HTsv3bMM9VKc1OfPRjSyg5m5KXh6ywvTcruOKLu/Kg?= =?us-ascii?Q?=3D=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH7PR11MB5863.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8b5761e5-05f7-433c-bd0c-08db65a5b51d X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Jun 2023 09:17:38.5473 (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: LH9+audsDXS9n0LdRFvK7nReBy+rLNSwuJ0mBlzDaGlZgdjY6n2o4XENo22PFB6AVYT06XwM1U8MxUX0VtNMCA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR11MB5325 Return-Path: bob.c.feng@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable This patch is good to me. Reviewed-by: Bob Feng Thanks, Bob -----Original Message----- From: Chen, Christine =20 Sent: Tuesday, April 18, 2023 5:53 PM To: devel@edk2.groups.io Cc: Rebecca Cran ; Gao, Liming ; Feng, Bob C Subject: [Patch V1 1/3] BaseTools: fixing FMMT ShrinkFv issue 1. FvLength not change issue; 2. FileSystemGuid align with File Size; Cc: Rebecca Cran Cc: Liming Gao Cc: Bob Feng Signed-off-by: Yuwei Chen --- BaseTools/Source/Python/FMMT/core/FMMTOperation.py | 2 +- BaseTools/Source/Python/FMMT/core/FvHandler.py | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/BaseTools/Source/Python/FMMT/core/FMMTOperation.py b/BaseTools= /Source/Python/FMMT/core/FMMTOperation.py index a86f8dda9a..d4aa339703 100644 --- a/BaseTools/Source/Python/FMMT/core/FMMTOperation.py +++ b/BaseTools/Source/Python/FMMT/core/FMMTOperation.py @@ -188,7 +188,7 @@ def ExtractFfs(inputfile: str, Ffs_name: str, outputfil= e: str, Fv_name: str=3DNone FmmtParser.WholeFvTree.Findlist.remove(FmmtParser.WholeFvT= ree.Findlist[index]) if FmmtParser.WholeFvTree.Findlist !=3D []: TargetNode =3D FmmtParser.WholeFvTree.Findlist[0] - if TargetNode.type =3D=3D FV_TREE or SEC_FV_TREE or DATA_FV_TREE: + if TargetNode.type =3D=3D FV_TREE or TargetNode.type =3D=3D SEC_FV= _TREE or TargetNode.type =3D=3D DATA_FV_TREE: FinalData =3D struct2stream(TargetNode.Data.Header) + TargetNo= de.Data.Data with open(outputfile, "wb") as f: f.write(FinalData) diff --git a/BaseTools/Source/Python/FMMT/core/FvHandler.py b/BaseTools/Sou= rce/Python/FMMT/core/FvHandler.py index ff3d637623..b0cc1951a1 100644 --- a/BaseTools/Source/Python/FMMT/core/FvHandler.py +++ b/BaseTools/Source/Python/FMMT/core/FvHandler.py @@ -279,7 +279,7 @@ class FvHandler: ParTree.Child.remove(ParTree.Child[-1]) ParTree.Data.Free_Space =3D 0 ParTree.Data.Size +=3D Needed_Space - ParTree.Data.Header.Fvlength =3D ParTree.Data.Size + ParTree.Data.Header.FvLength =3D ParTree.Data.Size ModifyFvSystemGuid(ParTree) for item in ParTree.Child: if item.type =3D=3D FFS_FREE_SPACE: @@ -650,8 +650,12 @@ class FvHandler: Removed_Space =3D TargetFv.Data.Free_Space - New_Free_Space TargetFv.Child[-1].Data.Data =3D b'\xff' * New_Free_Space TargetFv.Data.Size -=3D Removed_Space - TargetFv.Data.Header.Fvlength =3D TargetFv.Data.Size - ModifyFvSystemGuid(TargetFv) + TargetFv.Data.Header.FvLength =3D TargetFv.Data.Size + if struct2stream(TargetFv.Data.Header.FileSystemGuid) =3D=3D E= FI_FIRMWARE_FILE_SYSTEM3_GUID_BYTE: + if TargetFv.Data.Size <=3D 0xFFFFFF: + TargetFv.Data.Header.FileSystemGuid =3D ModifyGuidForm= at( + "8c8ce578-8a3d-4f1c-9935-896185c32dd3") + for item in TargetFv.Child: if item.type =3D=3D FFS_FREE_SPACE: TargetFv.Data.Data +=3D item.Data.Data + item.Data.Pad= Data --=20 2.39.1.windows.1