c4a5a08163
- moved /usr/bin/dracut-install to /usr/lib - more speedups
78 lines
3.3 KiB
Diff
78 lines
3.3 KiB
Diff
From 73575f11a9255704643b47ad0494cd2aabdce04c Mon Sep 17 00:00:00 2001
|
|
From: Harald Hoyer <harald@redhat.com>
|
|
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
|
|
|