From 73575f11a9255704643b47ad0494cd2aabdce04c Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Sat, 30 Jun 2012 11:34:13 +0200 Subject: [PATCH] dracut-functions.sh,dracut.sh: use xargs with "-r" --- dracut-functions.sh | 17 ++++++++--------- dracut.sh | 2 +- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/dracut-functions.sh b/dracut-functions.sh index cd9426e..80b022f 100755 --- a/dracut-functions.sh +++ b/dracut-functions.sh @@ -1197,7 +1197,7 @@ dracut_kernel_post() { local _moddirname=${srcmods%%/lib/modules/*} if [[ $DRACUT_KERNEL_LAZY_HASHDIR ]] && [[ -f "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist" ]]; then - xargs modprobe -a ${_moddirname+-d ${_moddirname}/} --ignore-install --show-depends \ + xargs -r modprobe -a ${_moddirname+-d ${_moddirname}/} --ignore-install --show-depends \ < "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist" 2>/dev/null \ | sort -u \ | while read _cmd _modpath _options; do @@ -1206,8 +1206,8 @@ dracut_kernel_post() { done > "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist.dep" ( - if [[ -x $DRACUT_INSTALL ]] && [[ -z $_moddirname ]]; then - xargs $DRACUT_INSTALL ${initdir+-D "$initdir"} -a < "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist.dep" + if [[ $DRACUT_INSTALL ]] && [[ -z $_moddirname ]]; then + xargs -r $DRACUT_INSTALL ${initdir+-D "$initdir"} -a < "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist.dep" else while read _modpath; do local _destpath=$_modpath @@ -1218,16 +1218,15 @@ dracut_kernel_post() { fi ) & - - if [[ -x $DRACUT_INSTALL ]]; then - xargs modinfo -k $kernel -F firmware < "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist.dep" \ + if [[ $DRACUT_INSTALL ]]; then + xargs -r modinfo -k $kernel -F firmware < "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist.dep" \ | while read line; do for _fwdir in $fw_dir; do echo $_fwdir/$line; done; - done |xargs $DRACUT_INSTALL ${initdir+-D "$initdir"} -a -o + done | xargs -r $DRACUT_INSTALL ${initdir+-D "$initdir"} -a -o else - for _fw in $(xargs modinfo -k $kernel -F firmware < "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist.dep"); do + for _fw in $(xargs -r modinfo -k $kernel -F firmware < "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist.dep"); do for _fwdir in $fw_dir; do if [[ -d $_fwdir && -f $_fwdir/$_fw ]]; then inst_simple "$_fwdir/$_fw" "/lib/firmware/$_fw" @@ -1273,7 +1272,7 @@ find_kernel_modules_by_path () ( IFS=$_OLDIFS else ( cd /sys/module; echo *; ) \ - | xargs modinfo -F filename -k $kernel 2>/dev/null + | xargs -r modinfo -F filename -k $kernel 2>/dev/null fi return 0 ) diff --git a/dracut.sh b/dracut.sh index c4562e6..7ca3e8d 100755 --- a/dracut.sh +++ b/dracut.sh @@ -879,7 +879,7 @@ if [[ $do_strip = yes ]] ; then find "$initdir" -type f \ '(' -perm -0100 -or -perm -0010 -or -perm -0001 \ -or -path '*/lib/modules/*.ko' ')' -print0 \ - | xargs -0 strip -g 2>/dev/null + | xargs -r -0 strip -g 2>/dev/null dinfo "*** Stripping files done ***" fi