u-boot/lib
Heinrich Schuchardt 7d3af58ed9 efi_loader: check memory address before freeing
When we call FreePages() we essentially add memory to our memory map. We
shouldn't do this for memory that does not exit.

Check if the memory that is to be freed via FreePages() or FreePool() is in
our memory map and is not EFI_CONVENTIONAL_MEMORY.

This check is mandated by the UEFI specification.

Cf. UEFI SCT  II (2017), 3.2.2 FreePages(), 5.1.2.1 - 5.1.2.2

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2019-05-12 20:54:22 +02:00
..
at91 SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
bzip2 SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
dhry SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
efi efi_loader: consistent naming of protocol GUIDs 2019-04-23 00:37:27 +02:00
efi_driver efi_loader: move efi_save_gd() call to board_r.c 2019-04-12 22:00:42 +02:00
efi_loader efi_loader: check memory address before freeing 2019-05-12 20:54:22 +02:00
efi_selftest efi_loader: make device path to text protocol customizable 2019-05-12 20:54:22 +02:00
libavb libavb: Handle wrong hashtree_error_mode in avb_append_options() 2018-08-24 13:19:53 -04:00
libfdt libfdt: Add phandle generation helper 2019-04-11 20:10:50 -06:00
lzma SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
lzo SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
optee optee: adjust dependencies and default values for dram 2018-10-22 14:37:28 +02:00
rsa rsa: check that pointer checksum isn't NULL before using it 2019-03-25 11:44:12 -04:00
tizen SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
zlib SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
zstd lib: add Zstandard decompression support 2019-05-05 08:48:50 -04:00
addr_map.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
aes.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
asm-offsets.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
bch.c fix compile error on macOS Mojave 2019-04-03 10:26:46 -04:00
bitrev.c lib: bitrev: Sync with Linux kernel v4.17 2018-09-18 00:01:18 -06:00
charset.c lib: add u16_strcpy/strdup functions 2019-02-13 09:40:05 +01:00
circbuf.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
crc7.c lib: add crc7 from Linux 2011-01-18 23:38:08 +01:00
crc8.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
crc16.c Roll CRC16-CCITT into the hash infrastructure 2018-12-08 20:18:44 -05:00
crc32.c lib: crc32: mark static variable as __efi_runtime_data 2018-12-23 02:39:52 +01:00
crc32c.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
ctype.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
display_options.c lib/display_options: avoid illegal memory access 2019-05-05 08:48:50 -04:00
div64.c div64: Don't instrument the division function 2019-04-23 20:26:43 -06:00
errno.c Add basic errno support. 2010-09-19 19:29:47 +02:00
errno_str.c lib: errno: introduce errno_str(): returns errno related message 2014-12-11 13:18:41 -07:00
fdtdec.c fdtdec: Use fdt_setprop_u32() for fdtdec_set_phandle() 2019-04-23 20:26:43 -06:00
fdtdec_common.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
fdtdec_test.c fdtdec: test: Add carveout tests 2019-04-11 20:10:50 -06:00
gunzip.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
gzip.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
hang.c serial: Allow serial to be absent in TPL 2018-10-09 04:40:27 -06:00
hashtable.c hashtable: fix environment variable corruption 2019-02-09 07:50:54 -05:00
hexdump.c lib: Add hexdump 2018-06-13 07:49:12 -04:00
image-sparse.c mmc: Separate "mmc swrite" from fastboot 2018-05-30 11:59:21 +02:00
Kconfig lib: add Zstandard decompression support 2019-05-05 08:48:50 -04:00
ldiv.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
linux_compat.c Make kmalloc'ed memory really DMA-safe 2018-08-31 11:59:44 -04:00
linux_string.c Make linux kernel string funcs available to tools 2012-12-13 11:46:07 -07:00
list_sort.c kbuild: force to define __UBOOT__ in all the C sources 2014-09-16 12:23:56 -04:00
lmb.c lmb: handle more than one DRAM BANK 2019-02-02 08:19:17 -05:00
lz4.c SPDX: Convert a few files that were missed before 2018-05-10 20:38:35 -04:00
lz4_wrapper.c image: android: allow booting lz4-compressed kernels 2019-04-24 07:27:32 -04:00
Makefile lib: add Zstandard decompression support 2019-05-05 08:48:50 -04:00
md5.c GCC47: Fix warning in md5.c 2012-04-29 14:14:08 +02:00
membuff.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
net_utils.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
of_live.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
panic.c Consolidate __assert_failed into one implementation 2018-04-28 18:32:23 -04:00
physmem.c sandbox: physmem: Use mapping to support sandbox 2018-12-05 06:01:34 -07:00
qsort.c Include common.h in qsort.c to fix build warning 2011-12-07 08:39:54 +01:00
rand.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
rbtree.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
rc4.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
sha1.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
sha256.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
slre.c lib/slre: remove superfluous assignment 2018-09-05 16:02:34 -04:00
smbios.c sandbox: smbios: Update to support sandbox 2018-12-02 21:59:37 +01:00
string.c string: Include the config header 2018-11-20 19:14:22 -07:00
strmhz.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
strto.c lib: strto: fix metric suffix parsing in strtoul[l] 2018-09-20 20:11:01 +05:30
tables_csum.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
time.c lib: time: update module enable MACRO 2019-03-29 10:53:18 -04:00
tiny-printf.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
tpm-common.c tpm: Fix a logging warning in unpack_byte_string() 2018-12-05 06:01:34 -07:00
tpm-utils.h tpm: Convert to use a device parameter 2018-11-29 09:30:06 -07:00
tpm-v1.c tpm: simplify: tpm_set_global_lock() 2019-02-19 08:55:43 -05:00
tpm-v2.c tpm: Convert to use a device parameter 2018-11-29 09:30:06 -07:00
trace.c Convert CONFIG_TRACE_BUFFER_SIZE et al to Kconfig 2019-04-23 20:26:43 -06:00
uuid.c lib: uuid: Fix unseeded PRNG on RANDOM_UUID=y 2019-05-02 18:17:50 +02:00
vsprintf.c efi_loader: make device path to text protocol customizable 2019-05-12 20:54:22 +02:00
xxhash.c lib: Add xxhash support 2019-05-05 08:48:50 -04:00