
Hello community, here is the log from the commit of package mkinitrd checked in at Tue Jul 31 16:12:13 CEST 2007. -------- --- mkinitrd/mkinitrd.changes 2007-07-30 16:07:42.000000000 +0200 +++ /mounts/work_src_done/STABLE/mkinitrd/mkinitrd.changes 2007-07-31 16:06:37.000000000 +0200 @@ -1,0 +2,6 @@ +Tue Jul 31 15:43:53 CEST 2007 - agraf@suse.de + +- Fix dm resolviung to only be recursive in dm module (#295997) +- Include fast boot option (for less overhead with preping) + +------------------------------------------------------------------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mkinitrd.spec ++++++ --- /var/tmp/diff_new_pack.XF2539/_old 2007-07-31 16:11:53.000000000 +0200 +++ /var/tmp/diff_new_pack.XF2539/_new 2007-07-31 16:11:53.000000000 +0200 @@ -18,7 +18,7 @@ Requires: coreutils modutils util-linux grep gzip sed gawk cpio udev pciutils sysvinit file perl Autoreqprov: on Version: 2.1 -Release: 9 +Release: 11 Summary: Creates an Initial RAM Disk Image for Preloading Modules BuildRoot: %{_tmppath}/%{name}-%{version}-build Source0: mkinitrd.tgz @@ -101,6 +101,9 @@ %doc %{_mandir}/man8/mkinitrd.8.gz %changelog +* Tue Jul 31 2007 - agraf@suse.de +- Fix dm resolviung to only be recursive in dm module (#295997) +- Include fast boot option (for less overhead with preping) * Mon Jul 30 2007 - agraf@suse.de - Fixed booting on dmraid w/o kpartx (recursive resolution of dm devices) ++++++ mkinitrd.tgz ++++++ diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/mkinitrd-2.1/lib/mkinitrd/bin/linuxrc new/mkinitrd-2.1/lib/mkinitrd/bin/linuxrc --- old/mkinitrd-2.1/lib/mkinitrd/bin/linuxrc 2007-07-30 16:05:55.000000000 +0200 +++ new/mkinitrd-2.1/lib/mkinitrd/bin/linuxrc 2007-07-31 16:06:25.000000000 +0200 @@ -46,7 +46,11 @@ echo $(eval echo \${cmd_${1/-/_}}) 2>/dev/null } -for file in boot/*; do +if [ "$fast_boot" ]; then + echo "doing fast boot" + source run_all.sh +else + for file in boot/*; do echo "preping $file" # load config for the current module config="config/${file#*-}" @@ -70,4 +74,5 @@ # if the module did not load its modules, we do [ "$modules" ] && load_modules -done + done +fi diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/mkinitrd-2.1/mkinitrd.changes new/mkinitrd-2.1/mkinitrd.changes --- old/mkinitrd-2.1/mkinitrd.changes 2007-07-30 16:05:55.000000000 +0200 +++ new/mkinitrd-2.1/mkinitrd.changes 2007-07-31 16:06:25.000000000 +0200 @@ -1,4 +1,10 @@ ------------------------------------------------------------------- +Tue Jul 31 15:43:53 CEST 2007 - agraf@suse.de + +- Fix dm resolviung to only be recursive in dm module (#295997) +- Include fast boot option (for less overhead with preping) + +------------------------------------------------------------------- Mon Jul 30 16:01:55 CEST 2007 - agraf@suse.de - Fixed booting on dmraid w/o kpartx (recursive resolution of dm devices) diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/mkinitrd-2.1/scripts/setup-dm.sh new/mkinitrd-2.1/scripts/setup-dm.sh --- old/mkinitrd-2.1/scripts/setup-dm.sh 2007-07-30 16:05:55.000000000 +0200 +++ new/mkinitrd-2.1/scripts/setup-dm.sh 2007-07-31 16:06:25.000000000 +0200 @@ -11,7 +11,7 @@ # if any device before was on dm we have to activate it [ "$tmp_root_dm" ] && root_dm=1 - blockdev="$(dm_resolvedeps $blockdev)" + blockdev="$(dm_resolvedeps_recursive $blockdev)" [ "$?" = 0 ] && root_dm=1 # include modules diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/mkinitrd-2.1/scripts/setup-progs.sh new/mkinitrd-2.1/scripts/setup-progs.sh --- old/mkinitrd-2.1/scripts/setup-progs.sh 2007-07-30 16:05:55.000000000 +0200 +++ new/mkinitrd-2.1/scripts/setup-progs.sh 2007-07-31 16:06:25.000000000 +0200 @@ -7,14 +7,22 @@ for script in $INITRD_PATH/boot/*.sh; do if use_script "$script"; then # only include the programs if the script gets used # add the script to the feature list if no #%dontshow line was given - feature="${script##*/}" - feature="${feature#*-}" + file="${script##*/}" + feature="${file#*-}" feature="${feature%.sh}" if [ ! "$(cat $script | grep '%dontshow')" ]; then features="$features $feature" fi # copy the script itself cp -pL "$script" boot/ + # add an entry to the boot wrapping script + echo "echo preping $file" >> run_all.sh + condition="$(sed -n 's/^#%if:\(.*\)$/if [ \1 ]; then/p' "$script")" + echo "$condition" >> run_all.sh + sed -n 's/^#%modules:\(.*\)$/modules="\1"/p' $script >> run_all.sh + echo "echo running $file +source boot/$file" >> run_all.sh + [ "$condition" ] && echo "fi" >> run_all.sh # and all programs it needs for files in $(cat $script | grep '%programs: ' | sed 's/^#%programs: \(.*\)$/\1/'); do for file in $(eval echo $files); do diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/mkinitrd-2.1/scripts/setup-storage.sh new/mkinitrd-2.1/scripts/setup-storage.sh --- old/mkinitrd-2.1/scripts/setup-storage.sh 2007-07-30 16:05:55.000000000 +0200 +++ new/mkinitrd-2.1/scripts/setup-storage.sh 2007-07-31 16:06:25.000000000 +0200 @@ -108,6 +108,30 @@ dm_deps=${dm_deps//(/} dm_deps=${dm_deps//)/} for dm_dep in $dm_deps; do + majorminor2blockdev $dm_dep + done + else + echo -n "$bd " + fi + done + return 0 +} + +dm_resolvedeps_recursive() { + local dm_uuid dm_deps dm_dep bd + local bds="$@" + [ ! "$bds" ] && bds=$blockdev + # resolve dependencies + for bd in $bds ; do + update_blockdev $bd >&2 + if [ "$blockdriver" = device-mapper ]; then + root_dm=1 + dm_deps=$(dmsetup deps -j $blockmajor -m $blockminor) + dm_deps=${dm_deps#*: } + dm_deps=${dm_deps//, /:} + dm_deps=${dm_deps//(/} + dm_deps=${dm_deps//)/} + for dm_dep in $dm_deps; do dm_resolvedeps $(majorminor2blockdev $dm_dep) done else ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@Hilbert.suse.de