EFI boot stops at kernel selection with no timeout after upgrade to PVE 8.3

Nov 24, 2024
2
2
3
I installed Proxmox 8 on a modern Dell T110 a couple of months ago. It has been running well including normal reboots.

Yesterday I added my subscription key and updated to the newly released 8.3 with a kernel update to 6.8.12-4. The upgrade was uneventful until I rebooted to bring up the new kernel. The machine comes up to the EFI boot kernel selection screen and sits there waiting for a selection with no timeout. (As you can imagine this is bad when working remote from the server.) My two selections are 6.8.12-4-pve and 6.8.4-2-pve. After I make a selection for the new kernel with the keyboard everything proceeds normally.

Is this normal behavior? Should I have to pin the new kernel or remove the old to avoid this? I saw a thread from another user using GRUB where the physical keyboard was causing a timeout problem. This machine is using a KVM switch if that matters.

Here is some relevant info:

Code:
root@pve2:/usr/share/systemd# efibootmgr -v
BootCurrent: 0005
BootOrder: 0005,0004,0000,0002
Boot0000* Embedded NIC 1 Port 1 Partition 1     VenHw(3a191845-5f86-4e78-8fce-c4cff59f9daa)
Boot0002* USB Placeholder       VenHw(0c8cb6cc-13ae-45f4-bbcd-6a25e98ac250)
Boot0004* Linux Boot Manager    HD(2,GPT,8676a72c-0526-42f8-a1bd-6bcf1be944f1,0x800,0x200000)/File(\EFI\systemd\systemd-bootx64.efi)
Boot0005* Linux Boot Manager    HD(2,GPT,0d6da5d0-51a3-4491-ba0a-d4c39e1a3efe,0x800,0x200000)/File(\EFI\systemd\systemd-bootx64.efi)
root@pve2:/usr/share/systemd# proxmox-boot-tool status
Re-executing '/usr/sbin/proxmox-boot-tool' in new private mount namespace..
System currently booted with uefi
C9AF-32BA is configured with: uefi (versions: 6.8.12-4-pve, 6.8.4-2-pve)
C9B0-6F2B is configured with: uefi (versions: 6.8.12-4-pve, 6.8.4-2-pve)
root@pve2:/usr/share/systemd# bootctl
Couldn't find EFI system partition. It is recommended to mount it to /boot or /efi.
Alternatively, use --esp-path= to specify path to mount point.
System:
      Firmware: UEFI 2.70 (Dell Inc. 769.257)
 Firmware Arch: x64
   Secure Boot: disabled (unknown)
  TPM2 Support: no
  Boot into FW: not supported

Current Boot Loader:
      Product: systemd-boot 252.22-1~deb12u1
     Features: ✓ Boot counting
               ✓ Menu timeout control
               ✓ One-shot menu timeout control
               ✓ Default entry control
               ✓ One-shot entry control
               ✓ Support for XBOOTLDR partition
               ✓ Support for passing random seed to OS
               ✓ Load drop-in drivers
               ✓ Support Type #1 sort-key field
               ✓ Support @saved pseudo-entry
               ✓ Support Type #1 devicetree field
               ✓ Boot loader sets ESP information
          ESP: /dev/disk/by-partuuid/0d6da5d0-51a3-4491-ba0a-d4c39e1a3efe
         File: └─/EFI/systemd/systemd-bootx64.efi

Random Seed:
 Passed to OS: yes
 System Token: set

Boot Loaders Listed in EFI Variables:
        Title: Linux Boot Manager
           ID: 0x0005
       Status: active, boot-order
    Partition: /dev/disk/by-partuuid/0d6da5d0-51a3-4491-ba0a-d4c39e1a3efe
         File: └─/EFI/systemd/systemd-bootx64.efi

        Title: Linux Boot Manager
           ID: 0x0004
       Status: active, boot-order
    Partition: /dev/disk/by-partuuid/8676a72c-0526-42f8-a1bd-6bcf1be944f1
         File: └─/EFI/systemd/systemd-bootx64.efi

root@pve2:/usr/share/systemd# mount /dev/disk/by-uuid/C9AF-32BA /boot/efi/
root@pve2:/usr/share/systemd# bootctl
System:
      Firmware: UEFI 2.70 (Dell Inc. 769.257)
 Firmware Arch: x64
   Secure Boot: disabled (unknown)
  TPM2 Support: no
  Boot into FW: not supported

Current Boot Loader:
      Product: systemd-boot 252.22-1~deb12u1
     Features: ✓ Boot counting
               ✓ Menu timeout control
               ✓ One-shot menu timeout control
               ✓ Default entry control
               ✓ One-shot entry control
               ✓ Support for XBOOTLDR partition
               ✓ Support for passing random seed to OS
               ✓ Load drop-in drivers
               ✓ Support Type #1 sort-key field
               ✓ Support @saved pseudo-entry
               ✓ Support Type #1 devicetree field
               ✓ Boot loader sets ESP information
WARNING: The boot loader reports a different ESP UUID than detected (0d6da5d0->
          ESP: /dev/disk/by-partuuid/0d6da5d0-51a3-4491-ba0a-d4c39e1a3efe
         File: └─/EFI/systemd/systemd-bootx64.efi

Random Seed:
 Passed to OS: yes
 System Token: set
       Exists: yes

Available Boot Loaders on ESP:
          ESP: /boot/efi (/dev/disk/by-partuuid/8676a72c-0526-42f8-a1bd-6bcf1b>
         File: ├─/EFI/systemd/systemd-bootx64.efi (systemd-boot 252.22-1~deb12>
               └─/EFI/BOOT/BOOTX64.EFI (systemd-boot 252.22-1~deb12u1)

Boot Loaders Listed in EFI Variables:
        Title: Linux Boot Manager
           ID: 0x0005
       Status: active, boot-order
    Partition: /dev/disk/by-partuuid/0d6da5d0-51a3-4491-ba0a-d4c39e1a3efe
         File: └─/EFI/systemd/systemd-bootx64.efi

        Title: Linux Boot Manager
           ID: 0x0004
       Status: active, boot-order
    Partition: /dev/disk/by-partuuid/8676a72c-0526-42f8-a1bd-6bcf1be944f1
         File: └─/EFI/systemd/systemd-bootx64.efi

Boot Loader Entries:
        $BOOT: /boot/efi (/dev/disk/by-partuuid/8676a72c-0526-42f8-a1bd-6bcf1b>

Default Boot Loader Entry:
         type: Boot Loader Specification Type #1 (.conf)
        title: Proxmox Virtual Environment (6.8.12-4-pve)
           id: proxmox-6.8.12-4-pve.conf
       source: /boot/efi/loader/entries/proxmox-6.8.12-4-pve.conf
      version: 6.8.12-4-pve
        linux: /EFI/proxmox/6.8.12-4-pve/vmlinuz-6.8.12-4-pve
       initrd: /EFI/proxmox/6.8.12-4-pve/initrd.img-6.8.12-4-pve
      options: root=ZFS=rpool/ROOT/pve-1 boot=zfs
root@pve2:/usr/share/systemd# cd /boot/efi
root@pve2:/boot/efi# ls
EFI  loader
root@pve2:/boot/efi# cd loader
root@pve2:/boot/efi/loader# ls
entries  entries.srel  loader.conf  random-seed
root@pve2:/boot/efi/loader# cat loader.conf
timeout 3
default proxmox-*

root@pve2:/# proxmox-boot-tool kernel list
Manually selected kernels:
None.

Automatically selected kernels:
6.8.12-4-pve
6.8.4-2-pve

root@pve2:/# apt info proxmox-default-kernel -a
Package: proxmox-default-kernel
Version: 1.1.0
Priority: optional
Section: admin
Source: proxmox-kernel-meta
Maintainer: Proxmox Support Team <support@proxmox.com>
Installed-Size: 10.2 kB
Depends: proxmox-kernel-6.8
Download-Size: 2,196 B
APT-Manual-Installed: yes
APT-Sources: https://enterprise.proxmox.com/debian/pve bookworm/pve-enterprise amd64 Packages
Description: Default Proxmox Kernel Image
 This is a metapackage which will install the kernel image for the default
 Proxmox kernel series.

Package: proxmox-default-kernel
Version: 1.0.1
Priority: optional
Section: admin
Source: proxmox-kernel-meta
Maintainer: Proxmox Support Team <support@proxmox.com>
Installed-Size: 8,192 B
Depends: proxmox-kernel-6.5
Download-Size: 1,796 B
APT-Sources: https://enterprise.proxmox.com/debian/pve bookworm/pve-enterprise amd64 Packages
Description: Default Proxmox Kernel Image
 This is a metapackage which will install the kernel image for the default
 Proxmox kernel series.

Package: proxmox-default-kernel
Version: 1.0.0
Priority: optional
Section: admin
Source: proxmox-kernel-meta
Maintainer: Proxmox Support Team <support@proxmox.com>
Installed-Size: 8,192 B
Depends: proxmox-kernel-6.2
Download-Size: 1,740 B
APT-Sources: https://enterprise.proxmox.com/debian/pve bookworm/pve-enterprise amd64 Packages
Description: Default Proxmox Kernel Image
 This is a metapackage which will install the kernel image for the default
 Proxmox kernel series.

root@pve2:/# uname -r
6.8.12-4-pve

 
root@pve2:/# proxmox-boot-tool kernel list
Manually selected kernels:
None.

Automatically selected kernels:
6.8.12-4-pve
6.8.4-2-pve
root@pve2:/#
 
Answering my own question about the keyboard. When I got to the office this morning I unplugged the USB connector for the KVM switch from the server and rebooted. It started up normally with the 3 second delay at the kernel selection screen.

Here is the post that made me think the keyboard connection might be the problem.

Is there a boot parameter that could solve this? Should I file a bug report?