Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[SOLVED] EFI stub wouldn't boot: kernel "Not Found"
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Installing Gentoo
View previous topic :: View next topic  
Author Message
NP_complete
Tux's lil' helper
Tux's lil' helper


Joined: 21 Mar 2009
Posts: 136

PostPosted: Sun Jul 28, 2024 1:26 am    Post subject: EFI stub wouldn't boot: kernel "Not Found" Reply with quote

Is there any way to troubleshoot this? I checked the kernel config, whether the binary is in the right place and the boot entry is valid, via efibootmgr. Nothing stands out as being obviously wrong. I can even see the kernel from the EFI prompt, but when I try to run it from there, everything freezes.

Many thanks.


Last edited by NP_complete on Wed Jul 31, 2024 9:12 am; edited 2 times in total
Back to top
View user's profile Send private message
kimchi_sg
Advocate
Advocate


Joined: 26 Nov 2004
Posts: 3038

PostPosted: Sun Jul 28, 2024 2:27 am    Post subject: Re: EFI stub wouldn't boot: kernel "Not Found" Reply with quote

NP_complete wrote:
I can even see the kernel from the EFI prompt, but when I try to run it from there, everything freezes.

Post the basic info please:

  • kernel config - use wgetpaste
  • efibootmgr command output


Usually if loading kernel freezes immediately, it is a sign framebuffer or proper video driver was not compiled into kernel.
Back to top
View user's profile Send private message
NP_complete
Tux's lil' helper
Tux's lil' helper


Joined: 21 Mar 2009
Posts: 136

PostPosted: Sun Jul 28, 2024 4:20 am    Post subject: Reply with quote

Thanks for your reply, @kimchi_sg. I am using a minimal USB stick for the installation. Please see here, here, and below:
Quote:
BootCurrent: 0003
Timeout: 2 seconds
BootOrder: 0004,0000,0001,0002,0003
Boot0000* Setup MemoryMapped(11,0x860000,0x15fffff)/FvFile(462caa21-7614-4503-836e-8ab6f4662331)
Boot0001 UEFI BootManagerMenuApp MemoryMapped(11,0x860000,0x15fffff)/FvFile(eec25bdc-67f2-4d95-b1d5-f81b2039d11d)
Boot0002* UEFI Shell MemoryMapped(11,0x860000,0x15fffff)/FvFile(7c04a583-9e3e-4f1c-ad65-e05268d0b4d1)
Boot0003* MyFlashDrive PciRoot(0x0)/Pci(0x14,0x0)/USB(0,0){auto_created_boot_option}
Boot0004* gentoo-6.9.11 HD(1,MBR,0x5eca5c4a,0x800,0x1ce7800)/File(\EFI\Gentoo\bzImage-6.9.11.efi)
Quote:
13880 -rwx------ 1 root root 14210048 Jul 28 01:03 /efi/EFI/Gentoo/bzImage-6.9.11.efi
Back to top
View user's profile Send private message
Phoenix591
Guru
Guru


Joined: 17 Sep 2007
Posts: 493

PostPosted: Sun Jul 28, 2024 5:13 am    Post subject: Reply with quote

Code:
Boot0004* gentoo-6.9.11 HD(1,MBR,0x...

is your drive partitioned in old mbr format? that could be throwing it off. Double check your disk layout with fdisk -l .
Back to top
View user's profile Send private message
kimchi_sg
Advocate
Advocate


Joined: 26 Nov 2004
Posts: 3038

PostPosted: Sun Jul 28, 2024 5:25 am    Post subject: Reply with quote

NP_complete wrote:
Thanks for your reply, @kimchi_sg. I am using a minimal USB stick for the installation. Please see here, here, and below:
Quote:
BootCurrent: 0003
Timeout: 2 seconds
BootOrder: 0004,0000,0001,0002,0003
Boot0000* Setup MemoryMapped(11,0x860000,0x15fffff)/FvFile(462caa21-7614-4503-836e-8ab6f4662331)
Boot0001 UEFI BootManagerMenuApp MemoryMapped(11,0x860000,0x15fffff)/FvFile(eec25bdc-67f2-4d95-b1d5-f81b2039d11d)
Boot0002* UEFI Shell MemoryMapped(11,0x860000,0x15fffff)/FvFile(7c04a583-9e3e-4f1c-ad65-e05268d0b4d1)
Boot0003* MyFlashDrive PciRoot(0x0)/Pci(0x14,0x0)/USB(0,0){auto_created_boot_option}
Boot0004* gentoo-6.9.11 HD(1,MBR,0x5eca5c4a,0x800,0x1ce7800)/File(\EFI\Gentoo\bzImage-6.9.11.efi)
Quote:
13880 -rwx------ 1 root root 14210048 Jul 28 01:03 /efi/EFI/Gentoo/bzImage-6.9.11.efi

I have Alder Lake Intel NUC which is 2 generations behind yours... the below is probably the issue.
I am assuming you also use the Intel integrated graphics.

In your config, all the Intel display driver settings are set to static "y" instead of module "m".
Code:

CONFIG_DRM_I915=y

But the firmware for Intel graphics is not compiled into the kernel:
Code:

CONFIG_EXTRA_FIRMWARE=""

I assume you have emerged linux-firmware which contains essential firmware for the graphics to work.

You can either:

  • Change to compile the Intel drivers as modules, or
  • Compile them static as now, and compile the firmware into the kernel also.

How to compile firmware into kernel? Using CONFIG_EXTRA_FIRMWARE, which is a list of firmware files separated by spaces.
The files should have extension .bin

How to get the firmware files that is needed for your Meteor Lake graphics?
My method:

  • Boot the Gentoo LiveUSB
  • Once booted run:
    Code:
    # dmesg | grep 'oading f' | grep -v yoyo


It will list all the firmware files that the kernel tried to load.
(The 'grep -v yoyo' filters out a false result which is known to be missing in linux-firmware and not needed.)
Back to top
View user's profile Send private message
NP_complete
Tux's lil' helper
Tux's lil' helper


Joined: 21 Mar 2009
Posts: 136

PostPosted: Sun Jul 28, 2024 6:01 am    Post subject: Reply with quote

@kimchi_sg, I built CONFIG_DRM_I915 as module - same problem. I am wondering, though, if this module MUST be built into the kernel because it is being used by the frame buffer at boot. What do you think?

@Phoenix591, thanks for the comment. According to fdisk -l, the disk label type is gpt. Correct me if I'm wrong: the MBR is present here because the ESP partition contains vfat.
Back to top
View user's profile Send private message
kimchi_sg
Advocate
Advocate


Joined: 26 Nov 2004
Posts: 3038

PostPosted: Sun Jul 28, 2024 6:27 am    Post subject: Reply with quote

NP_complete wrote:
@kimchi_sg, I built CONFIG_DRM_I915 as module - same problem. I am wondering, though, if this module MUST be built into the kernel because it is being used by the frame buffer at boot. What do you think?


I play safe and static everything, and disable loadable module support. But then I do not change my hardware setup though, so YMMV.
Back to top
View user's profile Send private message
sMueggli
Guru
Guru


Joined: 03 Sep 2022
Posts: 489

PostPosted: Sun Jul 28, 2024 8:08 am    Post subject: Reply with quote

Please show
Code:
lsblk -f -o +PARTUUID


Which command did you use to create the NVRAM entry? Please provide the complete command.
Back to top
View user's profile Send private message
Nowa
Developer
Developer


Joined: 25 Jun 2014
Posts: 429
Location: Nijmegen

PostPosted: Sun Jul 28, 2024 8:18 am    Post subject: Reply with quote

NP_complete wrote:
I am wondering, though, if this module MUST be built into the kernel because it is being used by the frame buffer at boot. What do you think?


You don't need it built in if you enable some other framebuffer driver such as FB_EFI or DRM_SIMPLEDRM.
_________________
OS: Gentoo 6.10.12-gentoo-dist, ~amd64, 23.0/desktop/plasma/systemd
MB: MSI Z370-A PRO
CPU: Intel Core i9-9900KS
GPU: Intel Arc A770 16GB & Intel UHD Graphics 630
SSD: Samsung 970 EVO Plus 2 TB
RAM: Crucial Ballistix 32GB DDR4-2400
Back to top
View user's profile Send private message
NP_complete
Tux's lil' helper
Tux's lil' helper


Joined: 21 Mar 2009
Posts: 136

PostPosted: Sun Jul 28, 2024 7:13 pm    Post subject: Reply with quote

@sMueggli, @AndrewAmmerlaan, thanks for weighing in.

@sMueggli, running
Quote:
lsblk -f -o +PARTUUID
outputs
Quote:
NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS PARTUUID
loop0
sda
└─sda1
sdb
└─sdb1 3.4G 0% /root/usb
zram0
nvme0n1
├─nvme0n1p1
├─nvme0n1p2
├─nvme0n1p3 84.9G 15% /
└─nvme0n1p4
Here, sda1 is the live USB, and sdb1 is another flash drive I use to move files back and forth. For your second question,
Quote:
Which command did you use to create the NVRAM entry? Please provide the complete command.
could you clarify what "NVRAM entry" means?
Back to top
View user's profile Send private message
NP_complete
Tux's lil' helper
Tux's lil' helper


Joined: 21 Mar 2009
Posts: 136

PostPosted: Sun Jul 28, 2024 9:38 pm    Post subject: Reply with quote

This may be crucial, or it may not be. Apparently, I forgot to mention that the EFI is coreboot-based. The kernel has a handful of options that mention coreboot, so I did this:
Quote:
1569,1570c1569,1577
< # CONFIG_SYSFB_SIMPLEFB is not set
< # CONFIG_GOOGLE_FIRMWARE is not set
---
> CONFIG_SYSFB_SIMPLEFB=y
> CONFIG_GOOGLE_FIRMWARE=y
> # CONFIG_GOOGLE_SMI is not set
> CONFIG_GOOGLE_CBMEM=y
> CONFIG_GOOGLE_COREBOOT_TABLE=y
> # CONFIG_GOOGLE_MEMCONSOLE_X86_LEGACY is not set
> CONFIG_GOOGLE_FRAMEBUFFER_COREBOOT=y
> # CONFIG_GOOGLE_MEMCONSOLE_COREBOOT is not set
> # CONFIG_GOOGLE_VPD is not set
3361c3368
< # CONFIG_DRM_SIMPLEDRM is not set
---
> CONFIG_DRM_SIMPLEDRM=y
3410d3416
< # CONFIG_FB_SIMPLE is not set
Sadly, this made no difference.
Back to top
View user's profile Send private message
Goverp
Advocate
Advocate


Joined: 07 Mar 2007
Posts: 2177

PostPosted: Mon Jul 29, 2024 8:34 am    Post subject: Reply with quote

NP_complete wrote:
...Correct me if I'm wrong: the MBR is present here because the ESP partition contains vfat.

I'm pretty sure you're wrong, but I couldn't find a reference to prove it! (EFI documention seems over-engineered to me....)

The ESP uses vfat, (or rather, IIRC the EFI spec requires FAT32, which is about the same), but that's irrelevant, as it's a filesystem. MBR is about partition tables, and EFI was defined for GPT partitions - I think its MBR support is to allow a format readable by legacy applications, and in most situations (and all new installations) it's unnecessary.

There is a requirement to set appropriate flags in the GPT to identify the ESP, and that's reminiscent of the MBR need to flag a Windows partition as "bootable". This similarity sometimes leads people to incorrectly assume a need for MBR. Unfortunately various partitioning tools use differing settings for this flag, adding to the confusion. The Arch Linux wiki contains a fairly clear explanation.
_________________
Greybeard
Back to top
View user's profile Send private message
sMueggli
Guru
Guru


Joined: 03 Sep 2022
Posts: 489

PostPosted: Mon Jul 29, 2024 4:09 pm    Post subject: Reply with quote

NP_complete wrote:
@sMueggli, running
Quote:
lsblk -f -o +PARTUUID
outputs [...]


I was hoping to see the partition UUID to see on which partition your boot entry is pointing.

NP_complete wrote:
For your second question,
Quote:
Which command did you use to create the NVRAM entry? Please provide the complete command.
could you clarify what "NVRAM entry" means?


The boot entries are stored in the so called NVRAM. Basically I wanted to see the "efibootmgr -c..." command (or whatever you used).
Back to top
View user's profile Send private message
sMueggli
Guru
Guru


Joined: 03 Sep 2022
Posts: 489

PostPosted: Mon Jul 29, 2024 4:37 pm    Post subject: Reply with quote

Goverp wrote:
NP_complete wrote:
...Correct me if I'm wrong: the MBR is present here because the ESP partition contains vfat.

I'm pretty sure you're wrong, but I couldn't find a reference to prove it! (EFI documention seems over-engineered to me....)


I think, the answer is not hidden in the UEFI spec.

The output is generated by "efibootmgr" which is parsing the /sys/firmware/efi/efivars/Boot* files. The MBR or GPT entry should reflect the partition table of the disk.

On the other hand it is also possible that NVRAM entries are out of date or wrong (in this specific case I do not think that the data are "historical" and out of date, but simply wrong).
Back to top
View user's profile Send private message
NP_complete
Tux's lil' helper
Tux's lil' helper


Joined: 21 Mar 2009
Posts: 136

PostPosted: Wed Jul 31, 2024 9:10 am    Post subject: Reply with quote

@sMueggli, you were absolutely right! This boot entry
Quote:
Boot0004* gentoo-6.9.11 HD(1,MBR,0x5eca5c4a,0x800,0x1ce7800)/File(\EFI\Gentoo\bzImage-6.9.11.efi)
was problematic, although I'm still scratching my head as to how it came about, given that I was using efibootmgr. Anyway, after erasing and recreating the entry, I don't get the "Not Found" message anymore. In the newly created entry, GPT replaces MBR.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Installing Gentoo All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum