Arthur Heymans has submitted this change. ( https://review.coreboot.org/c/coreboot/+/64235 )
(
2 is the latest approved patch-set. No files were changed between the latest approved patch-set and the submitted one. )Change subject: payloads/grub: Work around entry point issue ......................................................................
payloads/grub: Work around entry point issue
With -Os grub-mkimage does not create an elf with the correct entry point because some parts of the elf images are placed in .text.unlikely. The linker does not know where to place that and places it below .text, hence messing up the entry point. To avoid this use the compiler flag -fno-reorder-functions.
Change-Id: Ic4a12f45d30b781870faa38575e8b2c10e0a42e8 Resolves: https://ticket.coreboot.org/issues/343 Signed-off-by: Arthur Heymans arthur@aheymans.xyz Reviewed-on: https://review.coreboot.org/c/coreboot/+/64235 Reviewed-by: Nico Huber nico.h@gmx.de Reviewed-by: Hackware human@hackware.cl Reviewed-by: Sean Rhodes sean@starlabs.systems Reviewed-by: Michael Niewöhner foss@mniewoehner.de Reviewed-by: Paul Menzel paulepanter@mailbox.org Reviewed-by: Angel Pons th3fanbus@gmail.com Tested-by: build bot (Jenkins) no-reply@coreboot.org --- M payloads/external/GRUB2/Makefile 1 file changed, 26 insertions(+), 1 deletion(-)
Approvals: build bot (Jenkins): Verified Nico Huber: Looks good to me, but someone else must approve Paul Menzel: Looks good to me, but someone else must approve Angel Pons: Looks good to me, but someone else must approve Michael Niewöhner: Looks good to me, approved Sean Rhodes: Looks good to me, approved Hackware: Looks good to me, but someone else must approve
diff --git a/payloads/external/GRUB2/Makefile b/payloads/external/GRUB2/Makefile index 31b0f53..5e82f3e 100644 --- a/payloads/external/GRUB2/Makefile +++ b/payloads/external/GRUB2/Makefile @@ -34,7 +34,7 @@ cd grub2/build && ../configure CC="$(HOSTCC)" LD="$(LD)" \ FREETYPE="pkg-config freetype2" BUILD_FREETYPE="pkg-config freetype2" \ TARGET_CC="$(CC)" TARGET_OBJCOPY="$(OBJCOPY)" TARGET_STRIP="$(STRIP)" \ - CFLAGS=-O2 TARGET_CFLAGS=-Os \ + CFLAGS=-O2 TARGET_CFLAGS="-Os -fno-reorder-functions" \ --with-platform=coreboot --enable-boot-time --disable-werror
config: grub2/build/config.h checkout