summaryrefslogtreecommitdiffstats
path: root/mod-blacklist.sh
diff options
context:
space:
mode:
authorJustin M. Forbes <jforbes@fedoraproject.org>2020-12-14 09:02:23 -0600
committerJustin M. Forbes <jforbes@fedoraproject.org>2020-12-14 09:02:23 -0600
commit952ed53b8dc02307ae140982548522d049e0bca5 (patch)
treedce1f55251f5deb95f6f4a53be4d5e3f11c36a9a /mod-blacklist.sh
parent39cafd66089878f3d0d997260f1d0b1ede356e0d (diff)
downloadkernel-952ed53b8dc02307ae140982548522d049e0bca5.tar.gz
kernel-952ed53b8dc02307ae140982548522d049e0bca5.tar.xz
kernel-952ed53b8dc02307ae140982548522d049e0bca5.zip
kernel-5.10.0-98
* Mon Dec 14 2020 Justin M. Forbes <jforbes@fedoraproject.org> [5.10.0-98] - Add missing '$' sign to (GIT) in redhat/Makefile (Augusto Caringi) Resolves: rhbz# Signed-off-by: Justin M. Forbes <jforbes@fedoraproject.org>
Diffstat (limited to 'mod-blacklist.sh')
-rwxr-xr-xmod-blacklist.sh76
1 files changed, 36 insertions, 40 deletions
diff --git a/mod-blacklist.sh b/mod-blacklist.sh
index e8797659e..f2f801b5e 100755
--- a/mod-blacklist.sh
+++ b/mod-blacklist.sh
@@ -1,5 +1,4 @@
#! /bin/bash
-# shellcheck disable=SC2164
RpmDir=$1
ModDir=$2
@@ -25,9 +24,9 @@ __EOF__
check_blacklist()
{
- mod=$(find "$RpmDir/$ModDir" -name "$1")
+ mod=$(find $RpmDir/$ModDir -name "$1")
[ ! "$mod" ] && return 0
- if modinfo "$mod" | grep -q '^alias:\s\+net-'; then
+ if modinfo $mod | grep -q '^alias:\s\+net-'; then
mod="${1##*/}"
mod="${mod%.ko*}"
echo "$mod has an alias that allows auto-loading. Blacklisting."
@@ -38,7 +37,7 @@ check_blacklist()
find_depends()
{
dep=$1
- depends=$(modinfo "$dep" | sed -n -e "/^depends/ s/^depends:[ \t]*//p")
+ depends=`modinfo $dep | sed -n -e "/^depends/ s/^depends:[ \t]*//p"`
[ -z "$depends" ] && exit
for mod in ${depends//,/ }
do
@@ -46,14 +45,14 @@ find_depends()
[ -z "$match" ] && continue
# check if the module we are looking at is in mod-* too.
# if so we do not need to mark the dep as required.
- mod2=${dep##*/} # same as $(basename $dep), but faster
+ mod2=${dep##*/} # same as `basename $dep`, but faster
match2=$(grep "^$mod2" "$ListName")
if [ -n "$match2" ]
then
#echo $mod2 >> notreq.list
continue
fi
- echo "$mod".ko >> req.list
+ echo $mod.ko >> req.list
done
}
@@ -61,11 +60,11 @@ foreachp()
{
P=$(nproc)
bgcount=0
- while read -r mod; do
+ while read mod; do
$1 "$mod" &
bgcount=$((bgcount + 1))
- if [ $bgcount -eq "$P" ]; then
+ if [ $bgcount -eq $P ]; then
wait -n
bgcount=$((bgcount - 1))
fi
@@ -77,12 +76,12 @@ foreachp()
# Destination was specified on the command line
test -n "$4" && echo "$0: Override Destination $Dest has been specified."
-pushd "$Dir"
+pushd $Dir
-OverrideDir=$(basename "$List")
+OverrideDir=$(basename $List)
OverrideDir=${OverrideDir%.*}
OverrideDir=${OverrideDir#*-}
-mkdir -p "$OverrideDir"
+mkdir -p $OverrideDir
rm -rf modnames
find . -name "*.ko" -type f > modnames
@@ -95,8 +94,7 @@ cp "$List" .
# This variable needs to be exported because it is used in sub-script
# executed by xargs
-ListName=$(basename "$List")
-export ListName
+export ListName=$(basename "$List")
foreachp find_depends < modnames
@@ -104,25 +102,25 @@ sort -u req.list > req2.list
sort -u "$ListName" > modules2.list
join -v 1 modules2.list req2.list > modules3.list
-while IFS= read -r mod
+for mod in $(cat modules3.list)
do
- # get the path for the module
- modpath=$(grep /"$mod" modnames)
- [ -z "$modpath" ] && continue
- echo "$modpath" >> dep.list
-done < modules3.list
+ # get the path for the module
+ modpath=`grep /$mod modnames`
+ [ -z "$modpath" ] && continue
+ echo $modpath >> dep.list
+done
sort -u dep.list > dep2.list
if [ -n "$Dest" ]; then
- # now move the modules into the $Dest directory
- while IFS= read -r mod
- do
- newpath=$(dirname "$mod" | sed -e "s/kernel\\//$Dest\//")
- mkdir -p "$newpath"
- mv "$mod" "$newpath"
- echo "$mod" | sed -e "s/kernel\\//$Dest\//" | sed -e "s|^.|${ModDir}|g" >> "$RpmDir"/"$ListName"
- done < dep2.list
+ # now move the modules into the $Dest directory
+ for mod in `cat dep2.list`
+ do
+ newpath=`dirname $mod | sed -e "s/kernel\\//$Dest\//"`
+ mkdir -p $newpath
+ mv $mod $newpath
+ echo $mod | sed -e "s/kernel\\//$Dest\//" | sed -e "s|^.|${ModDir}|g" >> $RpmDir/$ListName
+ done
fi
popd
@@ -132,33 +130,31 @@ popd
# target doesn't try to sign a non-existent file. This is kinda ugly, but
# so are the modules-* packages.
-while IFS= read -r mod
+for mod in `cat ${Dir}/dep2.list`
do
- modfile=$(basename "$mod" | sed -e 's/.ko/.mod/')
- rm .tmp_versions/"$modfile"
-done < "$Dir"/dep2.list
+ modfile=`basename $mod | sed -e 's/.ko/.mod/'`
+ rm .tmp_versions/$modfile
+done
-if [ -z "$Dest" ]; then
- sed -e "s|^.|${ModDir}|g" "$Dir"/dep2.list > "$RpmDir/$ListName"
+if [ ! -n "$Dest" ]; then
+ sed -e "s|^.|${ModDir}|g" ${Dir}/dep2.list > $RpmDir/$ListName
echo "./$RpmDir/$ListName created."
[ -d "$RpmDir/etc/modprobe.d/" ] || mkdir -p "$RpmDir/etc/modprobe.d/"
- foreachp check_blacklist < "$List"
+ foreachp check_blacklist < $List
fi
# Many BIOS-es export a PNP-id which causes the floppy driver to autoload
# even though most modern systems don't have a 3.5" floppy driver anymore
# this replaces the old die_floppy_die.patch which removed the PNP-id from
# the module
-
-floppylist=("$RpmDir"/"$ModDir"/extra/drivers/block/floppy.ko*)
-if [[ -n ${floppylist[0]} && -f ${floppylist[0]} ]]; then
- blacklist "floppy"
+if [ -f $RpmDir/$ModDir/extra/drivers/block/floppy.ko* ]; then
+ blacklist "floppy"
fi
# avoid an empty kernel-extra package
-echo "$ModDir/$OverrideDir" >> "$RpmDir/$ListName"
+echo "$ModDir/$OverrideDir" >> $RpmDir/$ListName
-pushd "$Dir"
+pushd $Dir
rm modnames dep.list dep2.list req.list req2.list
rm "$ListName" modules2.list modules3.list
popd