u-boot-brain/lib/efi_loader
Alexander Graf ae67dca5e6 efi_loader: helloworld.c: Explicitly use .rodata for loaded_image_guid
Commit bbf75dd934 ("efi_loader: output load options in helloworld")
introduced a const variable in efi_main() called loaded_image_guid which
got populated from a constant struct.

While you would usually expect a compiler to realize that this variable
should really just be a global pointer to .rodata, gcc disagrees and instead
puts it on the stack. Unfortunately in some implementations of gcc it does
so my calling memcpy() which we do not implement in our hello world
environment.

So let's explicitly move it to a global variable which in turn puts it in
.rodata reliably and gets rid of the memcpy().

Fixes: bbf75dd934 ("efi_loader: output load options in helloworld")
Reported-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Tested-by: Florian Fainelli <f.fainelli@gmail.com>
2017-12-16 22:51:19 +01:00
..
.gitignore lib: gitignore *.elf and *.so generated by efi_loader 2017-01-09 10:30:24 -05:00
efi_bootmgr.c efi_loader: add bootmgr 2017-09-20 11:08:01 +02:00
efi_boottime.c efi_loader: helper function to add EFI object to list 2017-12-01 13:41:01 +01:00
efi_console.c efi_loader: efi_console: use helper functions 2017-12-01 13:22:56 +01:00
efi_device_path_to_text.c efi_loader: add missing breaks 2017-12-01 22:29:02 +01:00
efi_device_path.c efi_loader: simplify find_obj 2017-12-01 13:37:20 +01:00
efi_disk.c efi_loader: Fix partition offsets 2017-12-01 22:30:47 +01:00
efi_file.c efi_loader: add file/filesys support 2017-09-20 10:43:54 +02:00
efi_gop.c efi_loader: helper function to add EFI object to list 2017-12-01 13:41:01 +01:00
efi_image_loader.c efi_loader: set loaded image code/data type properly 2017-09-20 11:10:24 +02:00
efi_memory.c efi_loader: consistently use efi_uintn_t in boot services 2017-12-01 13:22:56 +01:00
efi_net.c efi_loader: helper function to add EFI object to list 2017-12-01 13:41:01 +01:00
efi_runtime.c efi_loader: efi variable support 2017-09-20 11:00:57 +02:00
efi_smbios.c smbios: Expose in efi_loader as table 2016-10-19 09:01:52 +02:00
efi_variable.c efi_loader: print GUIDs 2017-09-20 11:10:42 +02:00
efi_watchdog.c efi_loader: implement SetWatchdogTimer 2017-12-01 13:22:55 +01:00
helloworld.c efi_loader: helloworld.c: Explicitly use .rodata for loaded_image_guid 2017-12-16 22:51:19 +01:00
Kconfig x86: Enable EFI loader support 2016-11-14 23:24:04 +01:00
Makefile efi_loader helloworld.efi: Fix building with -Os 2017-12-01 22:31:00 +01:00