Bug 1808845
Summary: | RFE: write "Auto Boot Time-out" DEBUG messages for the GetFrontPageTimeoutFromQemu() function | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Red Hat Enterprise Linux 8 | Reporter: | Xueqiang Wei <xuwei> | ||||||||
Component: | edk2 | Assignee: | Laszlo Ersek <lersek> | ||||||||
Status: | CLOSED ERRATA | QA Contact: | leidwang <leidwang> | ||||||||
Severity: | medium | Docs Contact: | |||||||||
Priority: | medium | ||||||||||
Version: | 8.2 | CC: | berrange, chayang, coli, jinzhao, junzhang, kraxel, lersek, mrezanin, pbonzini, philmd, virt-maint | ||||||||
Target Milestone: | rc | Keywords: | FutureFeature, TestOnly, Triaged | ||||||||
Target Release: | 8.0 | ||||||||||
Hardware: | Unspecified | ||||||||||
OS: | Unspecified | ||||||||||
Whiteboard: | |||||||||||
Fixed In Version: | edk2-20200602gitca407c7246bf-1.el8 | Doc Type: | If docs needed, set a value | ||||||||
Doc Text: | Story Points: | --- | |||||||||
Clone Of: | Environment: | ||||||||||
Last Closed: | 2020-11-04 04:01:20 UTC | Type: | Feature Request | ||||||||
Regression: | --- | Mount Type: | --- | ||||||||
Documentation: | --- | CRM: | |||||||||
Verified Versions: | Category: | --- | |||||||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||||
Embargoed: | |||||||||||
Bug Depends On: | 1817035 | ||||||||||
Bug Blocks: | |||||||||||
Attachments: |
|
Description
Xueqiang Wei
2020-03-01 14:41:52 UTC
sent question: [edk2-devel] setting PcdPlatformBootTimeOut in PlatformBootManagerLib https://edk2.groups.io/g/devel/message/55128 http://mid.mail-archive.com/fef62d68-37c8-b2ea-5587-32532f1f2479@redhat.com Xueqiang Wei, I have some patches to post to the upstream list. Here's the behavior to expect from OVMF: (1) When "-boot menu=(on|off)" is not specified at all (equivalently, when the libvirt domain XML has no <bootmenu/> element), *or* when "-boot menu=off" is specified on the QEMU command line (equivalently, when the libvirt domain XML says <bootmenu enable='no'/>), then - there is no progress bar shown at the TianoCore splash screen: the boot is immediate, - the OVMF debug log will contain: > PlatformBootManagerBeforeConsole: SetVariable(Timeout, 0): Success - in the UEFI shell, the "setvar Timeout" command will output > 8BE4DF61-93CA-11D2-AA0D-00E098032B8C - Timeout - 0002 Bytes > 00 00 - in a Linux guest, the "efibootmgr" command will output > Timeout: 0 seconds (2) When "-boot menu=on" is specified on the QEMU command line, but "splash-time=N" is not (equivalently, when the domain XML says <bootmenu enable='yes'/> but there is no timeout='N' attribute), then: - the progress bar takes 3 seconds, - the OVMF debug log and the "efibootmgr" output will report 3 seconds, - the "setvar" UEFI shell command will report: > 8BE4DF61-93CA-11D2-AA0D-00E098032B8C - Timeout - 0002 Bytes > 03 00 (2-byte little endian representation printed in hex). (3) When "-boot menu=on,splash-time=NNNN" is specified on the QEMU command line (equivalently, when the domain XML says <bootmenu enable='yes' timeout='N'/>), and N is a positive number of milliseconds, then - the number of seconds taken by the progress bar, and - reported in the OVMF debug log, in the UEFI shell, and by efibootmgr, is calculated by rounding up N to whole seconds. Posted upstream series: * [edk2-devel] [PATCH 0/2] OvmfPkg, ArmVirtPkg: sync Timeout with PcdPlatformBootTimeOut http://mid.mail-archive.com/20200304094413.19462-1-lersek@redhat.com https://edk2.groups.io/g/devel/message/55379 (In reply to Laszlo Ersek from comment #4) > Posted upstream series: > > * [edk2-devel] [PATCH 0/2] > OvmfPkg, ArmVirtPkg: sync Timeout with PcdPlatformBootTimeOut > > http://mid.mail-archive.com/20200304094413.19462-1-lersek@redhat.com > https://edk2.groups.io/g/devel/message/55379 Merged as commit range 3b9cd714542a..7288ff4095cf, via <https://github.com/tianocore/edk2/pull/422>. (1) When "-boot menu=(on|off)" is not specified at all -there is no progress bar shown at the TianoCore splash screen: the boot is immediate, -ovmf log check result: [root@dell-per440-09 home]# cat win-OVMF.log | grep "PlatformBootManagerBeforeConsole: SetVariable" PlatformBootManagerBeforeConsole: SetVariable(Timeout, 0): Success -UEFI shell check result: added screenshot to attachment(comment9) -guest check result: [root@localhost ~]# efibootmgr BootCurrent: 0006 Timeout: 0 seconds BootOrder: 0006,0000,0001,0002,0003,0004,0005 Boot0000* UiApp Boot0001* UEFI QEMU QEMU HARDDISK Boot0002* UEFI PXEv4 (MAC:6C0B34A3513C) Boot0003* UEFI PXEv6 (MAC:6C0B34A3513C) Boot0004* UEFI HTTPv4 (MAC:6C0B34A3513C) Boot0005* UEFI HTTPv6 (MAC:6C0B34A3513C) Boot0006* Red Hat Enterprise Linux (2) When "-boot menu=on" is specified on the QEMU command line, but "splash-time=N" is not (equivalently, when the domain XML says <bootmenu enable='yes'/> but there is no timeout='N' attribute), then: -process bar is split 10 seconds -ovmf log check result [root@dell-per440-09 home]# cat win-OVMF.log | grep "PlatformBootManagerBeforeConsole: SetVariable" PlatformBootManagerBeforeConsole: SetVariable(Timeout, 3): Success -UEFI shell check result added screenshot to attachment(comment10) -guest check result: [root@localhost ~]# efibootmgr BootCurrent: 0006 Timeout: 3 seconds BootOrder: 0006,0000,0001,0002,0003,0004,0005 Boot0000* UiApp Boot0001* UEFI QEMU QEMU HARDDISK Boot0002* UEFI PXEv4 (MAC:6C0B34A3513C) Boot0003* UEFI PXEv6 (MAC:6C0B34A3513C) Boot0004* UEFI HTTPv4 (MAC:6C0B34A3513C) Boot0005* UEFI HTTPv6 (MAC:6C0B34A3513C) Boot0006* Red Hat Enterprise Linux (3) When "-boot menu=on,splash-time=NNNN" is specified on the QEMU command line (equivalently, when the domain XML says <bootmenu enable='yes' timeout='N'/>), and N is a positive number of milliseconds, then -process bar is split 10 seconds -ovmf log check result: [root@dell-per440-09 home]# cat win-OVMF.log | grep "PlatformBootManagerBeforeConsole: SetVariable" PlatformBootManagerBeforeConsole: SetVariable(Timeout, 10): Success -guest check result: [root@vm-115-149 ~]# efibootmgr BootCurrent: 0006 Timeout: 10 seconds BootOrder: 0006,0000,0002,0001,0003,0004,0005,0007 Boot0000* UiApp Boot0001* UEFI QEMU DVD-ROM QM00023 Boot0002* UEFI QEMU QEMU HARDDISK Boot0003* UEFI PXEv4 (MAC:24BE1515D191) Boot0004* UEFI PXEv6 (MAC:24BE1515D191) Boot0005* UEFI HTTPv4 (MAC:24BE1515D191) Boot0006* Red Hat Enterprise Linux Boot0007* UEFI HTTPv6 (MAC:24BE1515D191) Created attachment 1697930 [details]
screenshot1
Created attachment 1697931 [details]
screenshot2
Host info: kernel-4.18.0-213.el8.x86_64 qemu-img-4.2.0-25.module+el8.3.0+6986+29a4dcd7.x86_64 edk2-ovmf-20200602gitca407c7246bf-1.el8.noarch host info: kernel-4.18.0-213.el8.x86_64 qemu-kvm-4.2.0-25.module+el8.2.1+6985+9fd9d514.x86_64 edk2-ovmf-20200602gitca407c7246bf-1.el8.noarch 1 When "-boot menu=(on|off)" is not specified at all -there is no progress bar shown at the TianoCore splash screen: the boot is immediate, -ovmf log check result: [root@dell-per440-09 home]# cat win-OVMF.log | grep "PlatformBootManagerBeforeConsole: SetVariable" PlatformBootManagerBeforeConsole: SetVariable(Timeout, 0): Success -UEFI shell check result: added screenshot to attachment(screenshot.tar) -guest check result: [root@vm-115-149 ~]# efibootmgr BootCurrent: 0006 Timeout: 0 seconds BootOrder: 0006,0000,0002,0001,0003,0004,0005,0007 Boot0000* UiApp Boot0001* UEFI QEMU DVD-ROM QM00023 Boot0002* UEFI QEMU QEMU HARDDISK Boot0003* UEFI PXEv4 (MAC:6C0B34A3513C) Boot0004* UEFI PXEv6 (MAC:6C0B34A3513C) Boot0005* UEFI HTTPv4 (MAC:6C0B34A3513C) Boot0006* Red Hat Enterprise Linux Boot0007* UEFI HTTPv6 (MAC:6C0B34A3513C) 2 When "-boot menu=on" is specified on the QEMU command line, but"splash-time=N" is not specified. -process bar is split 3 seconds -ovmf log check result [root@dell-per440-09 home]# cat win-OVMF.log | grep "PlatformBootManagerBeforeConsole: SetVariable" PlatformBootManagerBeforeConsole: SetVariable(Timeout, 3): Success -UEFI shell check result added screenshot to attachment(screenshot.tar) -guest check result: [root@vm-115-149 ~]# efibootmgr BootCurrent: 0006 Timeout: 3 seconds BootOrder: 0006,0000,0002,0001,0003,0004,0005,0007 Boot0000* UiApp Boot0001* UEFI QEMU DVD-ROM QM00023 Boot0002* UEFI QEMU QEMU HARDDISK Boot0003* UEFI PXEv4 (MAC:6C0B34A3513C) Boot0004* UEFI PXEv6 (MAC:6C0B34A3513C) Boot0005* UEFI HTTPv4 (MAC:6C0B34A3513C) Boot0006* Red Hat Enterprise Linux Boot0007* UEFI HTTPv6 (MAC:6C0B34A3513C) 3 When "-boot menu=on,splash-time=10000" -process bar is split 10 seconds -ovmf log check result: [root@dell-per440-09 home]# cat win-OVMF.log | grep "PlatformBootManagerBeforeConsole: SetVariable" PlatformBootManagerBeforeConsole: SetVariable(Timeout, 10): Success -UEFI shell check result added screenshot to attachment(screenshot.tar) -guest check result: [root@vm-115-149 ~]# efibootmgr BootCurrent: 0006 Timeout: 10 seconds BootOrder: 0006,0000,0002,0001,0003,0004,0005,0007 Boot0000* UiApp Boot0001* UEFI QEMU DVD-ROM QM00023 Boot0002* UEFI QEMU QEMU HARDDISK Boot0003* UEFI PXEv4 (MAC:6C0B34A3513C) Boot0004* UEFI PXEv6 (MAC:6C0B34A3513C) Boot0005* UEFI HTTPv4 (MAC:6C0B34A3513C) Boot0006* Red Hat Enterprise Linux Boot0007* UEFI HTTPv6 (MAC:6C0B34A3513C) Created attachment 1698048 [details]
fast_tarin_test_result
Sorry for my mistake,the host info I provided in comment 12 is wrong,the correct host info is as follows: host info: kernel-4.18.0-213.el8.x86_64 qemu-kvm-5.0.0-0.module+el8.3.0+6620+5d5e1420 edk2-ovmf-20200602gitca407c7246bf-1.el8.noarch Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (Moderate: edk2 security, bug fix, and enhancement update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2020:4805 |