F36 - New kernels not found in bootloader

On the second computer I got the issue, I will not be able to get so much detail. I have updated from a sata (mbr then GPT) to a nvme drive (I copied the partition) so what did I do and when … I don’t remember… From some timestamp, I guess I did reinstall a fedora 26 or 27 but not sure…

the lsblk is like this:

NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda           8:0    0 931,5G  0 disk 
├─sda1        8:1    0 249,6G  0 part 
├─sda2        8:2    0   450M  0 part 
└─sda3        8:3    0 622,9G  0 part /mnt/data
nvme0n1     259:0    0 953,9G  0 disk 
├─nvme0n1p1 259:1    0   522M  0 part 
├─nvme0n1p2 259:2    0   200M  0 part 
├─nvme0n1p3 259:3    0 288,6G  0 part 
├─nvme0n1p4 259:4    0   534M  0 part 
├─nvme0n1p5 259:5    0     1G  0 part /boot/efi
├─nvme0n1p6 259:6    0  97,7G  0 part /
├─nvme0n1p7 259:7    0  73,2G  0 part /home
├─nvme0n1p8 259:8    0 244,1G  0 part /opt
└─nvme0n1p9 259:9    0   248G  0 part /opt/tools

The third computer I got did not have the issue. But fedora got installed on version 35 and then updated last week. and the hard disk did get setup with standard fedora partitioning (full disk, automatic partition)

Just adding to this, I too have an old install (F27 if I recall correctly, Aug 2017) and I have bootloader --location=mbr, as others have reported.

I had lsblk output already posted earlier, and fdisk -l /dev/nvme0n1 outputs:

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: dos
Disk identifier: 0xee046610

Device         Boot   Start       End   Sectors   Size Id Type
/dev/nvme0n1p1 *       2048    411647    409600   200M ef EFI (FAT-12/16/32)
/dev/nvme0n1p2       411648   6703103   6291456     3G  c W95 FAT32 (LBA)
/dev/nvme0n1p3      6703104   8800255   2097152     1G  7 HPFS/NTFS/exFAT
/dev/nvme0n1p4      8800256 976562500 967762245 461.5G 8e Linux LVM

Yes, it’s saying there are no GPT. I also have /sys/firmware/efi (I saw somewhere it also tells us that EFI is being used)

итого 0
-r--r--r--  1 root root 4096 мая 12 20:50 config_table
drwxr-xr-x  2 root root    0 мая 10 16:49 efivars
drwxr-xr-x  3 root root    0 мая 10 16:51 esrt
-r--r--r--  1 root root 4096 мая 11 22:35 fw_platform_size
-r--r--r--  1 root root 4096 мая 12 20:50 fw_vendor
drwxr-xr-x  2 root root    0 мая 12 20:50 mok-variables
-r--r--r--  1 root root 4096 мая 12 20:50 runtime
drwxr-xr-x 12 root root    0 мая 12 20:50 runtime-map
-r--------  1 root root 4096 мая 12 20:50 systab

Linux does allow booting an MBR disk with uefi. Windows does not.
I just thought that note seemed strange.

I had exactly the same issue with a Dell laptop that I’ve been using since 2014. Started with Fedora 21 and upgraded with every new release and never had a problem until now. The machine has a 500Mb /boot and a 200Mb /boot/efi. It seems to me that the common thread is older machines with a long history of upgrades start trying to put kernels into /boot/efi with the F36 upgrade; maybe some legacy setting?

Removing the /boot/efi/{machineId} directory then ‘dnf reinstall kernel*’ clears it right up and leaves the 200Mb /boot/efi filesystem at around 4% usage so maybe there’s no need to spend a lot of time expanding it.

@dupaclet - thanks for explaining the problem and solution so clearly. I had been screwing around for 24 hours trying all kinds of things to get the kernel files into the correct place before I found this thread & I thought that I had lost my mind!