sandbox: Write out bloblist when exiting

Sandbox provides a way to write out its emulated memory on exit. This
makes it possible to pass a bloblist from one phase (e.g. SPL) to the
next.

However the bloblist is not closed off, so the checksum is generally
invalid. Fix this by finishing up the bloblist before writing the memory
file.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass 2021-02-06 09:57:34 -07:00 committed by Tom Rini
parent b308d9fd18
commit 1c52fcca72

View File

@ -4,6 +4,7 @@
*/
#include <common.h>
#include <bloblist.h>
#include <errno.h>
#include <fdtdec.h>
#include <log.h>
@ -398,8 +399,12 @@ int state_uninit(void)
{
int err;
log_info("Writing sandbox state\n");
state = &main_state;
/* Finish the bloblist, so that it is correct before writing memory */
bloblist_finish();
if (state->write_ram_buf) {
err = os_write_ram_buf(state->ram_buf_fname);
if (err) {