On 3/2/23 09:32, Christian Ehrhardt wrote: > good ~instant > [08:14:37.267336194] Select Item: 0xE > [08:14:37.268346995] [Bds]RegisterKeyNotify: 000C/0000 80000000/00 Success > > bad ~8s > [08:15:43.561054490] Select Item: 0xE > [08:15:51.291039364] [Bds]RegisterKeyNotify: 000C/0000 80000000/00 Success
Yes, this is consistent with my hypothesis. PlatformBootManagerBeforeConsole() GetFrontPageTimeoutFromQemu() QemuFwCfgSelectItem (QemuFwCfgItemBootMenu) // "Select Item: 0xE" gRT->SetVariable() PlatformRegisterOptionsAndKeys() EfiBootManagerAddKeyOptionVariable() gRT->SetVariable() BmProcessKeyOption() BmRegisterHotkeyNotify() // "[Bds]RegisterKeyNotify: 000C/0000 80000000/00 Success" IOW, there are at least two gRT->SetVariable() calls in OVMF (with EFI_VARIABLE_NON_VOLATILE attribute) between the two adjacent log lines you quoted. The other functions listed in the call tree may contain further gRT->SetVariable() calls. Laszlo