summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--conf/initramfs.conf2
-rw-r--r--debian/changelog79
-rw-r--r--debian/initramfs-tools.postrm2
-rw-r--r--hook-functions39
-rwxr-xr-xinit23
-rw-r--r--initramfs-tools.85
-rw-r--r--scripts/functions15
-rwxr-xr-xscripts/init-top/all_generic_ide5
-rwxr-xr-xscripts/init-top/framebuffer17
-rwxr-xr-xupdate-initramfs3
-rw-r--r--update-initramfs.85
11 files changed, 159 insertions, 36 deletions
diff --git a/conf/initramfs.conf b/conf/initramfs.conf
index 4a89a89..a2bd8db 100644
--- a/conf/initramfs.conf
+++ b/conf/initramfs.conf
@@ -4,8 +4,6 @@
#
# Note that configuration options from this file can be overriden
# by config files in the /etc/initramfs-tools/conf.d directory.
-# In particular, Debian installer may set MODULES in the file
-# /etc/initramfs-tools/conf.d/driver-policy.
#
# MODULES: [ most | netboot | dep | list ]
diff --git a/debian/changelog b/debian/changelog
index 1ab7e6e..85ce872 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,82 @@
+initramfs-tools (0.92o) unstable; urgency=high
+
+ * configure_networking: Raise ipconfig timeout to 180 seconds.
+ Thanks Norbert Tretkowski <norbert@tretkowski.de> for report.
+ (closes: #511085)
+
+ -- maximilian attems <maks@debian.org> Wed, 07 Jan 2009 15:16:14 +0100
+
+initramfs-tools (0.92n) unstable; urgency=high
+
+ [ Eugene Paskevich ]
+ * hook-functions: Fix MODULES=dep for lvm LABEL fstab notation.
+ (closes: #508906)
+
+ [ maximilian attems ]
+ * all_generic_ide: Also parse boolean bootoption. (closes: #507805)
+ * initramfs-tools.8: Document where to look up NFSOPTS. (closes: #502927)
+ * update-initramfs.8: List -d and mark the non-optional as such.
+
+ [ S. Sakar ]
+ * hook-functions: MODULES=dep fix encrypted loop device.
+ (closes: #499666)
+
+ -- maximilian attems <maks@debian.org> Fri, 19 Dec 2008 14:03:13 +0100
+
+initramfs-tools (0.92m) unstable; urgency=medium
+
+ [ Colin Watson ]
+ * scripts/functions: Call ipconfig with a one-minute timeout.
+ * Make debug option write to /dev/.initramfs/initramfs.debug,
+ so that it can be retrieved after boot.
+
+ [ Julien Danjou ]
+ * scripts/functions: Wrong check for udevadm in functions. (closes: #507059)
+
+ [ maximilian attems ]
+ * scripts/functions: fix not set break variable. (closes: #502058)
+ * MODULES=dep fix for ida devices.
+ * hook-functions: alphebetize net drivers, fix typhoon typo.
+ * Add atl1e, cxgb, ixgb, ixgbe, mlx4_core, netxen_nic, sfc, tehuti to
+ net module list. (closes: #503216)
+ * nuke 0.92k goof clean up.
+ * postrm: set -e flag.
+ * Revert "framebuffer: Let udev create fb devices."
+ * scripts/functions: comment fix path to moved linux-2.6
+ Documentation.
+ * init: Don't leak initramfs-tools exported variables.
+ (closes: #426465, #505440)
+
+ [ dann frazier ]
+ * Fix MODULES=dep for cciss devices. (closes: #507619)
+
+ [ Michal Pokrywka ]
+ * framebuffer: Add support for uvesafb. (closes: #502056)
+
+ [ Andres Salomon ]
+ * fix redboot partition support. (closes: #504555)
+
+ -- maximilian attems <maks@debian.org> Tue, 16 Dec 2008 16:01:44 +0100
+
+initramfs-tools (0.92l) unstable; urgency=high
+
+ * Revert "initramfs-tools: Add support for linux-2.6 make deb-pkg
+ target" (closes: #499270) thanks Vincent Danjean <vdanjean@debian.org>.
+
+ -- maximilian attems <maks@debian.org> Wed, 17 Sep 2008 15:38:05 +0200
+
+initramfs-tools (0.92k) unstable; urgency=high
+
+ [ Martin Michlmayr ]
+ * update initramfs.conf according to latest Debian Installer.
+ * update-initramfs: don't run glantank-update-kernel.
+
+ [ maximilian attems ]
+ * auto_add_modules: add dasd_diag_mod to dasd section.
+ * initramfs-tools: Add support for linux-2.6 make deb-pkg target.
+
+ -- maximilian attems <maks@debian.org> Tue, 16 Sep 2008 14:55:04 +0200
+
initramfs-tools (0.92j) unstable; urgency=high
[ Gerfried Fuchs ]
diff --git a/debian/initramfs-tools.postrm b/debian/initramfs-tools.postrm
index 6896636..f66e01a 100644
--- a/debian/initramfs-tools.postrm
+++ b/debian/initramfs-tools.postrm
@@ -1,5 +1,7 @@
#!/bin/sh
+set -e
+
if [ "x${1}" = "xpurge" ]; then
rm -f /etc/initramfs-tools/conf.d/resume
rm -f /etc/initramfs-tools/modules
diff --git a/hook-functions b/hook-functions
index e9f2368..6a68910 100644
--- a/hook-functions
+++ b/hook-functions
@@ -246,7 +246,8 @@ dep_add_modules()
manual_add_modules "${FSTYPE}"
# lvm or luks root
- if [ "${root#/dev/mapper/}" != "${root}" ]; then
+ if [ "${root#/dev/mapper/}" != "${root}" ] \
+ || [ "${root#/dev/dm-}" != "${root}" ]; then
minor=$((0x$(stat --format "%T" ${root}) % 256))
block=$(ls -1 /sys/block/dm-${minor}/slaves | head -n 1)
# lvm on luks or luks on lvm
@@ -269,6 +270,19 @@ dep_add_modules()
root=${root#/dev/}
block=$(awk "/^${root}/{print substr(\$5, 1, 3); exit}" \
/proc/mdstat)
+ # cciss device
+ elif [ "${root#/dev/cciss/}" != "${root}" ]; then
+ block=${root#/dev/cciss/*}
+ block="cciss!${block%p*}"
+ # ida device
+ elif [ "${root#/dev/ida/}" != "${root}" ]; then
+ block=${root#/dev/ida/*}
+ block="ida!${block%p*}"
+ # loop root /dev/loopX
+ elif [ "${root#/dev/loop}" != "${root}" ]; then
+ root=${root#/dev/}
+ block=$(losetup -a \
+ | awk "/${root}/{print substr(\$3, 7, 3); exit}")
# classical root device
else
block=${root#/dev/}
@@ -329,15 +343,17 @@ auto_add_modules()
done
;;
net)
- for x in 3c59x 8139cp 8139too 8390 atl1 b44 bmac \
- bnx2 cxgb3 defxx dl2k e100 e1000 e1000e ehea epic100 \
+ for x in 3c59x 8139cp 8139too 8390 atl1 atl1e b44 bmac \
+ bnx2 cxgb cxgb3 de2104x de4x5 defxx dl2k dmfe \
+ e100 e1000 e1000e ehea epic100 \
ep93xx_eth eql fealnx famachi forcedeth gelic_net \
- hp100 igb ipg mace mv643xx_eth myri10ge \
- natsemi ne2k-pci netconsole niu ns83820 pcnet32 qla3xxx \
- r8169 s2io sis900 skge sky2 slhc smc911x starfire \
- sundance sungem sungem_phy sunhme sunvnet tg3 tlan de2104x \
- de4x5 dmfe tulip winbond-840 xircom_cb xircom_tulip_cb \
- typhon via-rhine via-velocity yellowfin; do
+ hp100 igb ipg ixgb ixgbe mace mlx4_core mv643xx_eth myri10ge \
+ natsemi ne2k-pci netconsole netxen_nic niu ns83820 \
+ pcnet32 qla3xxx \
+ r8169 s2io sfc sis900 skge sky2 slhc smc911x starfire \
+ sundance sungem sungem_phy sunhme sunvnet tehuti tg3 tlan \
+ tulip typhoon via-rhine via-velocity winbond-840 \
+ xircom_cb xircom_tulip_cb yellowfin; do
manual_add_modules "${x}"
done
;;
@@ -358,9 +374,6 @@ auto_add_modules()
;;
block)
copy_modules_dir kernel/drivers/block
- for x in dasd_diag_mod; do
- manual_add_modules "${x}"
- done
;;
# FIXME: can be removed after Lenny release
ieee1394)
@@ -379,7 +392,7 @@ auto_add_modules()
done
;;
dasd)
- for x in dasd_eckd_mod dasd_fba_mod; do
+ for x in dasd_diag_mod dasd_eckd_mod dasd_fba_mod; do
manual_add_modules "${x}"
done
;;
diff --git a/init b/init
index e287739..102eda2 100755
--- a/init
+++ b/init
@@ -124,7 +124,7 @@ for x in $(cat /proc/cmdline); do
debug)
debug=y
quiet=n
- exec >/tmp/initramfs.debug 2>&1
+ exec >/dev/.initramfs/initramfs.debug 2>&1
set -x
;;
debug=*)
@@ -204,10 +204,23 @@ if [ ! -x "${rootmnt}${init}" ]; then
panic "No init found. Try passing init= bootarg."
fi
-# Confuses /etc/init.d/rc
-if [ -n ${debug} ]; then
- unset debug
-fi
+# don't leak too much of env - some init(8) don't clear it
+# (keep init, rootmnt)
+unset debug
+unset MODPROBE_OPTIONS
+unset DPKG_ARCH
+unset ROOTFLAGS
+unset ROOTFSTYPE
+unset ROOTDELAY
+unset ROOT
+unset blacklist
+unset break
+unset noresume
+unset panic
+unset quiet
+unset readonly
+unset resume
+unset resume_offset
# Chain to real filesystem
maybe_break init
diff --git a/initramfs-tools.8 b/initramfs-tools.8
index 5e1f083..ea0952b 100644
--- a/initramfs-tools.8
+++ b/initramfs-tools.8
@@ -1,4 +1,4 @@
-.TH INITRAMFS-TOOLS 8 "2008/07/05" "" "mkinitramfs script overview"
+.TH INITRAMFS-TOOLS 8 "2008/12/18" "" "mkinitramfs script overview"
.SH NAME
initramfs-tools \- an introduction to writing scripts for mkinitramfs
@@ -58,7 +58,8 @@ set the root file system type.
\fB\fI nfsroot
can be either "auto" to try to get the relevant information from DHCP or a
string of the form NFSSERVER:NFSPATH or NFSSERVER:NFSPATH:NFSOPTS.
-Use root=/dev/nfs for NFS to kick to in.
+Use root=/dev/nfs for NFS to kick to in. NFSOPTS can be looked up in
+\fInfs(5)\fP.
.TP
\fB\fI ip
diff --git a/scripts/functions b/scripts/functions
index 299c29c..f715e68 100644
--- a/scripts/functions
+++ b/scripts/functions
@@ -55,7 +55,7 @@ panic()
maybe_break()
{
- if [ "${break}" = "$1" ]; then
+ if [ "${break:-}" = "$1" ]; then
panic "Spawning shell within the initramfs"
fi
}
@@ -238,7 +238,7 @@ parse_numeric() {
/*)
return
;;
- *:*)
+ [0-9]*:[0-9]*)
minor=${1#*:}
major=${1%:*}
;;
@@ -261,20 +261,21 @@ configure_networking()
# networking already configured thus bail out
[ -n "${DEVICE}" ] && [ -e /tmp/net-"${DEVICE}".conf ] && return 0
- # support ip options see linux sources Documentation/nfsroot.txt
+ # support ip options see linux sources
+ # Documentation/filesystems/nfsroot.txt
case ${IPOPTS} in
none|off)
# Do nothing
;;
""|on|any)
# Bring up device
- ipconfig ${DEVICE}
+ ipconfig -t 180 ${DEVICE}
;;
dhcp|bootp|rarp|both)
- ipconfig -c ${IPOPTS} -d ${DEVICE}
+ ipconfig -t 180 -c ${IPOPTS} -d ${DEVICE}
;;
*)
- ipconfig -d $IPOPTS
+ ipconfig -t 180 -d $IPOPTS
# grab device entry from ip option
NEW_DEVICE=${IPOPTS#*:*:*:*:*:*}
@@ -303,6 +304,6 @@ configure_networking()
# Wait for queued kernel/udev events
wait_for_udev()
{
- [ -x "$(command -v udevadm)" ] && return 0
+ [ -x "$(command -v udevadm)" ] || return 0
udevadm settle ${1:+--timeout=$1}
}
diff --git a/scripts/init-top/all_generic_ide b/scripts/init-top/all_generic_ide
index 28b519a..3274ee8 100755
--- a/scripts/init-top/all_generic_ide
+++ b/scripts/init-top/all_generic_ide
@@ -18,5 +18,10 @@ for x in $(cat /proc/cmdline); do
all_generic_ide)
modprobe ide-generic
;;
+ all_generic_ide=*)
+ if [ ${x#all_generic_ide=} ]; then
+ modprobe ide-generic
+ fi
+ ;;
esac
done
diff --git a/scripts/init-top/framebuffer b/scripts/init-top/framebuffer
index 21a6b19..0ed798e 100755
--- a/scripts/init-top/framebuffer
+++ b/scripts/init-top/framebuffer
@@ -72,11 +72,16 @@ for x in $(cat /proc/cmdline); do
esac
done
-# Map command line name to module name
+# Map command line name to module name and other tweaks
case ${FB} in
matroxfb)
FB=matroxfb_base
;;
+uvesafb)
+ # v86d requires /dev/zero and dev/mem, but udev haven't been started yet
+ [ -e /dev/zero ] || mknod -m 0666 /dev/zero c 1 5
+ [ -e /dev/mem ] || mknod -m 0640 /dev/mem c 1 1
+ ;;
*)
;;
esac
@@ -85,3 +90,13 @@ if [ -n "${FB}" ]; then
modprobe fbcon
modprobe ${FB} ${OPTS}
fi
+
+if [ -e /proc/fb ]; then
+ while read fbno desc; do
+ if [ $(($fbno < 32)) ]; then
+ mknod -m 0640 /dev/fb${fbno} c 29 ${fbno}
+ fi
+ done < /proc/fb
+else
+ mknod -m 0640 /dev/fb0 c 29 0
+fi
diff --git a/update-initramfs b/update-initramfs
index 9830a7d..11f630f 100755
--- a/update-initramfs
+++ b/update-initramfs
@@ -265,9 +265,6 @@ run_bootloader()
if flash-kernel --supported >/dev/null 2>&1; then
flash-kernel
fi
- if glantank-update-kernel --supported >/dev/null 2>&1; then
- glantank-update-kernel
- fi
}
compare_sha1()
diff --git a/update-initramfs.8 b/update-initramfs.8
index 77ebe17..a01ba06 100644
--- a/update-initramfs.8
+++ b/update-initramfs.8
@@ -1,14 +1,13 @@
-.TH UPDATE-INITRAMFS 8 "2006/10/12" "" "update\-initramfs manual"
+.TH UPDATE-INITRAMFS 8 "2008/12/19" "" "update\-initramfs manual"
.SH NAME
update\-initramfs \- generate an initramfs image
.SH SYNOPSIS
.B update\-initramfs
+.RB \-c | \-d | \-u
.RB [ \-k
.IR version ]
-.RB [ \-c ]
-.RB [ \-u ]
.RB [ \-t ]
.RB [ \-v ]
.RB [ \-b ]