I am trying to install Linux (Fedora KDE spin specifically, but this problem is probably not distribution related) on an older Acer Switch 3 (SW312-31P) tablet. The installation always fails when trying to setup grub with “failed to set new efi boot target”. Grub shows up when I boot the device, however only UEFI fimware setting is present in the GRUB menu. I repartitioned the whole internal drive as GPT added ext4 partition to be mounted at /, swap partition and FAT32 EFI partition to be mounted at /boot/efi and even told the Fedora installer to reformat it as EFI, however the result is still the same. I think the problem lies somewhere within the EFI firmware of the device itself, because when I run

sudo efibootmgr -v

I get this result:

Skipping unreadable variable "Boot0000": Input/output error
error trace:
 efivarfs.c:271 efivarfs_get_variable(): read failed: Input/output error
 lib.c:140 efi_get_variable(): ops->get_variable failed: Input/output error
Skipping unreadable variable "Boot0001": Input/output error
error trace:
 efivarfs.c:271 efivarfs_get_variable(): read failed: Input/output error
 lib.c:140 efi_get_variable(): ops->get_variable failed: Input/output error
Skipping unreadable variable "Boot0002": Input/output error
error trace:
 efivarfs.c:271 efivarfs_get_variable(): read failed: Input/output error
 lib.c:140 efi_get_variable(): ops->get_variable failed: Input/output error
Skipping unreadable variable "Boot0003": Input/output error
error trace:
 efivarfs.c:271 efivarfs_get_variable(): read failed: Input/output error
 lib.c:140 efi_get_variable(): ops->get_variable failed: Input/output error
Skipping unreadable variable "Boot0005": Input/output error
error trace:
 efivarfs.c:271 efivarfs_get_variable(): read failed: Input/output error
 lib.c:140 efi_get_variable(): ops->get_variable failed: Input/output error
Skipping unreadable variable "Boot2001": Input/output error
error trace:
 efivarfs.c:271 efivarfs_get_variable(): read failed: Input/output error
 lib.c:140 efi_get_variable(): ops->get_variable failed: Input/output error
Skipping unreadable variable "Boot2002": Input/output error
error trace:
 efivarfs.c:271 efivarfs_get_variable(): read failed: Input/output error
 lib.c:140 efi_get_variable(): ops->get_variable failed: Input/output error
Skipping unreadable variable "Boot2003": Input/output error
error trace:
 efivarfs.c:271 efivarfs_get_variable(): read failed: Input/output error
 lib.c:140 efi_get_variable(): ops->get_variable failed: Input/output error
show_order(): Input/output error

Does anyone know what does this mean? I tryed asking Generative AIs, however they would usually advice me to remove faulty entries with some command that wouldn’t work (usually using the efivar utility which would at least list all the variables without throwing an error).

I tryed using the “load optimized defaults” option in UEFI settings. That didn’t help. I have secure boot disabled.

On start grub prints out “checking media [fail]” before showing boot options.

    • Jiří KrálOP
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      1 month ago

      sda is the USB stick with currently live booted Fedora KDE. mmcblk1 is the internal disk I want to install on.

      Disk /dev/sda: 7.45 GiB, 8002732032 bytes, 15630336 sectors
      Disk model: Cruzer Blade    
      Units: sectors of 1 * 512 = 512 bytes
      Sector size (logical/physical): 512 bytes / 512 bytes
      I/O size (minimum/optimal): 512 bytes / 512 bytes
      Disklabel type: gpt
      Disk identifier: EB4BE656-6730-46CE-819A-784A2C115F93
      
      Device       Start     End Sectors  Size Type
      /dev/sda1       64 5454691 5454628  2.6G Microsoft basic data
      /dev/sda2  5454692 5480551   25860 12.6M EFI System
      /dev/sda3  5480552 5481151     600  300K Microsoft basic data
      
      
      Disk /dev/mmcblk1: 116.48 GiB, 125069950976 bytes, 244277248 sectors
      Units: sectors of 1 * 512 = 512 bytes
      Sector size (logical/physical): 512 bytes / 512 bytes
      I/O size (minimum/optimal): 512 bytes / 512 bytes
      Disklabel type: gpt
      Disk identifier: C75BAF61-B578-41D5-8C6C-8505ABF109A8
      
      Device           Start       End   Sectors  Size Type
      /dev/mmcblk1p1    2048   1050623   1048576  512M EFI System
      /dev/mmcblk1p2 1050624   9439231   8388608    4G Linux swap
      /dev/mmcblk1p3 9439232 244275199 234835968  112G Linux filesystem
      
      
      Disk /dev/mmcblk1boot0: 4 MiB, 4194304 bytes, 8192 sectors
      Units: sectors of 1 * 512 = 512 bytes
      Sector size (logical/physical): 512 bytes / 512 bytes
      I/O size (minimum/optimal): 512 bytes / 512 bytes
      
      
      Disk /dev/mmcblk1boot1: 4 MiB, 4194304 bytes, 8192 sectors
      Units: sectors of 1 * 512 = 512 bytes
      Sector size (logical/physical): 512 bytes / 512 bytes
      I/O size (minimum/optimal): 512 bytes / 512 bytes
      
      
      Disk /dev/loop0: 2.43 GiB, 2607599616 bytes, 5092968 sectors
      Units: sectors of 1 * 512 = 512 bytes
      Sector size (logical/physical): 512 bytes / 512 bytes
      I/O size (minimum/optimal): 512 bytes / 512 bytes
      
      
      Disk /dev/zram0: 3.66 GiB, 3930062848 bytes, 959488 sectors
      Units: sectors of 1 * 4096 = 4096 bytes
      Sector size (logical/physical): 4096 bytes / 4096 bytes
      I/O size (minimum/optimal): 4096 bytes / 4096 bytes
      

      Here’s blkid output:

      /dev/sda1: BLOCK_SIZE="2048" UUID="2024-10-24-15-05-12-00" LABEL="Fedora-KDE-Live-41-1-4" TYPE="iso9660" PARTLABEL="ISO9660" PARTUUID="eb4be656-6730-46ce-819b-784a2c115f93"
      
        • Jiří KrálOP
          link
          fedilink
          arrow-up
          1
          ·
          edit-2
          1 month ago

          I added EFI label to the EFI partition. At least it shows that tag in gparted.

          • tychosmoose@lemm.ee
            link
            fedilink
            arrow-up
            1
            ·
            edit-2
            1 month ago

            Huh. I wonder why blkid isn’t showing the SSD.

            So, if you did label it EFI, there’s a chance the firmware doesn’t like that. A bug in their firmware makes them unable to find the EFI partition when it is labeled EFI. You might try clearing the label and then reboot and try efibootmgr -v again.

            Edit: Maybe related to this? https://askubuntu.com/a/676384

            If you’re not sure whether it does have a label, maybe try: lsblk -o name,label,size,uuid

            • Jiří KrálOP
              link
              fedilink
              arrow-up
              1
              ·
              1 month ago

              I removed the label using gparted and then confirmed the changes and rebooted, however the results are still the same. I am now testing the solution in the askubuntu thread you shared.