mirror of
https://github.com/AsahiLinux/u-boot
synced 2025-02-26 04:17:09 +00:00
When the max_addr parameter of efi_find_free_memory() is within bounds of an existing map and fits the reservation, we just return that address as allocation value. That breaks however if max_addr is not page aligned. So ensure that it always comes to us page aligned, simplifying the allocation logic. Without this, I've seen breakage where we were allocating pages at -1U (32bit) which fits into a region that spans beyond 0x100000000. In that case, we would return 0xffffffff as a valid memory allocation, although we usually do guarantee they are all page aligned. Fix this by aligning the max address argument always. Signed-off-by: Alexander Graf <agraf@suse.de> |
||
---|---|---|
.. | ||
.gitignore | ||
efi_acpi.c | ||
efi_bootmgr.c | ||
efi_boottime.c | ||
efi_console.c | ||
efi_device_path.c | ||
efi_device_path_to_text.c | ||
efi_device_path_utilities.c | ||
efi_disk.c | ||
efi_file.c | ||
efi_gop.c | ||
efi_image_loader.c | ||
efi_memory.c | ||
efi_net.c | ||
efi_root_node.c | ||
efi_runtime.c | ||
efi_smbios.c | ||
efi_unicode_collation.c | ||
efi_variable.c | ||
efi_watchdog.c | ||
helloworld.c | ||
Kconfig | ||
Makefile |