public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Liming Gao" <liming.gao@intel.com>
To: "Feng, Bob C" <bob.c.feng@intel.com>,
	"devel@edk2.groups.io" <devel@edk2.groups.io>
Subject: Re: [edk2-devel] [Patch v2 03/11] BaseTools GenFw: Fix the issue to update the wrong size as SectionSize
Date: Thu, 17 Oct 2019 02:18:49 +0000	[thread overview]
Message-ID: <4A89E2EF3DFEDB4C8BFDE51014F606A14E51D630@SHSMSX104.ccr.corp.intel.com> (raw)
In-Reply-To: <08650203BA1BD64D8AD9B6D5D74A85D16154B171@SHSMSX104.ccr.corp.intel.com>

OK. I will update the commit message to describe this issue. 

This change is to make sure section size is in section raw data scope. 

>-----Original Message-----
>From: Feng, Bob C
>Sent: Wednesday, October 16, 2019 5:27 PM
>To: devel@edk2.groups.io; Gao, Liming <liming.gao@intel.com>
>Subject: RE: [edk2-devel] [Patch v2 03/11] BaseTools GenFw: Fix the issue to
>update the wrong size as SectionSize
>
>Hi Liming,
>
>Would you please add more description in commit message? This patch is in
>the patch set of CLANG9 enabling, but it's hard for me to see the direct
>relationship between CLANG9 and this fix and why the original code is wrong.
>
>Thanks
>Bob
>
>-----Original Message-----
>From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] On Behalf Of
>Liming Gao
>Sent: Tuesday, October 15, 2019 8:27 AM
>To: devel@edk2.groups.io
>Subject: [edk2-devel] [Patch v2 03/11] BaseTools GenFw: Fix the issue to
>update the wrong size as SectionSize
>
>Signed-off-by: Liming Gao <liming.gao@intel.com>
>---
> BaseTools/Source/C/GenFw/GenFw.c | 8 ++++++--
> 1 file changed, 6 insertions(+), 2 deletions(-)
>
>diff --git a/BaseTools/Source/C/GenFw/GenFw.c
>b/BaseTools/Source/C/GenFw/GenFw.c
>index c99782b78e..d8d3360c24 100644
>--- a/BaseTools/Source/C/GenFw/GenFw.c
>+++ b/BaseTools/Source/C/GenFw/GenFw.c
>@@ -653,7 +653,11 @@ PeCoffConvertImageToXip (
>     //
>     // Make the size of raw data in section header alignment.
>     //
>-    SectionHeader->SizeOfRawData = (SectionHeader->Misc.VirtualSize +
>PeHdr->Pe32.OptionalHeader.FileAlignment - 1) & (~(PeHdr-
>>Pe32.OptionalHeader.FileAlignment - 1));
>+    SectionSize = (SectionHeader->Misc.VirtualSize + PeHdr-
>>Pe32.OptionalHeader.FileAlignment - 1) & (~(PeHdr-
>>Pe32.OptionalHeader.FileAlignment - 1));
>+    if (SectionSize < SectionHeader->SizeOfRawData) {
>+      SectionHeader->SizeOfRawData = SectionSize;
>+    }
>+
>     SectionHeader->PointerToRawData = SectionHeader->VirtualAddress;
>   }
>
>@@ -999,7 +1003,7 @@ Returns:
>     CopyMem (
>       FileBuffer + SectionHeader->PointerToRawData,
>       (VOID*) (UINTN) (ImageContext.ImageAddress + SectionHeader-
>>VirtualAddress),
>-      SectionHeader->SizeOfRawData
>+      SectionHeader->SizeOfRawData < SectionHeader->Misc.VirtualSize ?
>SectionHeader->SizeOfRawData : SectionHeader->Misc.VirtualSize
>       );
>   }
>
>--
>2.13.0.windows.1
>
>
>


  reply	other threads:[~2019-10-17  2:18 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-15  0:26 [Patch v2 00/11] New Cross OS tool chain CLANG9 Liming Gao
2019-10-15  0:26 ` [Patch v2 01/11] BaseTools tools_def.template: Remove unnecessary $(DEST_DIR_DEBUG) path Liming Gao
2019-10-16  8:59   ` [edk2-devel] " Bob Feng
2019-10-15  0:26 ` [Patch v2 02/11] BaseTools tools_def: Add CLANG9 tool chain to directly generate PE image Liming Gao
2019-10-15  0:26 ` [Patch v2 03/11] BaseTools GenFw: Fix the issue to update the wrong size as SectionSize Liming Gao
2019-10-15  9:21   ` [edk2-devel] " Philippe Mathieu-Daudé
2019-10-16  9:27   ` Bob Feng
2019-10-17  2:18     ` Liming Gao [this message]
2019-10-15  0:26 ` [Patch v2 04/11] MdePkg Base.h: Add definition for CLANG9 tool chain Liming Gao
2019-10-15  9:32   ` [edk2-devel] " Philippe Mathieu-Daudé
2019-10-15  0:26 ` [Patch v2 05/11] MdePkg BaseIoLibIntrinsic: Remove __inline__ attribute for IO functions Liming Gao
2019-10-15  9:26   ` [edk2-devel] " Philippe Mathieu-Daudé
2019-10-22  1:42   ` Michael D Kinney
2019-10-15  0:26 ` [Patch v2 06/11] MdeModulePkg LzmaCustomDecompressLib: Update macro to be same in CLANG tool Liming Gao
2019-10-16  2:05   ` [edk2-devel] " Wu, Hao A
2019-10-15  0:26 ` [Patch v2 07/11] MdeModulePkg RegularExpressionDxe: Disable warning for CLANG9 tool chain Liming Gao
2019-10-16  2:06   ` [edk2-devel] " Wu, Hao A
2019-10-15  0:26 ` [Patch v2 08/11] CryptoPkg: Append options to make CLANG9 tool chain pass build Liming Gao
2019-10-15  9:29   ` [edk2-devel] " Philippe Mathieu-Daudé
2019-10-16  1:12   ` Wang, Jian J
2019-10-15  0:26 ` [Patch v2 09/11] CryptoPkg IntrinsicLib: Make _fltused always be used Liming Gao
2019-10-15  9:30   ` [edk2-devel] " Philippe Mathieu-Daudé
2019-10-16  1:10   ` Wang, Jian J
2019-10-15  0:26 ` [Patch v2 10/11] EmulatorPkg: Enable CLANG9 tool chain Liming Gao
2019-10-16  9:32   ` [edk2-devel] " Ni, Ray
2019-10-17  3:31     ` Liming Gao
2019-10-17  5:21       ` Ni, Ray
2019-10-15  0:26 ` [Patch v2 11/11] OvmfPkg: " Liming Gao
2019-10-15  7:36 ` [edk2-devel] [Patch v2 00/11] New Cross OS tool chain CLANG9 Laszlo Ersek
2019-10-16  0:55   ` Liming Gao
2019-10-16  9:19 ` Bob Feng
2019-10-17  2:15   ` Liming Gao

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4A89E2EF3DFEDB4C8BFDE51014F606A14E51D630@SHSMSX104.ccr.corp.intel.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox