You are not logged in.

#1 2010-06-09 14:31:13

skodabenz
Banned
From: Tamilnadu, India
Registered: 2010-04-11
Posts: 382

[SOLVED] Kernel panic with GRUB2 UEFI x86_64

I get "VFS: Cannot open root device" and "append correct root= option" errors and a kernel panic with CAPS LOCK blinking and unresponsive keyboard and touchpad when booting 2.6.33-ARCH stock kernel with my own compiled GRUB2 for UEFI x86_64 as grub2.efi.

19592?getfile=5300

I filed a bug report regarding this http://bugs.archlinux.org/task/19592 and Thomas Bächler said that the problem was that the iniramfs is not passed to the kernel by grub2 uefi. This error does not occur with grub2 bios.

The following details are copied over from the bug report

Description:

Kernel Panic while booting Archlinux (kernel 2.6.33 x86_64) using GRUB2 for UEFI x86_64 (GRUB2 bzr revision 2396 - 23 May 2010).

This kernel panic is very specific. It does not occur with same GRUB2 compiled for BIOS (BIOS-GPT using BIOS Boot Partition) and it does not occur with GRUB-legacy x64 EFI (Fedora's version extracted from Fedora's rpm http://koji.fedoraproject.org/koji/buil … ID=161036). I do not have Archlinux's GRUB-legacy installed to test it for this kernel panic. No problem with GRUB2 BIOS.

This kernel panic occurs only with GRUB2 compiled for UEFI x86_64 firmware. I use Tianocore EDK DUET UEFI64 firmware. GRUB2 compiled for BIOS is my own compiled version directly using source (not the AUR grub2-bzr package) (using gcc-multilib package). Configuration file for GRUB2 UEFI same as the one for GRUB2 BIOS.


Additional info:

kernel26 2.6.33.4-1 x86_64
udev 151-3 x86_64

GRUB2 UEFI configure options :-

./configure --with-platform=efi --target=x86_64 --program-transform-name=s,grub,grub2, --enable-efiemu --enable-mm-debug --enable-grub-fstest --enable-grub-mkfont --disable-nls --prefix=/grub2_efi_x64

Modules included in grub2.efi x86_64 UEFI Application (using grub-mkimage of GRUB2) :-

ata part_gpt part_msdos fat ntfs ntfscomp ext2 iso9660 udf hfsplus fshelp reboot normal chain linux xnu xnu_uuid ls search search_fs_file search_fs_uuid search_label help loopback cat tar boot configfile cpio sh echo loadbios efi_gop multiboot multiboot2 relocator

GRUB2 config :-

menuentry "Arch Linux" {
set root=(hd0,8)
linux /vmlinuz26 root=/dev/disk/by-uuid/0cc6e472-7f98-42ff-b7f3-309b641377ad rootfstype=ext4 ro add_efi_memmap nomodeset debug=all
initrd /kernel26.img
}

I have attached the kernel panic image as I couldn't get any other way of recording it. I have also attached my grub.cfg file.

My System :-

Dell India Studio 1537 Laptop
GUID Partition Table, EFI System Partition /dev/sda1 fat32,
BIOS Boot Partition /dev/sda2 no-FS,

Archlinux x86_64 root-partition /dev/sda7 ext4,
Archlinux /boot /dev/sda8 fat32

Windows 7 x64 Professional booting in UEFI-GPT mode.
ATI Mobility Radeon HD 3450 (not sure if this bug is related to my Graphics Card)

The same bug report at grub2 bug-grub mailing list is http://lists.gnu.org/archive/html/bug-g … 00000.html .

I tried Fedora 12 x86_64 kernel + Archlinux kernel26.img initramfs, in dmesg :-

Trying to unpack rootfs image as initramfs...
rootfs image is not initramfs (junk in compressed archive); looks like an initrd

Fedora's grub-legacy grub.efi booted Archlinux without any problems. My initramfs is lzma compressed. Seems like grub2 uefi does not pass the correct memory address of the loaded initramfs to Archlinux kernel.

Does anyone know what is wrong? I am not a programmer. My initramfs is LZMA compressed and this kernel panic occurs with both normal and fallback initramfs images.

I guess something is wrong in (grub2-source-dir)/loader/i386/efi/linux.c file.

Fedora's grub-legacy fork with EFI, GPT and EXT4FS support - http://git.kernel.org/?p=boot/grub-fedo … ;a=summary (this is the only grub-legacy fork known to work for uefi systems).

Last edited by skodabenz (2010-07-07 10:50:21)


My new forum user/nick name is "the.ridikulus.rat" .

Offline

#2 2010-07-07 10:50:04

skodabenz
Banned
From: Tamilnadu, India
Registered: 2010-04-11
Posts: 382

Re: [SOLVED] Kernel panic with GRUB2 UEFI x86_64

This panic does not occur with grub2 bzr experimental branch.

bzr branch http://bzr.savannah.gnu.org/r/grub/bran … perimental
(or)
bzr branch lp:~skodabenz/grub/grub2-bzr-exp

and then compile grub2 for uefi.


My new forum user/nick name is "the.ridikulus.rat" .

Offline

Board footer

Powered by FluxBB