From 0837d010a6ee140ff3cc770aadc89fbb015a7ca2 Mon Sep 17 00:00:00 2001 From: Dimitri John Ledkov Date: Tue, 6 Apr 2021 14:58:00 +0100 Subject: fallback: add compile option FALLBACK_NONINTERACTIVE In the cloud, all boots are non-interactive with keyboard and console access either typically not available or prohibited. Also clouds always do firstboot via fallback. This currently results in an unacceptable 5s boot delay whilst fallback offers interactive reset options that cannot be actioned. In Ubuntu, we'd like to make fallback noninteractive by default without any boot delays, due to bootspeed impact on firstboot of the preinstalled images. Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/shim/+bug/1922581 Signed-off-by: Dimitri John Ledkov --- fallback.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'fallback.c') diff --git a/fallback.c b/fallback.c index 801955c7..302eeac1 100644 --- a/fallback.c +++ b/fallback.c @@ -1041,6 +1041,7 @@ get_fallback_no_reboot(void) return 0; } +#ifndef FALLBACK_NONINTERACTIVE static EFI_STATUS set_fallback_no_reboot(void) { @@ -1084,6 +1085,7 @@ get_user_choice(void) return choice; } +#endif extern EFI_STATUS efi_main(EFI_HANDLE image, EFI_SYSTEM_TABLE *systab); @@ -1156,6 +1158,7 @@ efi_main(EFI_HANDLE image, EFI_SYSTEM_TABLE *systab) try_start_first_option(image); } +#ifndef FALLBACK_NONINTERACTIVE int timeout = draw_countdown(); if (timeout == 0) goto reset; @@ -1171,6 +1174,7 @@ efi_main(EFI_HANDLE image, EFI_SYSTEM_TABLE *systab) VerbosePrint(L"tpm present, starting the first image\n"); try_start_first_option(image); reset: +#endif VerbosePrint(L"tpm present, resetting system\n"); } -- cgit v1.2.3