From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=195.135.221.5; helo=smtp.nue.novell.com; envelope-from=glin@suse.com; receiver=edk2-devel@lists.01.org Received: from smtp.nue.novell.com (smtp.nue.novell.com [195.135.221.5]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 7C8EC20977883 for ; Mon, 28 May 2018 20:35:16 -0700 (PDT) Received: from emea4-mta.ukb.novell.com ([10.120.13.87]) by smtp.nue.novell.com with ESMTP (TLS encrypted); Tue, 29 May 2018 05:35:14 +0200 Received: from GaryWorkstation (nwb-a10-snat.microfocus.com [10.120.13.202]) by emea4-mta.ukb.novell.com with ESMTP (TLS encrypted); Tue, 29 May 2018 04:34:54 +0100 Date: Tue, 29 May 2018 11:34:49 +0800 From: Gary Lin To: Laszlo Ersek Cc: edk2-devel-01 , Ard Biesheuvel , Jordan Justen Message-ID: <20180529033449.33uivcfmc2xfisqy@GaryWorkstation> References: <20180528184956.20448-1-lersek@redhat.com> MIME-Version: 1.0 In-Reply-To: <20180528184956.20448-1-lersek@redhat.com> User-Agent: NeoMutt/20170912 (1.9.0) Subject: Re: [PATCH] OvmfPkg: raise DXEFV size to 11 MB X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 29 May 2018 03:35:18 -0000 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Mon, May 28, 2018 at 08:49:56PM +0200, Laszlo Ersek wrote: > Almost exactly two years after commit 2f7b34b20842f, we've grown out the > 10MB DXEFV: > > > build -a IA32 -a X64 -p OvmfPkg/OvmfPkgIa32X64.dsc -b NOOPT -t GCC48 \ > > -D SMM_REQUIRE -D SECURE_BOOT_ENABLE -D TLS_ENABLE -D E1000_ENABLE \ > > -D HTTP_BOOT_ENABLE -D NETWORK_IP6_ENABLE > > > > [...] > > > > GenFv: ERROR 3000: Invalid > > the required fv image size 0xa28d48 exceeds the set fv image size > > 0xa00000 > > Raise the DXEFV size to 11MB. > > (For builds that don't need this DXEFV bump, I've checked the > FVMAIN_COMPACT increase stemming from the additional 1MB padding, using > NOOPT + GCC48 + FD_SIZE_2MB, and no other "-D" flags. In the IA32 build, > FVMAIN_COMPACT grows by 232 bytes. In the IA32X64 build, FVMAIN_COMPACT > shrinks by 64 bytes. In the X64 build, FVMAIN_COMPACT shrinks by 376 > bytes.) > > Cc: Ard Biesheuvel > Cc: Gary Lin > Cc: Jordan Justen > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Laszlo Ersek > --- > Reviewed-by: Gary Lin > Notes: > - repo & branch: https://github.com/lersek/edk2.git ; dxefv_11mb > > - regression-tested with the "crash" tool for vmcore analysis > > - regression-tested using S3 suspend/resume with my usual guests, > including Linux, Windows, i440fx, q35, SMM etc > > OvmfPkg/OvmfPkgIa32.fdf | 6 +++--- > OvmfPkg/OvmfPkgIa32X64.fdf | 6 +++--- > OvmfPkg/OvmfPkgX64.fdf | 6 +++--- > 3 files changed, 9 insertions(+), 9 deletions(-) > > diff --git a/OvmfPkg/OvmfPkgIa32.fdf b/OvmfPkg/OvmfPkgIa32.fdf > index 0427ded49239..b199713925fe 100644 > --- a/OvmfPkg/OvmfPkgIa32.fdf > +++ b/OvmfPkg/OvmfPkgIa32.fdf > @@ -68,10 +68,10 @@ [FD.OVMF_CODE] > > [FD.MEMFD] > BaseAddress = $(MEMFD_BASE_ADDRESS) > -Size = 0xB00000 > +Size = 0xC00000 > ErasePolarity = 1 > BlockSize = 0x10000 > -NumBlocks = 0xB0 > +NumBlocks = 0xC0 > > 0x000000|0x006000 > gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPageTablesBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPageTablesSize > @@ -89,7 +89,7 @@ [FD.MEMFD] > gUefiOvmfPkgTokenSpaceGuid.PcdOvmfPeiMemFvBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfPeiMemFvSize > FV = PEIFV > > -0x100000|0xA00000 > +0x100000|0xB00000 > gUefiOvmfPkgTokenSpaceGuid.PcdOvmfDxeMemFvBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfDxeMemFvSize > FV = DXEFV > > diff --git a/OvmfPkg/OvmfPkgIa32X64.fdf b/OvmfPkg/OvmfPkgIa32X64.fdf > index 6df47f48cd2c..4ebf64b2b9dc 100644 > --- a/OvmfPkg/OvmfPkgIa32X64.fdf > +++ b/OvmfPkg/OvmfPkgIa32X64.fdf > @@ -68,10 +68,10 @@ [FD.OVMF_CODE] > > [FD.MEMFD] > BaseAddress = $(MEMFD_BASE_ADDRESS) > -Size = 0xB00000 > +Size = 0xC00000 > ErasePolarity = 1 > BlockSize = 0x10000 > -NumBlocks = 0xB0 > +NumBlocks = 0xC0 > > 0x000000|0x006000 > gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPageTablesBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPageTablesSize > @@ -89,7 +89,7 @@ [FD.MEMFD] > gUefiOvmfPkgTokenSpaceGuid.PcdOvmfPeiMemFvBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfPeiMemFvSize > FV = PEIFV > > -0x100000|0xA00000 > +0x100000|0xB00000 > gUefiOvmfPkgTokenSpaceGuid.PcdOvmfDxeMemFvBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfDxeMemFvSize > FV = DXEFV > > diff --git a/OvmfPkg/OvmfPkgX64.fdf b/OvmfPkg/OvmfPkgX64.fdf > index 2e2a1749b5d2..9ca96f928287 100644 > --- a/OvmfPkg/OvmfPkgX64.fdf > +++ b/OvmfPkg/OvmfPkgX64.fdf > @@ -68,10 +68,10 @@ [FD.OVMF_CODE] > > [FD.MEMFD] > BaseAddress = $(MEMFD_BASE_ADDRESS) > -Size = 0xB00000 > +Size = 0xC00000 > ErasePolarity = 1 > BlockSize = 0x10000 > -NumBlocks = 0xB0 > +NumBlocks = 0xC0 > > 0x000000|0x006000 > gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPageTablesBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSecPageTablesSize > @@ -89,7 +89,7 @@ [FD.MEMFD] > gUefiOvmfPkgTokenSpaceGuid.PcdOvmfPeiMemFvBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfPeiMemFvSize > FV = PEIFV > > -0x100000|0xA00000 > +0x100000|0xB00000 > gUefiOvmfPkgTokenSpaceGuid.PcdOvmfDxeMemFvBase|gUefiOvmfPkgTokenSpaceGuid.PcdOvmfDxeMemFvSize > FV = DXEFV > > -- > 2.14.1.3.gb7cf6e02401b > >