EFI Errors after update/repair
0xA1B2 opened this issue · 15 comments
Calling post-update helper scripts
External command: none
External command: [ERROR] cbm (../src/lib/bootvar.c:L412): efi_generate_file_device_path_from_esp() failed: No such file or directory
External command: [ERROR] cbm (../src/lib/bootvar.c:L412): efi_generate_file_device_path_from_esp() failed: No such file or directory
External command: [ERROR] cbm (../src/bootloaders/shim-systemd.c:L284): Cannot create EFI variable (boot entry)
External command: [ERROR] cbm (../src/bootloaders/shim-systemd.c:L285): Please manually update your bios to add a boot entry for Clear Linux
This happens after swupd update or repair
Same on Lenovo T520 and Intel Compute Stick STK1AW32SC, both with latest BIOS.
Seems to be related to older hardware ? Maybe the errors could be suppressed if the hardware is too old.
I'm also seeing this on a Hyper-V VM that didn't previously have this error.
Here's some debug output:
# CBM_DEBUG=1 clr-boot-manager update
[INFO] cbm (../src/bootman/bootman.c:L706): Current running kernel: 5.3.9-236.hyperv
[INFO] cbm (../src/bootman/sysconfig.c:L179): Discovered UEFI ESP: /dev/disk/by-partuuid/e023461b-716d-4e9b-ab51-01c516860169
[INFO] cbm (../src/bootman/sysconfig.c:L254): Fully resolved boot device: /dev/sda1
[DEBUG] cbm (../src/bootman/bootman.c:L120): shim-systemd caps: 0x26, wanted: 0x26
[DEBUG] cbm (../src/bootman/bootman.c:L135): UEFI boot now selected (shim-systemd)
[INFO] cbm (../src/bootman/bootman.c:L726): path ///usr/lib/initrd.d does not exist
[INFO] cbm (../src/bootman/bootman.c:L431): Checking for mounted boot dir
[INFO] cbm (../src/bootman/bootman.c:L484): Mounting boot device /dev/sda1 at /boot
[SUCCESS] cbm (../src/bootman/bootman.c:L497): /dev/sda1 successfully mounted at /boot
[DEBUG] cbm (../src/bootman/update.c:L164): Now beginning update_native
[DEBUG] cbm (../src/bootman/update.c:L173): update_native: 1 available kernels
[DEBUG] cbm (../src/bootman/update.c:L191): update_native: Running kernel is (hyperv) ///usr/lib/kernel/org.clearlinux.hyperv.5.3.9-236
[ERROR] cbm (../src/lib/bootvar.c:L412): efi_generate_file_device_path_from_esp() failed: Function not implemented
[ERROR] cbm (../src/lib/bootvar.c:L412): efi_generate_file_device_path_from_esp() failed: Function not implemented
[ERROR] cbm (../src/bootloaders/shim-systemd.c:L284): Cannot create EFI variable (boot entry)
[ERROR] cbm (../src/bootloaders/shim-systemd.c:L285): Please manually update your bios to add a boot entry for Clear Linux
[SUCCESS] cbm (../src/bootman/update.c:L205): update_native: Bootloader updated
[SUCCESS] cbm (../src/bootman/update.c:L220): update_native: Repaired running kernel ///usr/lib/kernel/org.clearlinux.hyperv.5.3.9-236
[DEBUG] cbm (../src/bootman/update.c:L230): update_native: Checking kernels for type hyperv
[INFO] cbm (../src/bootman/update.c:L243): update_native: Default kernel for type hyperv is ///usr/lib/kernel/org.clearlinux.hyperv.5.3.9-236
[SUCCESS] cbm (../src/bootman/update.c:L255): update_native: Installed tip for hyperv: ///usr/lib/kernel/org.clearlinux.hyperv.5.3.9-236
[SUCCESS] cbm (../src/bootman/update.c:L269): update_native: Installed last_good kernel (hyperv) (///usr/lib/kernel/org.clearlinux.hyperv.5.3.9-236)
[DEBUG] cbm (../src/bootman/update.c:L280): update_native: Analyzing for type hyperv: ///usr/lib/kernel/org.clearlinux.hyperv.5.3.9-236
[DEBUG] cbm (../src/bootman/update.c:L285): update_native: Skipping running kernel
[INFO] cbm (../src/bootman/bootman.c:L431): Checking for mounted boot dir
[INFO] cbm (../src/bootman/bootman.c:L439): boot_dir is already mounted: /boot
[SUCCESS] cbm (../src/bootman/update.c:L338): update_native: Default kernel for hyperv is ///usr/lib/kernel/org.clearlinux.hyperv.5.3.9-236
[DEBUG] cbm (../src/bootman/update.c:L353): No kernel removals found
[INFO] cbm (../src/bootman/bootman.c:L397): Attempting umount of /boot
[SUCCESS] cbm (../src/bootman/bootman.c:L401): Unmounted boot directory
I don't see any recent changes to CBM with this logic but noticed the efivar package where this comes from was updated recently. @anselmolsm @dorileo any ideas on this?
@dorileo - this CBM error is also occurring on Proxmox hypervisor. Thoughts on resolution?
same here : stuck with 5.4.2-875 eversince installation.
(../src/lib/bootvar.c:L413): efi_generate_file_device_path_from_esp() failed: Function not implemented
External command: [ERROR] cbm (../src/lib/bootvar.c:L413): efi_generate_file_device_path_from_esp() failed: Function not implemented
External command: [ERROR] cbm (../src/bootloaders/shim-systemd.c:L284): Cannot create EFI variable (boot entry)
Updated to 32160. Getting same errors during update or clr-boot-mgr update.
I'm using an intel NUC 5i5RYH (broadwell) with latest bios.
The root cause of this error lies with efivar, the newest efivar release (37) fixes the issue. I'm working to update it.
Just pushed a new version of efivar, might land on Clear Linux any time soon.
The error msgs related to efivar are gone, but no update occurs :
DEBUG] cbm (../src/cli/cli.c:L142): No such file: //etc/kernel/update_efi_vars
[INFO] cbm (../src/bootman/bootman.c:L734): Current running kernel: 5.4.2-875.native
[INFO] cbm (../src/bootman/sysconfig.c:L179): Discovered UEFI ESP: /dev/disk/by-partuuid/6f22908a-e7af-2f0a-43e9-07730c15275c
[INFO] cbm (../src/bootman/sysconfig.c:L256): Fully resolved boot device: /dev/sdc2
[DEBUG] cbm (../src/bootman/bootman.c:L140): shim-systemd caps: 0x26, wanted: 0x26
[DEBUG] cbm (../src/bootman/bootman.c:L155): UEFI boot now selected (shim-systemd)
[INFO] cbm (../src/bootman/bootman.c:L754): path ///etc/kernel/initrd.d does not exist
[DEBUG] cbm (../src/bootman/bootman.c:L774): Non regular file: ///usr/lib/initrd.d/.., skipping.
[DEBUG] cbm (../src/bootman/bootman.c:L774): Non regular file: ///usr/lib/initrd.d/., skipping.
[INFO] cbm (../src/bootman/bootman.c:L459): Checking for mounted boot dir
[DEBUG] cbm (../src/lib/files.c:L577): Directory /boot is not empty, found: loader
[INFO] cbm (../src/bootman/bootman.c:L467): boot_dir is already mounted: /boot
[DEBUG] cbm (../src/bootman/update.c:L164): Now beginning update_native
[DEBUG] cbm (../src/bootman/update.c:L173): update_native: 2 available kernels
[DEBUG] cbm (../src/bootman/update.c:L191): update_native: Running kernel is (native) ///usr/lib/kernel/org.clearlinux.native.5.4.2-875
[SUCCESS] cbm (../src/bootman/update.c:L205): update_native: Bootloader updated
[SUCCESS] cbm (../src/bootman/update.c:L220): update_native: Repaired running kernel ///usr/lib/kernel/org.clearlinux.native.5.4.2-875
[DEBUG] cbm (../src/bootman/update.c:L230): update_native: Checking kernels for type native
[INFO] cbm (../src/bootman/update.c:L243): update_native: Default kernel for type native is ///usr/lib/kernel/org.clearlinux.native.5.4.16-900
[SUCCESS] cbm (../src/bootman/update.c:L255): update_native: Installed tip for native: ///usr/lib/kernel/org.clearlinux.native.5.4.16-900
[SUCCESS] cbm (../src/bootman/update.c:L269): update_native: Installed last_good kernel (native) (///usr/lib/kernel/org.clearlinux.native.5.4.2-875)
[DEBUG] cbm (../src/bootman/update.c:L280): update_native: Analyzing for type native: ///usr/lib/kernel/org.clearlinux.native.5.4.16-900
[INFO] cbm (../src/bootman/update.c:L288): update_native: not-running: ///usr/lib/kernel/org.clearlinux.native.5.4.16-900
[DEBUG] cbm (../src/bootman/update.c:L291): update_native: Skipping default-native: ///usr/lib/kernel/org.clearlinux.native.5.4.16-900
[DEBUG] cbm (../src/bootman/update.c:L280): update_native: Analyzing for type native: ///usr/lib/kernel/org.clearlinux.native.5.4.2-875
[DEBUG] cbm (../src/bootman/update.c:L285): update_native: Skipping running kernel
[INFO] cbm (../src/bootman/bootman.c:L459): Checking for mounted boot dir
[DEBUG] cbm (../src/lib/files.c:L577): Directory /boot is not empty, found: loader
[INFO] cbm (../src/bootman/bootman.c:L467): boot_dir is already mounted: /boot
[SUCCESS] cbm (../src/bootman/update.c:L338): update_native: Default kernel for native is ///usr/lib/kernel/org.clearlinux.native.5.4.16-900
[DEBUG] cbm (../src/bootman/update.c:L353): No kernel removals found
@generator75 what do you expect? I mean, how did you check if your boot entries were updated or not? what's the currently running kernel? what is the default set after the update? can you try umounting /boot
and the running clr-boot-manager update
again?
@puneetse can you check you hyper-v setup? my setup (after the updates with 32230) is working fine.
It is working without the EFI errors. Thanks.
@generator75 what do you expect? I mean, how did you check if your boot entries were updated or not? what's the currently running kernel? what is the default set after the update? can you try umounting
/boot
and the runningclr-boot-manager update
again?
Hello! Did it the other way around : /boot was not mounted. However, the folder exists and was poupulated with former entries.
My previous msg :
Discovered UEFI ESP: /dev/disk/by-partuuid/6f22908a-e7af-2f0a-43e9-07730c15275c
[INFO] cbm (../src/bootman/sysconfig.c:L256): Fully resolved boot device: /dev/sdc2
Actually, /sdc2 was not mounted : clr-boot-manager thought it was because /boot existed and was populated.
Did mount /dev/sdc2 to /boot and clr-boot-manager did its updating work.
I was stuck with org.clearlinux.native.5.4.2-875 and now am with org.clearlinux.native.5.4.16-900.
Sorry for the delay : I'm at work and Clear is not my main OS.. yet!
@generator75 good to hear, thank you.
@dorileo - I can also confirm I'm no longer see these CBM issues on Proxmox and Parallels VMs.
since we're all happy with it now I'm closing this issue. Please feel free to reopen it if necessary. Thank you.
Last update was a sweet breeze. Issue obviously closed.
Thks Dorileo!