diff options
author | Brandon Maier <brandon.maier@rockwellcollins.com> | 2019-11-08 12:08:54 -0600 |
---|---|---|
committer | Simon Horman <horms@verge.net.au> | 2020-01-03 09:47:43 +0100 |
commit | 66b151d3ab7dc6bb35f589a4596c426fdb3e4370 (patch) | |
tree | bb36e3f729e949e9af89dab562d43a3f2c2bf385 /kexec | |
parent | 2572b8d702e452624bdb8d7b7c39f458e7dcf2ce (diff) |
ARM: Use mmap for zImage initrd
We use a large initrd that maxes out our available RAM when loading
kexec. The problem can be mitigated by using slurp_file_mmap(), which
avoids creating a copy of the initrd. The initrd does not use free,
realloc, etc, so it should be safe to use.
Signed-off-by: Brandon Maier <brandon.maier@rockwellcollins.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
Diffstat (limited to 'kexec')
-rw-r--r-- | kexec/arch/arm/kexec-zImage-arm.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kexec/arch/arm/kexec-zImage-arm.c b/kexec/arch/arm/kexec-zImage-arm.c index 2a7eea9..f9d452f 100644 --- a/kexec/arch/arm/kexec-zImage-arm.c +++ b/kexec/arch/arm/kexec-zImage-arm.c @@ -478,7 +478,7 @@ int zImage_arm_load(int argc, char **argv, const char *buf, off_t len, command_line_len = COMMAND_LINE_SIZE; } if (ramdisk) - ramdisk_buf = slurp_file(ramdisk, &initrd_size); + ramdisk_buf = slurp_file_mmap(ramdisk, &initrd_size); if (dtb_file) dtb_buf = slurp_file(dtb_file, &dtb_length); |