You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Robin Randhawa
991d62fa73
efi_loader: Fix crash on 32-bit systems
...
A type mismatch in the efi_allocate_pool boot service flow causes
hazardous memory scribbling on 32-bit systems.
This is efi_allocate_pool's prototype:
static efi_status_t EFIAPI efi_allocate_pool(int pool_type,
unsigned long size,
void **buffer);
Internally, it invokes efi_allocate_pages as follows:
efi_allocate_pages(0, pool_type, (size + 0xfff) >> 12,
(void*)buffer);
This is efi_allocate_pages' prototype:
efi_status_t efi_allocate_pages(int type, int memory_type,
unsigned long pages,
uint64_t *memory);
The problem: efi_allocate_pages does this internally:
*memory = addr;
This fix in efi_allocate_pool uses a transitional uintptr_t cast to
ensure the correct outcome, irrespective of the system's native word
size.
This was observed when bootefi'ing the EFI instance of FreeBSD's first
stage bootstrap (boot1.efi) on a 32-bit ARM platform (Qemu VExpress +
Cortex-a9).
Signed-off-by: Robin Randhawa <robin.randhawa@arm.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
9 years ago
..
bzip2
bzlib: Try another way to fix an unused variable
9 years ago
dhry
cmd_dhry.c: Use lldiv for vax_mips calculation as well
9 years ago
efi
x86: efi: payload: Make EFI payload build again
9 years ago
efi_loader
efi_loader: Fix crash on 32-bit systems
9 years ago
libfdt
libfdt: Drop inlining of fdt_path_offset()
9 years ago
lzma
…
lzo
lib/lzo: bugfix when input data is not compressed
9 years ago
rsa
treewide: replace #include <asm/errno.h> with <linux/errno.h>
9 years ago
tizen
exynos: Allow tizen to be built without an LCD
9 years ago
zlib
Use correct spelling of "U-Boot"
9 years ago
Kconfig
spl: move FDT_FIXUP_PARTITIONS to Kconfig
9 years ago
Makefile
spl: saveenv: adding saveenv support in SPL
9 years ago
addr_map.c
Add more SPDX-License-Identifier tags
9 years ago
aes.c
…
asm-offsets.c
…
bch.c
Add more SPDX-License-Identifier tags
9 years ago
bitrev.c
…
circbuf.c
…
crc7.c
…
crc8.c
lib/crc8: Add crc start value
9 years ago
crc16.c
lib/crc16.c: Rename cyg_crc16() to crc16_ccitt() and add crc start value
9 years ago
crc32.c
…
ctype.c
…
display_options.c
Drop config.h header from display_options.c
9 years ago
div64.c
lib: Don't instrument the div64 function
9 years ago
errno.c
…
errno_str.c
…
fdtdec.c
libfdt: Sync fdt_for_each_subnode() with upstream
9 years ago
fdtdec_common.c
lib, fdt: Adding fdtdec_get_uint function
10 years ago
fdtdec_test.c
…
gunzip.c
gunzip: cache-align write buffer memory
9 years ago
gzip.c
Move malloc_cache_aligned() to its own header
10 years ago
hang.c
Change my mailaddress
9 years ago
hashtable.c
spl: saveenv: adding saveenv support in SPL
9 years ago
initcall.c
efi: Display the correct initcall pre-relocation values
10 years ago
ldiv.c
…
linux_compat.c
linux_compat: handle __GFP_ZERO in kmalloc()
10 years ago
linux_string.c
…
list_sort.c
…
lmb.c
…
lz4.c
Add support for LZ4 decompression algorithm
10 years ago
lz4_wrapper.c
Fix sandbox build on Ubuntu 10.04
9 years ago
md5.c
…
membuff.c
Add a circular memory buffer implementation
9 years ago
net_utils.c
…
panic.c
lib: Split panic functions out of vsprintf.c
9 years ago
physmem.c
lib/physmem.c: Switch to __weak for arch_phys_memset
9 years ago
qsort.c
…
rand.c
…
rbtree.c
…
rc4.c
Add rivest cipher 4 (rc4) implementation
10 years ago
sha1.c
Add more SPDX-License-Identifier tags
9 years ago
sha256.c
…
slre.c
…
string.c
Remove unneeded remnants of bcopy().
9 years ago
strmhz.c
…
strto.c
Fix return value in trailing_strtoln()
9 years ago
time.c
timer: Provide an early timer
9 years ago
tiny-printf.c
tiny-printf: Adjust to avoid using data section
9 years ago
tpm.c
dm: Use uclass_first_device_err() where it is useful
9 years ago
trace.c
…
uuid.c
uuid: add selection by string for known partition type GUID
9 years ago
vsprintf.c
vsprintf.c: Always enable CONFIG_SYS_VSNPRINTF
9 years ago