[edk2-devel] [PATCH 1/1] BaseTools GenFw: Fix regression issue to convert the image to ACPI data

Leif Lindholm leif at nuviainc.com
Sat Jun 5 18:52:42 UTC 2021


Hi Liming,

On Sat, Jun 05, 2021 at 09:18:54 +0800, gaoliming wrote:
> With GCC49 tool chain, aslc file is compiled into elf image.
> But, its text section has no CODE attribute. So, it can't be detected
> by new GenFw tool.For this type file. its text section is not required.
> Its data section will be converted to acpi table.
> 
> This fix is to remove assert check when the generated image is ACPI data.

Note - this does not only affect GCC49: it also affects at least
GCC5 and CLANG38. This patch resolves the issue.

Tested-by: Leif Lindholm <leif at nuviainc.com> (GCC49, GCC5, CLANG38)

Thanks!

/
    Leif

> Signed-off-by: Liming Gao <gaoliming at byosoft.com.cn>
> Cc: Ray Ni <ray.ni at intel.com>
> Cc: Leif Lindholm <leif at nuviainc.com>
> Cc: Bob Feng <bob.c.feng at intel.com>
> ---
>  This patch has been verified on GCC49 for AARCH64 platform. 
> 
>  BaseTools/Source/C/GenFw/Elf32Convert.c | 2 +-
>  BaseTools/Source/C/GenFw/Elf64Convert.c | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/BaseTools/Source/C/GenFw/Elf32Convert.c b/BaseTools/Source/C/GenFw/Elf32Convert.c
> index 7c8a065678ac..314f8233234d 100644
> --- a/BaseTools/Source/C/GenFw/Elf32Convert.c
> +++ b/BaseTools/Source/C/GenFw/Elf32Convert.c
> @@ -435,7 +435,7 @@ ScanSections32 (
>      }
>    }
>  
> -  if (!FoundSection) {
> +  if (!FoundSection && mOutImageType != FW_ACPI_IMAGE) {
>      Error (NULL, 0, 3000, "Invalid", "Did not find any '.text' section.");
>      assert (FALSE);
>    }
> diff --git a/BaseTools/Source/C/GenFw/Elf64Convert.c b/BaseTools/Source/C/GenFw/Elf64Convert.c
> index 8fe672e98448..8b09db7b690b 100644
> --- a/BaseTools/Source/C/GenFw/Elf64Convert.c
> +++ b/BaseTools/Source/C/GenFw/Elf64Convert.c
> @@ -714,7 +714,7 @@ ScanSections64 (
>      }
>    }
>  
> -  if (!FoundSection) {
> +  if (!FoundSection && mOutImageType != FW_ACPI_IMAGE) {
>      Error (NULL, 0, 3000, "Invalid", "Did not find any '.text' section.");
>      assert (FALSE);
>    }
> -- 
> 2.27.0.windows.1
> 
> 
> 
> 
> 
> 
> 


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#76103): https://edk2.groups.io/g/devel/message/76103
Mute This Topic: https://groups.io/mt/83322902/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-





More information about the edk2-devel-archive mailing list