# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a device; this may
# be used with UUID= as a more robust way to name devices that works even if
# disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
UUID=00A8-B34B /boot/efi vfat defaults,noatime 0 2
UUID=70436173-70dc-4a8d-9f48-dac9a5c6a204 / ext4 defaults,noatime 0 1
/dev/disk/by-label/ExternalHDD /mnt/ExternalHDD auto nosuid,nodev,nofail,x-gvfs-show 0 0
Oftentimes it occurs when an update is interrupted in its course and the kernel images won’t be rebuild correctly. In your case It’s difficult to say.
Might be that other forum members know of other causes. I am curious too.
Check your pacman.log for a failed kernel building, although I doubt it is the problem. AFAIK the fallback image is built after the normal one, and you say fallback was successful.
OTOH, the boot message says that the root partition was not found.
A possible explanation might be a temporary disk discovery failure, while after reboot it was found. If you had tried the normal kernel again, you might have had a different result .
Random or temporary disk discovery failure at boot is a possible sign of a slowly failing disk, but not always (BIOS firmware might be another reason). Nevertheless, ensuring backup of your important files (including custom configuration system files) is a good idea. After this, maybe checking the disk status (SMART and/or fsck) .