Message ID | 0a972044b11f7e469f122f3dc7b6778145b60133.1659090751.git.maciek@thing.com |
---|---|
State | New |
Headers | show |
Series | [v2] arm/edk2-firmware: cherry pick gcc 12.x compatibility patches | expand |
On Fri, Jul 29, 2022 at 12:34:46PM +0200, Maciej Borzecki wrote: > Cherry pick gcc 12.x compatibility patches from the upstream. > > Signed-off-by: Maciej Borzecki <maciek@thing.com> > --- > meta-arm/recipes-bsp/uefi/edk2-firmware.inc | 3 ++ > ...001-Basetools-turn-off-gcc12-warning.patch | 39 +++++++++++++++ > .../0002-BaseTools-fix-gcc12-warning.patch | 49 +++++++++++++++++++ > .../0003-BaseTools-fix-gcc12-warning.patch | 47 ++++++++++++++++++ > 4 files changed, 138 insertions(+) > create mode 100644 meta-arm/recipes-bsp/uefi/files/0001-Basetools-turn-off-gcc12-warning.patch > create mode 100644 meta-arm/recipes-bsp/uefi/files/0002-BaseTools-fix-gcc12-warning.patch > create mode 100644 meta-arm/recipes-bsp/uefi/files/0003-BaseTools-fix-gcc12-warning.patch > > diff --git a/meta-arm/recipes-bsp/uefi/edk2-firmware.inc b/meta-arm/recipes-bsp/uefi/edk2-firmware.inc > index e0dfa28b22fca06807cbdc5034618ede3c53a8f2..2219cae76ee79ee23b75b225dd489413f03ed224 100644 > --- a/meta-arm/recipes-bsp/uefi/edk2-firmware.inc > +++ b/meta-arm/recipes-bsp/uefi/edk2-firmware.inc > @@ -19,6 +19,9 @@ SRC_URI = "\ > ${EDK2_PLATFORMS_SRC_URI};name=edk2-platforms;destsuffix=edk2/edk2-platforms;nobranch=1 \ > file://unaligned.patch \ > file://default.patch;patchdir=edk2-platforms \ > + file://0001-Basetools-turn-off-gcc12-warning.patch \ > + file://0002-BaseTools-fix-gcc12-warning.patch \ > + file://0003-BaseTools-fix-gcc12-warning.patch \ All 3 of these patches are in the version of edk2 that the master branch is using. Was your intention to send these for the kirkstone branch? If so, it does not apply cleanly. Thanks, Jon > " > > SRCREV_FORMAT = "edk2_edk2-platforms" > diff --git a/meta-arm/recipes-bsp/uefi/files/0001-Basetools-turn-off-gcc12-warning.patch b/meta-arm/recipes-bsp/uefi/files/0001-Basetools-turn-off-gcc12-warning.patch > new file mode 100644 > index 0000000000000000000000000000000000000000..1a530f3d076b0802daaa3b8512226e44352c9ceb > --- /dev/null > +++ b/meta-arm/recipes-bsp/uefi/files/0001-Basetools-turn-off-gcc12-warning.patch > @@ -0,0 +1,39 @@ > +From 22130dcd98b4d4b76ac8d922adb4a2dbc86fa52c Mon Sep 17 00:00:00 2001 > +From: Gerd Hoffmann <kraxel@redhat.com> > +Date: Thu, 24 Mar 2022 20:04:36 +0800 > +Subject: [PATCH] Basetools: turn off gcc12 warning > + > +In function ?SetDevicePathEndNode?, > + inlined from ?FileDevicePath? at DevicePathUtilities.c:857:5: > +DevicePathUtilities.c:321:3: error: writing 4 bytes into a region of size 1 [-Werror=stringop-overflow=] > + 321 | memcpy (Node, &mUefiDevicePathLibEndDevicePath, sizeof (mUefiDevicePathLibEndDevicePath)); > + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > +In file included from UefiDevicePathLib.h:22, > + from DevicePathUtilities.c:16: > +../Include/Protocol/DevicePath.h: In function ?FileDevicePath?: > +../Include/Protocol/DevicePath.h:51:9: note: destination object ?Type? of size 1 > + 51 | UINT8 Type; ///< 0x01 Hardware Device Path. > + | ^~~~ > + > +Upstream-Status: Backport > +Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> > +Reviewed-by: Bob Feng <bob.c.feng@intel.com> > +Signed-off-by: Maciej Borzecki <maciek@thing.com> > +--- > + BaseTools/Source/C/DevicePath/GNUmakefile | 3 +++ > + 1 file changed, 3 insertions(+) > + > +diff --git a/BaseTools/Source/C/DevicePath/GNUmakefile b/BaseTools/Source/C/DevicePath/GNUmakefile > +index 7ca08af9662d..b05d2bddfa68 100644 > +--- a/BaseTools/Source/C/DevicePath/GNUmakefile > ++++ b/BaseTools/Source/C/DevicePath/GNUmakefile > +@@ -13,6 +13,9 @@ OBJECTS = DevicePath.o UefiDevicePathLib.o DevicePathFromText.o DevicePathUtili > + > + include $(MAKEROOT)/Makefiles/app.makefile > + > ++# gcc 12 trips over device path handling > ++BUILD_CFLAGS += -Wno-error=stringop-overflow > ++ > + LIBS = -lCommon > + ifeq ($(CYGWIN), CYGWIN) > + LIBS += -L/lib/e2fsprogs -luuid > diff --git a/meta-arm/recipes-bsp/uefi/files/0002-BaseTools-fix-gcc12-warning.patch b/meta-arm/recipes-bsp/uefi/files/0002-BaseTools-fix-gcc12-warning.patch > new file mode 100644 > index 0000000000000000000000000000000000000000..8a095a0c2ea5e59f01360fa26414042f84f0445f > --- /dev/null > +++ b/meta-arm/recipes-bsp/uefi/files/0002-BaseTools-fix-gcc12-warning.patch > @@ -0,0 +1,49 @@ > +From 85021f8cf22d1bd4114803c6c610dea5ef0059f1 Mon Sep 17 00:00:00 2001 > +From: Gerd Hoffmann <kraxel@redhat.com> > +Date: Thu, 24 Mar 2022 20:04:35 +0800 > +Subject: [PATCH] BaseTools: fix gcc12 warning > + > +Sdk/C/LzmaEnc.c: In function ?LzmaEnc_CodeOneMemBlock?: > +Sdk/C/LzmaEnc.c:2828:19: error: storing the address of local variable ?outStream? in ?*p.rc.outStream? [-Werror=dangling-pointer=] > + 2828 | p->rc.outStream = &outStream.vt; > + | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ > +Sdk/C/LzmaEnc.c:2811:28: note: ?outStream? declared here > + 2811 | CLzmaEnc_SeqOutStreamBuf outStream; > + | ^~~~~~~~~ > +Sdk/C/LzmaEnc.c:2811:28: note: ?pp? declared here > +Sdk/C/LzmaEnc.c:2828:19: error: storing the address of local variable ?outStream? in ?*(CLzmaEnc *)pp.rc.outStream? [-Werror=dangling-pointer=] > + 2828 | p->rc.outStream = &outStream.vt; > + | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ > +Sdk/C/LzmaEnc.c:2811:28: note: ?outStream? declared here > + 2811 | CLzmaEnc_SeqOutStreamBuf outStream; > + | ^~~~~~~~~ > +Sdk/C/LzmaEnc.c:2811:28: note: ?pp? declared here > +cc1: all warnings being treated as errors > + > +Upstream-Status: Backport > +Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> > +Reviewed-by: Bob Feng <bob.c.feng@intel.com> > +Signed-off-by: Maciej Borzecki <maciek@thing.com> > +--- > + BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c | 3 ++- > + 1 file changed, 2 insertions(+), 1 deletion(-) > + > +diff --git a/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c b/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c > +index 4e9b499f8d80..4b9f5fa69248 100644 > +--- a/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c > ++++ b/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c > +@@ -2825,12 +2825,13 @@ SRes LzmaEnc_CodeOneMemBlock(CLzmaEncHandle pp, BoolInt reInit, > + > + nowPos64 = p->nowPos64; > + RangeEnc_Init(&p->rc); > +- p->rc.outStream = &outStream.vt; > + > + if (desiredPackSize == 0) > + return SZ_ERROR_OUTPUT_EOF; > + > ++ p->rc.outStream = &outStream.vt; > + res = LzmaEnc_CodeOneBlock(p, desiredPackSize, *unpackSize); > ++ p->rc.outStream = NULL; > + > + *unpackSize = (UInt32)(p->nowPos64 - nowPos64); > + *destLen -= outStream.rem; > diff --git a/meta-arm/recipes-bsp/uefi/files/0003-BaseTools-fix-gcc12-warning.patch b/meta-arm/recipes-bsp/uefi/files/0003-BaseTools-fix-gcc12-warning.patch > new file mode 100644 > index 0000000000000000000000000000000000000000..a9f1ccf2152a00094fe99fd01bcfd885d3ca6ba9 > --- /dev/null > +++ b/meta-arm/recipes-bsp/uefi/files/0003-BaseTools-fix-gcc12-warning.patch > @@ -0,0 +1,47 @@ > +From 7b005f344e533cd913c3ca05b266f9872df886d1 Mon Sep 17 00:00:00 2001 > +From: Gerd Hoffmann <kraxel@redhat.com> > +Date: Thu, 24 Mar 2022 20:04:34 +0800 > +Subject: [PATCH] BaseTools: fix gcc12 warning > + > +GenFfs.c:545:5: error: pointer ?InFileHandle? used after ?fclose? [-Werror=use-after-free] > + 545 | Error(NULL, 0, 4001, "Resource", "memory cannot be allocated of %s", InFileHandle); > + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > +GenFfs.c:544:5: note: call to ?fclose? here > + 544 | fclose (InFileHandle); > + | ^~~~~~~~~~~~~~~~~~~~~ > + > +Upstream-Status: Backport > +Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> > +Reviewed-by: Bob Feng <bob.c.feng@intel.com> > +Signed-off-by: Maciej Borzecki <maciek@thing.com> > +--- > + BaseTools/Source/C/GenFfs/GenFfs.c | 2 +- > + BaseTools/Source/C/GenSec/GenSec.c | 2 +- > + 2 files changed, 2 insertions(+), 2 deletions(-) > + > +diff --git a/BaseTools/Source/C/GenFfs/GenFfs.c b/BaseTools/Source/C/GenFfs/GenFfs.c > +index 949025c33325..d78d62ab3689 100644 > +--- a/BaseTools/Source/C/GenFfs/GenFfs.c > ++++ b/BaseTools/Source/C/GenFfs/GenFfs.c > +@@ -542,7 +542,7 @@ GetAlignmentFromFile(char *InFile, UINT32 *Alignment) > + PeFileBuffer = (UINT8 *) malloc (PeFileSize); > + if (PeFileBuffer == NULL) { > + fclose (InFileHandle); > +- Error(NULL, 0, 4001, "Resource", "memory cannot be allocated of %s", InFileHandle); > ++ Error(NULL, 0, 4001, "Resource", "memory cannot be allocated for %s", InFile); > + return EFI_OUT_OF_RESOURCES; > + } > + fread (PeFileBuffer, sizeof (UINT8), PeFileSize, InFileHandle); > +diff --git a/BaseTools/Source/C/GenSec/GenSec.c b/BaseTools/Source/C/GenSec/GenSec.c > +index d54a4f9e0a7d..b1d05367ec0b 100644 > +--- a/BaseTools/Source/C/GenSec/GenSec.c > ++++ b/BaseTools/Source/C/GenSec/GenSec.c > +@@ -1062,7 +1062,7 @@ GetAlignmentFromFile(char *InFile, UINT32 *Alignment) > + PeFileBuffer = (UINT8 *) malloc (PeFileSize); > + if (PeFileBuffer == NULL) { > + fclose (InFileHandle); > +- Error(NULL, 0, 4001, "Resource", "memory cannot be allocated of %s", InFileHandle); > ++ Error(NULL, 0, 4001, "Resource", "memory cannot be allocated for %s", InFile); > + return EFI_OUT_OF_RESOURCES; > + } > + fread (PeFileBuffer, sizeof (UINT8), PeFileSize, InFileHandle); > -- > 2.37.1 > >
On Fri, Jul 29, 2022 at 7:52 PM Jon Mason <jdmason@kudzu.us> wrote: > > On Fri, Jul 29, 2022 at 12:34:46PM +0200, Maciej Borzecki wrote: > > Cherry pick gcc 12.x compatibility patches from the upstream. > > > > Signed-off-by: Maciej Borzecki <maciek@thing.com> > > --- > > meta-arm/recipes-bsp/uefi/edk2-firmware.inc | 3 ++ > > ...001-Basetools-turn-off-gcc12-warning.patch | 39 +++++++++++++++ > > .../0002-BaseTools-fix-gcc12-warning.patch | 49 +++++++++++++++++++ > > .../0003-BaseTools-fix-gcc12-warning.patch | 47 ++++++++++++++++++ > > 4 files changed, 138 insertions(+) > > create mode 100644 meta-arm/recipes-bsp/uefi/files/0001-Basetools-turn-off-gcc12-warning.patch > > create mode 100644 meta-arm/recipes-bsp/uefi/files/0002-BaseTools-fix-gcc12-warning.patch > > create mode 100644 meta-arm/recipes-bsp/uefi/files/0003-BaseTools-fix-gcc12-warning.patch > > > > diff --git a/meta-arm/recipes-bsp/uefi/edk2-firmware.inc b/meta-arm/recipes-bsp/uefi/edk2-firmware.inc > > index e0dfa28b22fca06807cbdc5034618ede3c53a8f2..2219cae76ee79ee23b75b225dd489413f03ed224 100644 > > --- a/meta-arm/recipes-bsp/uefi/edk2-firmware.inc > > +++ b/meta-arm/recipes-bsp/uefi/edk2-firmware.inc > > @@ -19,6 +19,9 @@ SRC_URI = "\ > > ${EDK2_PLATFORMS_SRC_URI};name=edk2-platforms;destsuffix=edk2/edk2-platforms;nobranch=1 \ > > file://unaligned.patch \ > > file://default.patch;patchdir=edk2-platforms \ > > + file://0001-Basetools-turn-off-gcc12-warning.patch \ > > + file://0002-BaseTools-fix-gcc12-warning.patch \ > > + file://0003-BaseTools-fix-gcc12-warning.patch \ > > All 3 of these patches are in the version of edk2 that the master > branch is using. Was your intention to send these for the kirkstone > branch? If so, it does not apply cleanly. > Yes, sorry for the confusion. My brain is already fried waiting for the weekend. Let me resend this for kirkstone. Thanks, -- Maciej
On Fri, 29 Jul 2022 12:34:46 +0200, Maciej Borzecki wrote:
> Cherry pick gcc 12.x compatibility patches from the upstream.
Applied, thanks!
[1/1] arm/edk2-firmware: cherry pick gcc 12.x compatibility patches
commit: 29dc2147d755c4f8089404d6993546608616a966
Best regards,
diff --git a/meta-arm/recipes-bsp/uefi/edk2-firmware.inc b/meta-arm/recipes-bsp/uefi/edk2-firmware.inc index e0dfa28b22fca06807cbdc5034618ede3c53a8f2..2219cae76ee79ee23b75b225dd489413f03ed224 100644 --- a/meta-arm/recipes-bsp/uefi/edk2-firmware.inc +++ b/meta-arm/recipes-bsp/uefi/edk2-firmware.inc @@ -19,6 +19,9 @@ SRC_URI = "\ ${EDK2_PLATFORMS_SRC_URI};name=edk2-platforms;destsuffix=edk2/edk2-platforms;nobranch=1 \ file://unaligned.patch \ file://default.patch;patchdir=edk2-platforms \ + file://0001-Basetools-turn-off-gcc12-warning.patch \ + file://0002-BaseTools-fix-gcc12-warning.patch \ + file://0003-BaseTools-fix-gcc12-warning.patch \ " SRCREV_FORMAT = "edk2_edk2-platforms" diff --git a/meta-arm/recipes-bsp/uefi/files/0001-Basetools-turn-off-gcc12-warning.patch b/meta-arm/recipes-bsp/uefi/files/0001-Basetools-turn-off-gcc12-warning.patch new file mode 100644 index 0000000000000000000000000000000000000000..1a530f3d076b0802daaa3b8512226e44352c9ceb --- /dev/null +++ b/meta-arm/recipes-bsp/uefi/files/0001-Basetools-turn-off-gcc12-warning.patch @@ -0,0 +1,39 @@ +From 22130dcd98b4d4b76ac8d922adb4a2dbc86fa52c Mon Sep 17 00:00:00 2001 +From: Gerd Hoffmann <kraxel@redhat.com> +Date: Thu, 24 Mar 2022 20:04:36 +0800 +Subject: [PATCH] Basetools: turn off gcc12 warning + +In function ?SetDevicePathEndNode?, + inlined from ?FileDevicePath? at DevicePathUtilities.c:857:5: +DevicePathUtilities.c:321:3: error: writing 4 bytes into a region of size 1 [-Werror=stringop-overflow=] + 321 | memcpy (Node, &mUefiDevicePathLibEndDevicePath, sizeof (mUefiDevicePathLibEndDevicePath)); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from UefiDevicePathLib.h:22, + from DevicePathUtilities.c:16: +../Include/Protocol/DevicePath.h: In function ?FileDevicePath?: +../Include/Protocol/DevicePath.h:51:9: note: destination object ?Type? of size 1 + 51 | UINT8 Type; ///< 0x01 Hardware Device Path. + | ^~~~ + +Upstream-Status: Backport +Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> +Reviewed-by: Bob Feng <bob.c.feng@intel.com> +Signed-off-by: Maciej Borzecki <maciek@thing.com> +--- + BaseTools/Source/C/DevicePath/GNUmakefile | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/BaseTools/Source/C/DevicePath/GNUmakefile b/BaseTools/Source/C/DevicePath/GNUmakefile +index 7ca08af9662d..b05d2bddfa68 100644 +--- a/BaseTools/Source/C/DevicePath/GNUmakefile ++++ b/BaseTools/Source/C/DevicePath/GNUmakefile +@@ -13,6 +13,9 @@ OBJECTS = DevicePath.o UefiDevicePathLib.o DevicePathFromText.o DevicePathUtili + + include $(MAKEROOT)/Makefiles/app.makefile + ++# gcc 12 trips over device path handling ++BUILD_CFLAGS += -Wno-error=stringop-overflow ++ + LIBS = -lCommon + ifeq ($(CYGWIN), CYGWIN) + LIBS += -L/lib/e2fsprogs -luuid diff --git a/meta-arm/recipes-bsp/uefi/files/0002-BaseTools-fix-gcc12-warning.patch b/meta-arm/recipes-bsp/uefi/files/0002-BaseTools-fix-gcc12-warning.patch new file mode 100644 index 0000000000000000000000000000000000000000..8a095a0c2ea5e59f01360fa26414042f84f0445f --- /dev/null +++ b/meta-arm/recipes-bsp/uefi/files/0002-BaseTools-fix-gcc12-warning.patch @@ -0,0 +1,49 @@ +From 85021f8cf22d1bd4114803c6c610dea5ef0059f1 Mon Sep 17 00:00:00 2001 +From: Gerd Hoffmann <kraxel@redhat.com> +Date: Thu, 24 Mar 2022 20:04:35 +0800 +Subject: [PATCH] BaseTools: fix gcc12 warning + +Sdk/C/LzmaEnc.c: In function ?LzmaEnc_CodeOneMemBlock?: +Sdk/C/LzmaEnc.c:2828:19: error: storing the address of local variable ?outStream? in ?*p.rc.outStream? [-Werror=dangling-pointer=] + 2828 | p->rc.outStream = &outStream.vt; + | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ +Sdk/C/LzmaEnc.c:2811:28: note: ?outStream? declared here + 2811 | CLzmaEnc_SeqOutStreamBuf outStream; + | ^~~~~~~~~ +Sdk/C/LzmaEnc.c:2811:28: note: ?pp? declared here +Sdk/C/LzmaEnc.c:2828:19: error: storing the address of local variable ?outStream? in ?*(CLzmaEnc *)pp.rc.outStream? [-Werror=dangling-pointer=] + 2828 | p->rc.outStream = &outStream.vt; + | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ +Sdk/C/LzmaEnc.c:2811:28: note: ?outStream? declared here + 2811 | CLzmaEnc_SeqOutStreamBuf outStream; + | ^~~~~~~~~ +Sdk/C/LzmaEnc.c:2811:28: note: ?pp? declared here +cc1: all warnings being treated as errors + +Upstream-Status: Backport +Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> +Reviewed-by: Bob Feng <bob.c.feng@intel.com> +Signed-off-by: Maciej Borzecki <maciek@thing.com> +--- + BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c b/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c +index 4e9b499f8d80..4b9f5fa69248 100644 +--- a/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c ++++ b/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c +@@ -2825,12 +2825,13 @@ SRes LzmaEnc_CodeOneMemBlock(CLzmaEncHandle pp, BoolInt reInit, + + nowPos64 = p->nowPos64; + RangeEnc_Init(&p->rc); +- p->rc.outStream = &outStream.vt; + + if (desiredPackSize == 0) + return SZ_ERROR_OUTPUT_EOF; + ++ p->rc.outStream = &outStream.vt; + res = LzmaEnc_CodeOneBlock(p, desiredPackSize, *unpackSize); ++ p->rc.outStream = NULL; + + *unpackSize = (UInt32)(p->nowPos64 - nowPos64); + *destLen -= outStream.rem; diff --git a/meta-arm/recipes-bsp/uefi/files/0003-BaseTools-fix-gcc12-warning.patch b/meta-arm/recipes-bsp/uefi/files/0003-BaseTools-fix-gcc12-warning.patch new file mode 100644 index 0000000000000000000000000000000000000000..a9f1ccf2152a00094fe99fd01bcfd885d3ca6ba9 --- /dev/null +++ b/meta-arm/recipes-bsp/uefi/files/0003-BaseTools-fix-gcc12-warning.patch @@ -0,0 +1,47 @@ +From 7b005f344e533cd913c3ca05b266f9872df886d1 Mon Sep 17 00:00:00 2001 +From: Gerd Hoffmann <kraxel@redhat.com> +Date: Thu, 24 Mar 2022 20:04:34 +0800 +Subject: [PATCH] BaseTools: fix gcc12 warning + +GenFfs.c:545:5: error: pointer ?InFileHandle? used after ?fclose? [-Werror=use-after-free] + 545 | Error(NULL, 0, 4001, "Resource", "memory cannot be allocated of %s", InFileHandle); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +GenFfs.c:544:5: note: call to ?fclose? here + 544 | fclose (InFileHandle); + | ^~~~~~~~~~~~~~~~~~~~~ + +Upstream-Status: Backport +Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> +Reviewed-by: Bob Feng <bob.c.feng@intel.com> +Signed-off-by: Maciej Borzecki <maciek@thing.com> +--- + BaseTools/Source/C/GenFfs/GenFfs.c | 2 +- + BaseTools/Source/C/GenSec/GenSec.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/BaseTools/Source/C/GenFfs/GenFfs.c b/BaseTools/Source/C/GenFfs/GenFfs.c +index 949025c33325..d78d62ab3689 100644 +--- a/BaseTools/Source/C/GenFfs/GenFfs.c ++++ b/BaseTools/Source/C/GenFfs/GenFfs.c +@@ -542,7 +542,7 @@ GetAlignmentFromFile(char *InFile, UINT32 *Alignment) + PeFileBuffer = (UINT8 *) malloc (PeFileSize); + if (PeFileBuffer == NULL) { + fclose (InFileHandle); +- Error(NULL, 0, 4001, "Resource", "memory cannot be allocated of %s", InFileHandle); ++ Error(NULL, 0, 4001, "Resource", "memory cannot be allocated for %s", InFile); + return EFI_OUT_OF_RESOURCES; + } + fread (PeFileBuffer, sizeof (UINT8), PeFileSize, InFileHandle); +diff --git a/BaseTools/Source/C/GenSec/GenSec.c b/BaseTools/Source/C/GenSec/GenSec.c +index d54a4f9e0a7d..b1d05367ec0b 100644 +--- a/BaseTools/Source/C/GenSec/GenSec.c ++++ b/BaseTools/Source/C/GenSec/GenSec.c +@@ -1062,7 +1062,7 @@ GetAlignmentFromFile(char *InFile, UINT32 *Alignment) + PeFileBuffer = (UINT8 *) malloc (PeFileSize); + if (PeFileBuffer == NULL) { + fclose (InFileHandle); +- Error(NULL, 0, 4001, "Resource", "memory cannot be allocated of %s", InFileHandle); ++ Error(NULL, 0, 4001, "Resource", "memory cannot be allocated for %s", InFile); + return EFI_OUT_OF_RESOURCES; + } + fread (PeFileBuffer, sizeof (UINT8), PeFileSize, InFileHandle);
Cherry pick gcc 12.x compatibility patches from the upstream. Signed-off-by: Maciej Borzecki <maciek@thing.com> --- meta-arm/recipes-bsp/uefi/edk2-firmware.inc | 3 ++ ...001-Basetools-turn-off-gcc12-warning.patch | 39 +++++++++++++++ .../0002-BaseTools-fix-gcc12-warning.patch | 49 +++++++++++++++++++ .../0003-BaseTools-fix-gcc12-warning.patch | 47 ++++++++++++++++++ 4 files changed, 138 insertions(+) create mode 100644 meta-arm/recipes-bsp/uefi/files/0001-Basetools-turn-off-gcc12-warning.patch create mode 100644 meta-arm/recipes-bsp/uefi/files/0002-BaseTools-fix-gcc12-warning.patch create mode 100644 meta-arm/recipes-bsp/uefi/files/0003-BaseTools-fix-gcc12-warning.patch