Hi Heinrich, On Sun, 6 Apr 2025 at 10:30, Heinrich Schuchardt <xypron.g...@gmx.de> wrote: > > Am 6. April 2025 00:12:47 MESZ schrieb Simon Glass <s...@chromium.org>: > >This removal should be the last thing done, so that U-Boot does no more > >memory allocations afterwards. Move it and add a comment. > > > >Note that the TCG2 log is updated after this call, but I cannot see any > >allocations there. > > > >Reported-by: Christian Kohlschütter <christ...@kohlschutter.com> > > This commit message fails to describe which problem has been observed and you > try to solve. > > A link to the original communication would be helpful.
OK I'll add those. > > Furthermore, please, rebase it on my patch adding eth_halt(). > <https://lore.kernel.org/u-boot/CAFLszTgp38yBXnSigfT-mEFU=rqyAKjp0WBQGgHP_N3vRxCq=q...@mail.gmail.com/T/#m1e55cc094f575797da3b4aed6b369544f8d6f8f4> I see that has been applied to -master but I would like to target my series for -next I would rather that we fix the drivers that add your work-around, but doing both is OK too. Regards, Simon > > Best regards > > Heinrich > > > > >Signed-off-by: Simon Glass <s...@chromium.org> > >--- > > > > lib/efi_loader/efi_boottime.c | 21 +++++++++++++-------- > > 1 file changed, 13 insertions(+), 8 deletions(-) > > > >diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c > >index ffe43accd1e..e525662f82f 100644 > >--- a/lib/efi_loader/efi_boottime.c > >+++ b/lib/efi_loader/efi_boottime.c > >@@ -2250,14 +2250,6 @@ static efi_status_t EFIAPI > >efi_exit_boot_services(efi_handle_t image_handle, > > list_del(&evt->link); > > } > > > >- if (!efi_st_keep_devices) { > >- bootm_disable_interrupts(); > >- if (IS_ENABLED(CONFIG_USB_DEVICE)) > >- udc_disconnect(); > >- board_quiesce_devices(); > >- dm_remove_devices_active(); > >- } > >- > > /* Patch out unsupported runtime function */ > > efi_runtime_detach(); > > > >@@ -2279,6 +2271,19 @@ static efi_status_t EFIAPI > >efi_exit_boot_services(efi_handle_t image_handle, > > /* Give the payload some time to boot */ > > efi_set_watchdog(0); > > schedule(); > >+ > >+ /* > >+ * this should be the last thing done, to avoid memory allocations > >+ * between removing devices and the OS taking over > >+ */ > >+ if (!efi_st_keep_devices) { > >+ bootm_disable_interrupts(); > >+ if (IS_ENABLED(CONFIG_USB_DEVICE)) > >+ udc_disconnect(); > >+ board_quiesce_devices(); > >+ dm_remove_devices_active(); > >+ } > >+ > > out: > > if (IS_ENABLED(CONFIG_EFI_TCG2_PROTOCOL)) { > > if (ret != EFI_SUCCESS) >