]> git.baikalelectronics.ru Git - uboot.git/commit
sandbox: fix sandbox_reset()
authorHeinrich Schuchardt <xypron.glpk@gmx.de>
Wed, 12 May 2021 16:38:51 +0000 (18:38 +0200)
committerSimon Glass <sjg@chromium.org>
Tue, 6 Jul 2021 16:38:03 +0000 (10:38 -0600)
commitd516c7ff968ed4b1481df39a363aeb7ca1b4b4b7
tree45ec30728735831e14856d371112daaef89c44a1
parent84e91cfb885b6317dc3ef86546e14d580b2a0450
sandbox: fix sandbox_reset()

state_uninit() and dm_uninit() are mutually exclusive:

state_uninit() prints via drivers. So it cannot be executed after
dm_uninit().

dm_uninit() requires memory. So it cannot be executed after state_uninit()
which releases all memory.

Just skip dm_uninit() when resetting the sandbox. We will wake up in a new
process and allocate new memory. So this cleanup is not required. We don't
do it in sandbox_exit() either.

This avoids a segmentation error when efi_reset_system_boottime() is
invoked by a UEFI application.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
arch/sandbox/cpu/start.c