bootstd: Avoid freeing a non-allocated buffer
EFI applications can be very large and thus used to cause boot failures when malloc() space was exhausted. A recent changed fixed this by using the kernel_addr_r environment var as the address of the buffer. However, it still frees the buffer when the bootflow is discarded. Fix this by introducing a flag to indicate whether the buffer was allocated, or not. Note that kernel_addr_r is not the last word here. It might be better to use lmb to place images. But there is a lot of refactoring to do before we can remove the environment variables. The distro scripts rely on them so it is safe for bootstd to do so too. Fixes: 6a8c2f97 bootstd: Avoid allocating memory for the EFI file Signed-off-by:Simon Glass <sjg@chromium.org> Reported by: Simon Glass <sjg@chromium.org> Reported by: Shantur Rathore <i@shantur.com> Reviewed-by:
Heinrich Schuchardt <xypron.glpk@gmx.de> Tested-by:
Shantur Rathore <i@shantur.com>
Loading
Please register or sign in to comment