My machine architecture is i686 (output by "uname -m") Genkernel generated image is: /boot/initramfs-genkernel-x86-3.10.7-gentoo-r1 Kexec init script tries to find initramfs-genkernel-i686-3.10.7-gentoo-r1 and not initramfs-genkernel-x86-3.10.7-gentoo-r1 (look at arch part of filename). As the result initramfs is not loaded into memory and the system is not bootable, because the root filesystem is located on software RAID device. Reproducible: Always Steps to Reproduce: 1. uname -m i686 2. genkernel --no-ramdisk-modules ramdisk 3. /etc/init.d/kexec start 4. reboot Actual Results: Kernel dump on the screen. The user is forced to reset the machine to boot it. Expected Results: Kernel ramdisk loaded and successfull boot
Created attachment 362288 [details] emerge --info
User error here: You disabled ramdisk modules, and didn't compile RAID into your kernel.
My ramdisk modules are OK, kernel boots fine with grub. That is kexec script what failed to load ramdisk into memory. It's because ramdisk filename hardcoded to kexec init script is wrong. I stated it in my initial bugreport. Genkernel and kexec use different schemas for naming ramdisk image - that's the point of my bugreport.
To resolve the bug kexec init script should we rewritten to respect genkernel generated ramdisks names.
or vice versa
I you didn't get the point it's here: "x86" <-> "i686" This part of the ramdisk image differs for me. So genkernel generated filename was initramfs-genkernel-x86-3.10.7-gentoo-r1 And kexec tried to use this name initramfs-genkernel-i686-3.10.7-gentoo-r1
[master 932b155bb6] sys-apps/kexec-tools: support more kernel names. Date: Sat Jan 7 16:31:46 2017 -0800 3 files changed, 265 insertions(+), 1 deletion(-) mode change 100755 => 100644 sys-apps/kexec-tools/files/kexec.init-2.0.12 create mode 100644 sys-apps/kexec-tools/files/kexec.init-2.0.13-r1 create mode 100644 sys-apps/kexec-tools/kexec-tools-2.0.13-r1.ebuild