[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#415474: mkinitramfs fails with monolithic kernels



Package: initramfs-tools
Version: 0.85f
Severity: normal
Tags: patch

mkinitramfs fails when building a ramfs for a monolithic kernel, and so
does postinst of kernel-package-generated kernel packages.

Please consider applying the attached patch.

Kind regards,

Martin

--- mkinitramfs	2007-03-19 15:38:41.000000000 +0100
+++ /usr/sbin/mkinitramfs	2007-03-19 14:52:36.000000000 +0100
@@ -143,9 +143,7 @@
 
 if [ ! -e "${MODULESDIR}" ]; then
 	echo "Cannot find ${MODULESDIR}"
-	exit 1
-fi
-if [ ! -e "${MODULESDIR}/modules.dep" ]; then
+elif [ ! -e "${MODULESDIR}/modules.dep" ]; then
 	depmod ${version}
 fi
 
@@ -170,6 +168,7 @@
 	mkdir -p "${DESTDIR}/${d}"
 done
 
+if [ -e "${MODULESDIR}" ]; then
 # MODULES=list case.  Always honour.
 for x in "${CONFDIR}/modules" /usr/share/initramfs-tools/modules.d/*; do
 	if [ -f "${x}" ]; then
@@ -189,6 +188,7 @@
 	auto_add_modules base
 	auto_add_modules net
 fi
+fi
 
 # Have to do each file, because cpio --dereference doesn't recurse down
 # symlinks.
@@ -257,9 +257,11 @@
 		END { print "devices='\''" devices "'\''" }' \
 		>> ${DESTDIR}/conf/mdrun.conf
 	copy_exec /sbin/mdadm /sbin
+	if [ -e "${MODULESDIR}" ]; then
 	for x in md linear multipath raid0 raid1 raid456 raid5 raid6 raid10; do
 		manual_add_modules ${x}
 	done
+	fi
 fi
 [ -x /sbin/mdrun ] && copy_exec /sbin/mdrun /sbin
 
@@ -267,9 +269,11 @@
 if [ -x /sbin/vgchange ] && [ -d /lib/lvm-200 ] \
 	&& [ ! -f /usr/share/initramfs-tools/hooks/lvm2 ]; then
 	copy_exec /lib/lvm-200/vgchange /sbin
+	if [ -e "${MODULESDIR}" ]; then
 	for x in dm_mod dm_snapshot dm_mirror; do
 		manual_add_modules ${x}
 	done
+	fi
 fi
 
 # Apply DSDT to initramfs

Reply to: