[packages/geninitrd] rel 2: hook blkid call also after LVM init
glen
glen at pld-linux.org
Mon Sep 17 15:24:55 CEST 2012
commit cd4499946812c36d5fc65482981b92ba22f48f3a
Author: Elan Ruusamäe <glen at delfi.ee>
Date: Mon Sep 17 16:24:51 2012 +0300
rel 2: hook blkid call also after LVM init
geninitrd-svn.patch | 852 +---------------------------------------------------
geninitrd.spec | 7 +-
2 files changed, 13 insertions(+), 846 deletions(-)
---
diff --git a/geninitrd.spec b/geninitrd.spec
index 27ad846..3f9c462 100644
--- a/geninitrd.spec
+++ b/geninitrd.spec
@@ -7,14 +7,15 @@ Summary: Creates an initial ramdisk image for preloading modules
Summary(pl.UTF-8): Narzędzie do tworzenia inicjalnego ramdysku używanego przy starcie systemu
Name: geninitrd
Version: 12582
-Release: 1
+Release: 2
License: GPL
Group: Applications/System
Source0: %{name}-%{version}.tar.gz
# Source0-md5: 1761d2097523b5c248c5846ebd3685d3
Patch0: %{name}-romfs.patch
Patch1: %{name}-gzip-compressor.patch
-#Patch2: %{name}-svn.patch
+# svn diff http://svn.pld-linux.org/svn/geninitrd/trunk -r 12585:HEAD > geninitrd-svn.patch
+Patch2: %{name}-svn.patch
URL: http://svn.pld-linux.org/trac/svn/wiki/packages/geninitrd
BuildRequires: xmlto >= 0:0.0.18-1
Requires: /usr/bin/ldd
@@ -97,7 +98,7 @@ bieżących informacji zawartych w /etc/modules.conf.
%patch0 -p1
%patch1 -p1
%endif
-#%patch2 -p0
+%patch2 -p0
%build
%{__make}
diff --git a/geninitrd-svn.patch b/geninitrd-svn.patch
index 92824e6..2567a69 100644
--- a/geninitrd-svn.patch
+++ b/geninitrd-svn.patch
@@ -1,846 +1,12 @@
-Index: mod-uvesafb.sh
-===================================================================
---- mod-uvesafb.sh (wersja 12531)
-+++ mod-uvesafb.sh (kopia robocza)
-@@ -40,7 +40,7 @@
- return
- fi
-
-- debug "initrd_gen_uvesafb"
-+ verbose "initrd_gen_uvesafb"
- mknod $DESTDIR/dev/mem c 1 1
- mknod $DESTDIR/dev/tty1 c 4 1
- inst_d /sbin
-Index: mod-scsi.sh
-===================================================================
---- mod-scsi.sh (wersja 12531)
-+++ mod-scsi.sh (kopia robocza)
-@@ -39,7 +39,7 @@
- local n
- for n in $PRESCSIMODS; do
- if [ "X$n" = "Xunknown" ]; then
-- debug "Finding SCSI modules using scsi_hostadapter"
-+ verbose "Finding SCSI modules using scsi_hostadapter"
- local mod scsimodules=$(modprobe_conf | awk '/scsi_hostadapter/ { print $3 }')
- for mod in $scsimodules; do
- # for now allow scsi modules to come from anywhere. There are some
-Index: mod-fbsplash.sh
-===================================================================
---- mod-fbsplash.sh (wersja 12531)
-+++ mod-fbsplash.sh (kopia robocza)
-@@ -42,7 +42,7 @@
- if ! is_yes "$FB_SPLASH"; then
- return
- fi
-- debug "Generating fbsplash"
-+ verbose "Generating fbsplash"
-
- if [ -r /etc/sysconfig/fbsplash ]; then
- . /etc/sysconfig/fbsplash
-@@ -64,7 +64,7 @@
- for res in $FB_SPLASH_RESOLUTIONS; do
- if [ -f "/etc/splash/$SPLASH_THEME/$res.cfg" ]; then
- $fbsplash_geninitramfs -c $DESTDIR -r $res $SPLASH_THEME && \
-- debug "Added $res $SPLASH_THEME theme to initramfs."
-+ verbose "Added $res $SPLASH_THEME theme to initramfs."
- else
- warn "/etc/splash/$SPLASH_THEME/$res.cfg doesn't exist, skipped"
- fi
-Index: mod-udev.sh
-===================================================================
---- mod-udev.sh (wersja 12531)
-+++ mod-udev.sh (kopia robocza)
-@@ -41,7 +41,7 @@
- # generate initrd fragment
- # @access public
- initrd_gen_udev() {
-- debug "Setting up udev..."
-+ verbose "Setting up udev..."
-
- inst_d /sbin /etc/udev
- inst_exec $udevd /sbin/udevd
-@@ -55,7 +55,9 @@
-
- local e
- for e in ata_id cdrom_id collect firmware scsi_id v4l_id; do
-- inst_exec $initrd_dir/udev/$e /lib/udev/$e
-+ if [ -e "$initrd_dir/udev/$e" ]; then
-+ inst_exec $initrd_dir/udev/$e /lib/udev/$e
-+ fi
- done
-
- # blkid installed by mod-blkid
-Index: mod-usbkbd.sh
-===================================================================
---- mod-usbkbd.sh (wersja 12531)
-+++ mod-usbkbd.sh (kopia robocza)
-@@ -4,7 +4,7 @@
- # geninitrd mod: usbkbd
-
- find_modules_usbkbd() {
-- debug "Finding USB keyboard modules"
-+ verbose "Finding USB keyboard modules"
-
- if [ "$(echo /sys/class/input/input*)" = "/sys/class/input/input*" ]; then
- return
-@@ -20,9 +20,9 @@
- if [ "$bInterfaceClass" = "03" -a "$bInterfaceProtocol" = "01" ]; then
- module=$(readlink $i/device/driver/module)
- module=$(basename $module)
--
-+
- if [ -n "$module" ]; then
-- debug "Found USB Keyboard: $(cat $i/name)"
-+ verbose "Found USB Keyboard: $(cat $i/name)"
- modules="$modules $module"
- fi
- fi
-@@ -34,7 +34,7 @@
- module=$(basename $module)
-
- if [ -n "$module" ]; then
-- debug "Found USB Logitech Unifying Device: $(cat $i/name)"
-+ verbose "Found USB Logitech Unifying Device: $(cat $i/name)"
- modules="$modules $module"
- fi
- fi
-Index: tests/partitions2
-===================================================================
---- tests/partitions2 (wersja 0)
-+++ tests/partitions2 (wersja 12560)
-@@ -0,0 +1,24 @@
-+
-+major minor #blocks name
-+
-+ 3 0 78150744 hda
-+ 3 1 216846 hda1
-+ 3 2 20482875 hda2
-+ 3 3 72292 hda3
-+ 3 4 1 hda4
-+ 3 5 136521 hda5
-+ 3 6 9775521 hda6
-+ 3 7 46941898 hda7
-+ 3 8 522081 hda8
-+ 3 64 78150744 hdb
-+ 3 65 128488 hdb1
-+ 3 66 64260 hdb2
-+ 3 67 10241437 hdb3
-+ 3 68 1 hdb4
-+ 3 69 5116671 hdb5
-+ 3 70 9775521 hdb6
-+ 3 71 9775521 hdb7
-+ 3 72 9775521 hdb8
-+ 3 73 33270583 hdb9
-+ 254 0 5107712 dm-0
-+ 9 6 9775360 md6
-Index: tests/initramfs_switchroot.sh
-===================================================================
---- tests/initramfs_switchroot.sh (wersja 12531)
-+++ tests/initramfs_switchroot.sh (kopia robocza)
-@@ -3,6 +3,7 @@
-
- . ./setup-test.sh
- proc=${proc:-/proc}
-+partitions=$proc/partitions
- flags=$-
-
- mount() {
-@@ -10,7 +11,7 @@
- }
-
- mknod() {
-- echo "mknod $@"
-+ : echo "mknod $@"
- }
-
- # parse 'root=xxx' kernel commandline
-@@ -21,25 +22,51 @@
-
- device=
- eval "$(
-- busybox awk -v c="$ROOT" '
-+ busybox awk -v root="$ROOT" '
-+ # http://9fans.net/archive/2006/09/261
-+ function h2d(str, hstr, res, num, n, digit, i) {
-+ hstr = "0123456789abdcef";
-+ res = 0;
-+ n = split(tolower(str), digit, "");
-+
-+ for (i = 1; i <= n; i++) {
-+ num = index(hstr, digit[i]) - 1;
-+ res = res + (num * 16 ^ (n - i));
-+ }
-+printf("# h2d(%s) -> [%s]\n", str, res);
-+
-+ return res;
-+ }
- BEGIN {
-- num_pattern_short = "[0-9a-f][0-9a-f][0-9a-f]";
-- num_pattern = "[0-9a-f]" num_pattern_short;
-+
-+ num_pattern_short = "[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]";
-+ num_pattern = "[0-9a-fA-F]" num_pattern_short;
- dev_pattern = "[hms][a-z][a-z]([0-9])+";
- partition = "";
- min = -1; maj = -1;
-
-- sub("^0x", "", c);
-- if (c ~ "^" num_pattern_short "$") sub("^", "0", c);
-- if (c ~ "^" num_pattern "$") {
-- maj = sprintf("%d",substr(c,1,2));
-- min = sprintf("%d",substr(c,3));
-+ # see if we have /dev/hdX or hdX, we can just take partition name
-+ if (root ~ "^\/dev\/" dev_pattern "$" || root ~ "^" dev_pattern "$") {
-+ partition = root
-+ sub("^/dev/", "", partition);
-+ printf("# partition regexp=%s;\n", partition);
-+
-+ } else {
-+ # unify values first
-+ if (root ~ "^" num_pattern_short "$") {
-+ # change "303" => "0x0303"
-+ root = "0x0" root
-+ } else if (root ~ "^" num_pattern "$") {
-+ # change "0303" => "0x0303"
-+ root = "0x" root
-+ }
-+
-+ maj = h2d(substr(root, 3, 2));
-+ min = h2d(substr(root, 5, 2));
-+printf("# BEGIN: root=[%s] maj=%s, min=%s\n", root, maj, min);
- }
-- if (c ~ "^\/dev\/" dev_pattern "$") sub("^/dev/","", c);
-- if (c ~ "^" dev_pattern "$") partition = c;
-- printf("# BEGIN: partition=%s; maj=%s, min=%s\n", partition, maj, min);
- }
-- { printf("# maj:[%s], min:[%s], part:[%s]\n", $1, $2, $4) }
-+{ printf("# maj:[%s], min:[%s], part:[%s]\n", $1, $2, $4) }
-
- partition && $4 == partition { maj = $1; min = $2; printf("# found partition: %s\n", partition) }
- $1 == maj && $2 == min { partition = $4; printf("# found maj and min: %s, %s\n", maj, min)}
-@@ -52,7 +79,7 @@
- printf("device=/dev/%s;\n", partition);
- }
- }
-- ' $proc/partitions
-+ ' $partitions
- )"
-
- if [ -z "$device" ]; then
-@@ -74,7 +101,7 @@
- # echo "init=$init"
- }
-
--proc=.
-+partitions=./partitions
- ROOTFS=xfs
-
- # We support passing root as hda3 /dev/hda3 0303 0x0303 and 303
-@@ -102,3 +129,22 @@
- runtest <<'EOF'
- mount -t xfs -r /dev/sda3 /newroot
- EOF
-+
-+ROOT=805
-+runtest <<'EOF'
-+mount -t xfs -r /dev/sda5 /newroot
-+EOF
-+
-+# lilo for dm-0
-+partitions=./partitions2
-+ROOT=fe00
-+runtest <<'EOF'
-+mount -t xfs -r /dev/dm-0 /newroot
-+EOF
-+
-+# lilo for dm-0
-+partitions=./partitions2
-+ROOT=FE00
-+runtest <<'EOF'
-+mount -t xfs -r /dev/dm-0 /newroot
-+EOF
-Index: tests/partitions
-===================================================================
---- tests/partitions (wersja 12531)
-+++ tests/partitions (kopia robocza)
-@@ -4,6 +4,7 @@
- 8 1 40131 sda1
- 8 2 8008402 sda2
- 8 3 480335467 sda3
-+ 8 5 384475581 sda5
- 8 16 488386584 sdb
- 8 17 40131 sdb1
- 8 18 8008402 sdb2
-Index: mod-luks.sh
-===================================================================
---- mod-luks.sh (wersja 12531)
-+++ mod-luks.sh (kopia robocza)
-@@ -34,7 +34,7 @@
-
- local dev dm_name=${node#/dev/mapper/}
- if [ "$node" = "$dm_name" ]; then
-- debug "is_luks: $node is not device mapper name"
-+ verbose "is_luks: $node is not device mapper name"
- return 1
- fi
-
-@@ -47,9 +47,9 @@
- fi
-
- if [ $rc = 0 ]; then
-- debug "is_luks: $node is cryptsetup luks"
-+ verbose "is_luks: $node is cryptsetup luks"
- else
-- debug "is_luks: $node is not cryptsetup luks"
-+ verbose "is_luks: $node is not cryptsetup luks"
- fi
- return $rc
- }
-@@ -95,7 +95,7 @@
- initrd_gen_devices
- # TODO: 'udevadm settle' is called by lukssetup, is udev optional?
-
-- debug "luks: process /etc/crypttab $LUKSNAME"
-+ verbose "luks: process /etc/crypttab $LUKSNAME"
- luks_crypttab $LUKSNAME
- }
-
-@@ -144,7 +144,7 @@
- inst $key $keyfile
- fi
-
-- debug "+ cryptsetup ${keyfile:+-d $keyfile} luksOpen '$src' '$dst'"
-+ verbose "+ cryptsetup ${keyfile:+-d $keyfile} luksOpen '$src' '$dst'"
- add_linuxrc <<-EOF
- # cryptsetup can be called twice and in case on crypt on lvm only second
- # will succeed because there will be no src device in first cryptsetup call
-Index: mod-bootsplash.sh
-===================================================================
---- mod-bootsplash.sh (wersja 12531)
-+++ mod-bootsplash.sh (kopia robocza)
-@@ -28,7 +28,7 @@
- fi
- local target="$1"
-
-- debug "Generating bootsplash"
-+ verbose "Generating bootsplash"
-
- if [ ! -x /bin/splash.bin ]; then
- warn "Failed to execute /bin/splash.bin. Is bootsplash package installed?"
-@@ -54,7 +54,7 @@
- for res in $BOOT_SPLASH_RESOLUTIONS; do
- if [ -f "/etc/bootsplash/themes/$THEME/config/bootsplash-$res.cfg" ]; then
- $bootsplash_geninitramfs -s -f "/etc/bootsplash/themes/$THEME/config/bootsplash-$res.cfg" >> "$target" && \
-- debug "Added $res $THEME theme to initrd."
-+ verbose "Added $res $THEME theme to initrd."
- else
- warn "/etc/bootsplash/themes/$THEME/config/bootsplash-$res.cfg doesn't exist, skipped"
- fi
-Index: mod-suspend.sh
-===================================================================
---- mod-suspend.sh (wersja 12531)
-+++ mod-suspend.sh (kopia robocza)
-@@ -36,7 +36,7 @@
- # save suspend VG int oseparate var
- LVM_SUSPENDVG=$LVM_VGVOLUMES
- LVM_VGVOLUMES=$vgvolumes
-- debug "suspend device is on LVM"
-+ verbose "suspend device is on LVM"
- fi
- }
-
-@@ -47,7 +47,7 @@
- return
- fi
-
-- debug "Setting up suspend..."
-+ verbose "Setting up suspend..."
-
- mknod $DESTDIR/dev/snapshot c 10 231
- mkdir -p $DESTDIR${resume_dev%/*}
-Index: mod-blkid.sh
-===================================================================
---- mod-blkid.sh (wersja 12531)
-+++ mod-blkid.sh (kopia robocza)
-@@ -22,7 +22,7 @@
- if ! is_yes "$USE_BLKID"; then
- return
- fi
-- debug "Adding BLKID support to initrd"
-+ verbose "Adding BLKID support to initrd"
-
- inst_exec $blkid /bin/blkid
- initrd_gen_devices
-Index: mod-nfs.sh
-===================================================================
---- mod-nfs.sh (wersja 12531)
-+++ mod-nfs.sh (kopia robocza)
-@@ -56,7 +56,7 @@
-
- # use root=/dev/ram0 init=/linuxrc when starting kernel or you will
- # have problems like init(XX) being child process of swapper(1).
-- debug "Adding rootfs on NFS support to initrd (dhcp)"
-+ verbose "Adding rootfs on NFS support to initrd (dhcp)"
- mknod "$DESTDIR/dev/urandom" c 1 9
- mkdir "$DESTDIR/newroot"
- add_linuxrc <<-'EOF'
-Index: mod-condecor.sh
-===================================================================
---- mod-condecor.sh (wersja 12531)
-+++ mod-condecor.sh (kopia robocza)
-@@ -26,7 +26,7 @@
- if ! is_yes "$FB_CON_DECOR"; then
- return
- fi
-- debug "Generating fbcondecor"
-+ verbose "Generating fbcondecor"
-
- if [ -r /etc/sysconfig/splash ]; then
- . /etc/sysconfig/splash
-@@ -48,7 +48,7 @@
- for res in $FB_SPLASH_RESOLUTIONS; do
- if [ -f "/etc/splash/$SPLASH_THEME/$res.cfg" ]; then
- $condecor_geninitramfs -c $DESTDIR -r $res $SPLASH_THEME && \
-- debug "Added $res $SPLASH_THEME theme to initramfs."
-+ verbose "Added $res $SPLASH_THEME theme to initramfs."
- else
- warn "/etc/splash/$SPLASH_THEME/$res.cfg doesn't exist, skipped"
- fi
Index: geninitrd
===================================================================
---- geninitrd (wersja 12531)
-+++ geninitrd (kopia robocza)
-@@ -79,8 +79,12 @@
- msg "WARNING: $*" >&2
- }
-
-+verbose() {
-+ [ x"$verbose" = x"-v" ] && msg "$*" >&3
-+}
-+
- debug() {
-- [ -n "$verbose" ] && msg "$*" >&2
-+ [ x"$verbose" = x"-v -v" ] && msg "$*" >&3
- }
-
- # aborts program abnormally
-@@ -96,7 +100,7 @@
- for x in "$@"; do
- if [ -x "$x" ]; then
- echo $x
-- debug "find_tool: found $x"
-+ verbose "find_tool: found $x"
- return 0
- fi
- done
-@@ -402,8 +406,11 @@
- local dest=$1
- set -- $src
- local parentDir=$(dirname $DESTDIR$dest)
-- [ ! -d "$parentDir" ] && (debug "+ mkdir -p $parentDir"; mkdir -p $parentDir)
-- debug "+ cp $* $DESTDIR$dest"
-+ if [ ! -d "$parentDir" ]; then
-+ verbose "+ mkdir -p $parentDir"
-+ mkdir -p $parentDir
-+ fi
-+ verbose "+ cp $* $DESTDIR$dest"
- cp -HR "$@" "$DESTDIR$dest"
- }
-
-@@ -457,7 +464,7 @@
- if [ ! -e $DESTDIR$libdir ]; then
- libdir=$(dirname "$libdir")
- inst_d $libdir
-- debug "+ ln -s /$_lib $DESTDIR$libdir"
-+ verbose "+ ln -s /$_lib $DESTDIR$libdir"
- ln -s /$_lib $DESTDIR$libdir
- fi
- fi
-@@ -515,7 +522,7 @@
- devpath=$(readlink -f "$devpath")
- fi
-
-- debug "Finding modules for device path $devpath"
-+ verbose "Finding modules for device path $devpath"
-
- if is_luks "$devpath"; then
- find_modules_luks "$devpath"
-@@ -631,7 +638,7 @@
- local module="$1"
- local firmware_files="$2"
-
-- debug "Adding Firmwares ($firmware_files) to initrd for module $module"
-+ verbose "Adding Firmwares ($firmware_files) to initrd for module $module"
- # firmware not yet installed
- if [ ! -f "$DESTDIR/lib/firmware/firmware.sh" ]; then
- inst_d /lib/firmware
-@@ -698,7 +705,7 @@
- options="scan=sync $options"
- fi
-
-- if [ -n "$verbose" ]; then
-+ if [ x"$verbose" = x"-v" ]; then
- s=""
- if [ "$options" ]; then
- s="$s with options [$options]"
-@@ -706,7 +713,7 @@
- if [ "$usleep" ]; then
- s="$s and $usleep usleep"
- fi
-- debug "Loading module [$module]$s"
-+ verbose "Loading module [$module]$s"
- fi
-
- if [ -n "$firmware" ]; then
-@@ -757,8 +764,9 @@
-
-
- initrd_gen_setrootdev() {
-- debug "Adding rootfs finding based on kernel cmdline root= option support."
-+ verbose "Adding rootfs finding based on kernel cmdline root= option support."
- busybox_applet ls
-+ debug "Current /proc/partitions:\n$(sed -e 's,^,> ,' /proc/partitions)"
- add_linuxrc <<-'EOF'
- if [ "${ROOT##/dev/}" != "${ROOT}" ]; then
- rootnr="$(busybox awk -v rootnode="${ROOT##/dev/}" '$4 == rootnode { print 256 * $1 + $2 }' /proc/partitions)"
-@@ -783,24 +791,58 @@
-
- # parse 'root=xxx' kernel commandline
- # We support passing root as hda3 /dev/hda3 0303 0x0303 and 303
-+
-+ # from lilo-23.2/readme/README:
-+ # root=<device> changes the root device. This overrides settings that may
-+ # have been made in the boot image and on the LILO command line. <device> is
-+ # either the hexadecimal device number or the full path name of the device,
-+ # e.g. /dev/hda3 [*]
-+ #
-+ # * The device names are hard-coded in the kernel. Therefore, only the
-+ # "standard" names are supported and some less common devices may not be
-+ # recognized. In those cases, only numbers can be used.
- add_linuxrc <<-'EOF'
- device=
-- eval "$(busybox awk -v c="$ROOT" '
-+ eval "$(busybox awk -v root="$ROOT" '
-+ # http://9fans.net/archive/2006/09/261
-+ function h2d(str, hstr, res, num, n, digit, i) {
-+ hstr = "0123456789abdcef";
-+ res = 0;
-+ n = split(tolower(str), digit, "");
-+
-+ for (i = 1; i <= n; i++) {
-+ num = index(hstr, digit[i]) - 1;
-+ res = res + (num * 16 ^ (n - i));
-+ }
-+
-+ return res;
-+ }
- BEGIN {
-- num_pattern_short = "[0-9a-f][0-9a-f][0-9a-f]";
-- num_pattern = "[0-9a-f]" num_pattern_short;
-+
-+ num_pattern_short = "[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]";
-+ num_pattern = "[0-9a-fA-F]" num_pattern_short;
- dev_pattern = "[hms][a-z][a-z]([0-9])+";
- partition = "";
- min = -1; maj = -1;
-
-- sub("^0x", "", c);
-- if (c ~ "^" num_pattern_short "$") sub("^", "0", c);
-- if (c ~ "^" num_pattern "$") {
-- maj = sprintf("%d",substr(c,1,2));
-- min = sprintf("%d",substr(c,3));
-+ # see if we have /dev/hdX or hdX, we can just take partition name
-+ if (root ~ "^\/dev\/" dev_pattern "$" || root ~ "^" dev_pattern "$") {
-+ partition = root
-+ sub("^/dev/", "", partition);
-+
-+ } else {
-+ # unify values first
-+ if (root ~ "^" num_pattern_short "$") {
-+ # change "303" => "0x0303"
-+ root = "0x0" root
-+ } else if (root ~ "^" num_pattern "$") {
-+ # change "0303" => "0x0303"
-+ root = "0x" root
-+ }
-+
-+ maj = h2d(substr(root, 3, 2));
-+ min = h2d(substr(root, 5, 2));
- }
-- if (c ~ "^\/dev\/" dev_pattern "$") sub("^/dev/","", c);
-- if (c ~ "^" dev_pattern "$") partition = c;
- }
-
- partition && $4 == partition { maj = $1; min = $2; }
-@@ -877,7 +919,7 @@
- compressors="$mode"
- fi
-
-- debug "finding compressor: $compressors (via $mode)"
-+ verbose "finding compressor: $compressors (via $mode)"
- # check for compressor validity
- local c prog map=/boot/System.map-$kernel
- for c in $compressors; do
-@@ -917,7 +959,7 @@
- fi
- done
-
-- debug "using gzip for compressor (fallback)"
-+ verbose "using gzip for compressor (fallback)"
- echo gzip
- }
-
-@@ -1051,7 +1093,12 @@
- exit 0
- ;;
- -v)
-- verbose=-v
-+ if [ x"$verbose" = x"-v" ]; then
-+ verbose="-v -v"
-+ else
-+ verbose="-v"
-+ fi
-+ exec 3>&1
- ;;
- --compress)
- COMPRESS=$2
-@@ -1136,7 +1183,7 @@
- kernel_version=$(echo "$kernel" | awk -F. '{gsub(/[_-].*/, "", $0); print sprintf("%03d%03d",$1,$2)}')
- kernel_version_long=$(echo "$kernel" | awk -F. '{gsub(/[_-].*/, "", $0); print sprintf("%03d%03d%03d",$1,$2,$3)}')
-
--debug "# $GENINITRD_RCSID (geninitrd)"
-+verbose "# $GENINITRD_RCSID (geninitrd)"
- debug "Using _lib: $_lib"
- debug "Using initrd_dir: $initrd_dir"
-
-@@ -1234,7 +1281,7 @@
+--- geninitrd (revision 12585)
++++ geninitrd (revision 12586)
+@@ -1445,6 +1445,7 @@
+ else
+ initrd_gen_md
+ initrd_gen_lvm
++ initrd_gen_blkid
+ initrd_gen_luks
+ initrd_gen_setrootdev
fi
-
- find_root "$fstab" || exit
--debug "Using $rootdev as device for rootfs"
-+verbose "Using $rootdev as device for rootfs"
-
- find_modules_for_devpath "$rootdev"
-
-@@ -1257,11 +1304,11 @@
- find_modules_fbsplash
-
- if [ -n "$ifneeded" -a -z "$MODULES" ]; then
-- debug "No modules are needed -- not building initrd image."
-+ verbose "No modules are needed -- not building initrd image."
- exit 0
- fi
-
--debug "Building initrd..."
-+verbose "Building initrd..."
- DESTDIR=$(mktemp -d -t initrd.XXXXXX) || die "mktemp failed"
- RCFILE="$DESTDIR/linuxrc"
- > "$RCFILE"
-@@ -1432,12 +1479,14 @@
- initrd_gen_fbsplash
- initrd_gen_fbcondecor
-
-+debug "Current /linuxrc:\n$(sed -e 's,^,> ,' $DESTDIR/linuxrc)"
-+
- IMAGE=$(mktemp -t initrd.img-XXXXXX) || die "mktemp failed"
-
- IMAGESIZE=$(du -ks $DESTDIR | awk '{print int(($1+1023+512)/1024)*1024}')
--debug "image size: $IMAGESIZE KiB ($DESTDIR)"
-+verbose "image size: $IMAGESIZE KiB ($DESTDIR)"
-
--debug "Creating $INITRDFS image $IMAGE"
-+verbose "Creating $INITRDFS image $IMAGE"
- case "$INITRDFS" in
- ext2)
- dd if=/dev/zero of="$IMAGE" bs=1k count="$IMAGESIZE" 2> /dev/null
-@@ -1482,7 +1531,7 @@
-
- if ! is_no "$COMPRESS"; then
- compressor=$(find_compressor "$COMPRESS")
-- debug "Compressing $target with $compressor"
-+ verbose "Compressing $target with $compressor"
-
- # TODO: the image name (specified from kernel.spec) already contains
- # extension, which is .gz most of the time.
-Index: mod-lvm.sh
-===================================================================
---- mod-lvm.sh (wersja 12531)
-+++ mod-lvm.sh (kopia robocza)
-@@ -83,14 +83,14 @@
- find_modules_lvm() {
- local devpath="$1"
-
-- debug "LVM: $devpath is LVM node"
-+ verbose "LVM: $devpath is LVM node"
-
- local vg=$(find_lvm_vg "$devpath")
-- debug "LVM VG for $devpath: $vg"
-+ verbose "LVM VG for $devpath: $vg"
- LVM_VGVOLUMES=$(echo $LVM_VGVOLUMES $vg | tr ' ' '\n' | sort -u)
-
- local pv=$(find_lvm_pv "$vg")
-- debug "LVM PV for $vg: $pv"
-+ verbose "LVM PV for $vg: $pv"
- PVDEVICES=$(echo $PVDEVICES $pv | tr ' ' '\n' | sort -u)
-
- if [ -n "$PVDEVICES" ]; then
-@@ -110,7 +110,7 @@
- die "LVM version $LVMTOOLSVERSION is not supported."
- fi
-
-- debug "LVM v$LVMTOOLSVERSION enabled"
-+ verbose "LVM v$LVMTOOLSVERSION enabled"
- have_lvm=yes
- }
-
-@@ -122,7 +122,7 @@
- return
- fi
-
-- debug "Adding LVM support to initrd"
-+ verbose "Adding LVM support to initrd"
- inst_d /tmp /newroot
- inst_exec $lvm /bin/lvm.static
-
-@@ -170,7 +170,7 @@
- echo ' filter = [' >> "$DESTDIR/etc/lvm.conf"
- local dev
- for dev in $lvm_ignore_devices; do
-- debug "LVM v2: ignore device $dev"
-+ verbose "LVM v2: ignore device $dev"
- printf ' "r|^%s.*|",\n' $dev
- done >> "$DESTDIR/etc/lvm.conf"
- echo ']' >> "$DESTDIR/etc/lvm.conf"
-Index: mod-md.sh
-===================================================================
---- mod-md.sh (wersja 12531)
-+++ mod-md.sh (kopia robocza)
-@@ -46,7 +46,7 @@
- local found raidlevel
-
- if [ -f /etc/mdadm.conf ]; then
-- debug "Finding RAID details using mdadm for rootdev=$1"
-+ verbose "Finding RAID details using mdadm for rootdev=$1"
- eval `($mdadm -v --examine --scan --config=/etc/mdadm.conf 2> /dev/null;$mdadm -v --detail --scan --config=/etc/mdadm.conf 2> /dev/null) | awk -v rootdev="$1" '
- BEGIN {
- found = "no";
-@@ -119,7 +119,7 @@
- die "RAID devices not found for \"$1\", check your configuration!"
- fi
-
-- debug "md: found rootdev=$1 on device $rootdev_new with devices list ${dev_list}"
-+ verbose "md: found rootdev=$1 on device $rootdev_new with devices list ${dev_list}"
-
- rootdev_nr=$(( $rootdev_nr + 1 ))
- eval "rootdev${rootdev_nr}=\"$rootdev_new\""
-@@ -137,7 +137,7 @@
- if ! is_yes "$have_md"; then
- return
- fi
-- debug "Setting up mdadm..."
-+ verbose "Setting up mdadm..."
-
- inst_exec $mdassemble /bin/mdassemble
-
-@@ -161,7 +161,7 @@
- for nr in `seq 1 $rootdev_nr`; do
- eval cr_rootdev="\$rootdev${nr}"
- eval cr_dev_list="\$dev_list${nr}"
-- debug echo "Setting up array ($cr_rootdev = $cr_dev_list)"
-+ verbose "Setting up array ($cr_rootdev = $cr_dev_list)"
-
- [ "$cr_rootdev" = "/dev/md0" ] && do_md0=0
-
-Index: mod-ide.sh
-===================================================================
---- mod-ide.sh (wersja 12531)
-+++ mod-ide.sh (kopia robocza)
-@@ -42,7 +42,7 @@
-
- local n
- if [ "$kernel_version_long" -lt "002004021" ]; then
-- debug "Finding IDE modules for kernels <= 2.4.20"
-+ verbose "Finding IDE modules for kernels <= 2.4.20"
- for n in $PREIDEMODSOLD; do
- find_module "$n"
- done
-@@ -50,7 +50,7 @@
- local tryauto=1
- for n in $PREIDEMODS; do
- if [ "X$n" = "Xunknown" ]; then
-- debug "Finding IDE modules using ide_hostadapter"
-+ verbose "Finding IDE modules using ide_hostadapter"
- local mod idemodules=$(modprobe_conf | awk '/ide_hostadapter/ { print $3 }')
- for mod in $idemodules; do
- tryauto=0
-@@ -60,7 +60,7 @@
- if [ "$tryauto" -eq 1 ]; then
- # If tryauto {{{
- if [ -r /usr/share/pci-database/ide.pci -a -r /proc/bus/pci/devices ]; then
-- debug "Finding IDE modules using PCI ID database"
-+ verbose "Finding IDE modules using PCI ID database"
- # Finding IDE modules using PCI ID database {{{
- if is_yes "${ide_only_root}"; then
- if [ -f /sys/block/${rootblkdev}/device/../../vendor -a -f /sys/block/${rootblkdev}/device/../../device ]; then
-Index: mod-multipath.sh
-===================================================================
---- mod-multipath.sh (wersja 12531)
-+++ mod-multipath.sh (kopia robocza)
-@@ -78,7 +78,7 @@
- return 1
- fi
-
-- debug "Finding modules for dm-multipath (WWID=$MPATH_WWID)"
-+ verbose "Finding modules for dm-multipath (WWID=$MPATH_WWID)"
- have_multipath=yes
-
- local p list
-Index: TODO
-===================================================================
---- TODO (wersja 12531)
-+++ TODO (kopia robocza)
-@@ -21,3 +21,8 @@
-
- - make extract-ikconfig() able to read config from vmlinuz (in case of CONFIG_IKCONFIG=y instead of =m)
- - make lvm2 not to complain about fds, use LVM_SUPPRESS_FD_WARNINGS=1
-+
-+- mount --move /dev to /newroot/dev when /dev is devtmpfs
-+this would fix cases /newroot/dev being mounted readonly and /dev/ not containing console node.
-+
-+need to think how _not_ to do that in case of /newroot os containing static /dev
-Index: functions
-===================================================================
---- functions (wersja 12531)
-+++ functions (kopia robocza)
-@@ -157,8 +157,16 @@
- # node can be /dev/dm-0, /dev/mapper/name
- # @return subsystem name
- dm_subsystem() {
-- local node="$1"
-- dmsetup info -c --noheadings -o subsystem $node
-+ local node="$1" out
-+ out=$(dmsetup info -c --noheadings -o subsystem $node)
-+ if [ $? -eq 0 -a -n "$out" ]; then
-+ echo "$out"
-+ return
-+ fi
-+
-+ # for very old kernels (2.6.16), subsystem is empty, assume LVM
-+ # TODO: fix this if needed to have crypt as well
-+ echo "LVM"
- }
-
- # resolve any dm node to it's full path in /dev/mapper
-Index: mod-sata.sh
-===================================================================
---- mod-sata.sh (wersja 12531)
-+++ mod-sata.sh (kopia robocza)
-@@ -4,7 +4,7 @@
- # geninitrd mod: sata
-
- find_modules_sata() {
-- debug "Finding SATA modules (class=0x0106)"
-+ verbose "Finding SATA modules (class=0x0106)"
-
- # Classes (we want only 0106)
- # http://pci-ids.ucw.cz/read/PD/01
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/geninitrd.git/commitdiff/cd4499946812c36d5fc65482981b92ba22f48f3a
More information about the pld-cvs-commit
mailing list