https://bugzilla.novell.com/show_bug.cgi?id=379727 Summary: mkinitrd broken for Dom0 Xen kernels (lacking SCSI modules) Product: openSUSE 10.3 Version: Final Platform: x86-64 OS/Version: openSUSE 10.3 Status: NEW Severity: Major Priority: P5 - None Component: Kernel AssignedTo: kernel-maintainers@forge.provo.novell.com ReportedBy: adaugherity@tamu.edu QAContact: qa@suse.de Found By: --- After installing 10.3 on one of our VM servers (a Dell PE 1850) which had been running 10.2, I was disappointed to find that the Xen kernel (Dom0) failed to boot. It could not find the root device, and after examining the initrd, I discovered some SCSI drivers were missing. This is the INITRD_MODULES line from /etc/sysconfig/kernel (configured by the installer; I did not change it): INITRD_MODULES="processor thermal ata_piix megaraid_mbox fan xfs edd" megaraid_mbox is apparently the module needed for the PERC 4e/Si RAID controller, and it gets included in the -default initrd, but not in the -xen initrd. Running the mkinitrd script from 10.2 (which is one script, not split out like in 10.3) on the -xen kernel in 10.3 produces a working initrd. I was able to patch the script in 10.3 to match the 10.2 behavior. The problem is that in 10.3, with a Xen kernel, _only_ the DOMU_INITRD_MODULES are included in the initrd, whereas in 10.2, both the INITRD_MODULES and DOMU_INITRD_MODULES are used. There does not appear to be any distinction made between Dom0 and DomU xen kernels. 10.2: ==== if is_xen_kernel $kernel_version; then xenu_modules="$(resolve_modules $kernel_version $domu_modules)" fi # Copy all modules into the initrd for module in $resolved_modules $xenu_modules; do === 10.3 (setup-start.sh): ==== if is_xen_kernel $kernel_version; then RESOLVED_INITRD_MODULES="$domu_modules" else RESOLVED_INITRD_MODULES="$modules" fi ==== Changing that to RESOLVED_INITRD_MODULES="$modules $domu_modules" restores the 10.2 behavior and produces a working Dom0 initrd. It does not appear to have any negative effect on DomU VMs. I can provide more complete logs if requested, but here is the module-related output from various mkinitrd runs: 10.3 -default kernel: Kernel Modules: processor thermal scsi_mod libata ata_piix megaraid_mm megaraid_mbox fan xfs edd megaraid sd_mod usbcore ohci-hcd uhci-hcd ehci-hcd ff-memless hid usbhid 10.3 -xen: Kernel Modules: xennet xenblk scsi_mod megaraid sd_mod usbcore ohci-hcd uhci-hcd ehci-hcd ff-memless hid usbhid xfs Note the missing megaraid_mm and megaraid_mbox modules (among others). 10.3 -xen with my patch to setup-start.sh: Kernel Modules: processor thermal scsi_mod libata ata_piix megaraid_mm megaraid_mbox fan xfs edd xennet xenblk megaraid sd_mod usbcore ohci-hcd uhci-hcd ehci-hcd ff-memless hid usbhid 10.2 mkinitrd (on the 10.3 machine): Driver modules: scsi_mod sd_mod processor thermal libata ata_piix megaraid_mm megaraid_mbox fan edd Xen domU modules: xennet xenblk Filesystem modules: xfs This does not appear to be specifically related to x86_64 or the megaraid_mbox driver, as I can also reproduce the problem on a 32-bit machine using the dpt_i2o driver. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.