]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
sandbox: Write out bloblist when exiting
authorSimon Glass <sjg@chromium.org>
Sat, 6 Feb 2021 16:57:34 +0000 (09:57 -0700)
committerTom Rini <trini@konsulko.com>
Tue, 2 Mar 2021 20:53:37 +0000 (15:53 -0500)
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>
arch/sandbox/cpu/state.c

index 4ffaf163789bca3801ae39c2d21fa88f3423957a..f63cfd38ee40f001641001b55e03380ac9a2370c 100644 (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) {