From cb8ac0e9b4361300320fa0ef335ea47942a874a5 Mon Sep 17 00:00:00 2001 From: "Justin M. Forbes" Date: Mon, 30 Nov 2020 07:42:58 -0600 Subject: kernel-5.10.0-0.rc6.90 * Mon Nov 30 2020 Fedora Kernel Team [5.10.0-0.rc6.90] - Temporarily backout parallel xz script ("Justin M. Forbes") - build_configs.sh: Fix syntax flagged by shellcheck (Ben Crocker) - genspec.sh: Fix syntax flagged by shellcheck (Ben Crocker) - ark-rebase-patches.sh: Fix for shellcheck (Ben Crocker) - ark-create-release.sh: Fix syntax flagged by shellcheck (Ben Crocker) - merge-subtrees.sh: Fix syntax flagged by shellcheck (Ben Crocker) - rh-dist-git.sh: Fix syntax flagged by shellcheck (Ben Crocker) - update_scripts.sh: Fix syntax flagged by shellcheck (Ben Crocker) - x86_rngd.sh: Fix syntax flagged by shellcheck (Ben Crocker) - parallel_xz.sh: Fix syntax flagged by shellcheck (Ben Crocker) - expand_srpm.sh: Fix syntax flagged by shellcheck (Ben Crocker) - create-tarball.sh: Fix syntax flagged by shellcheck (Ben Crocker) - generate_bls_conf.sh: Fix syntax flagged by shellcheck (Ben Crocker) - clone_tree.sh: Fix syntax flagged by shellcheck (Ben Crocker) - new_release.sh: Fix syntax flagged by shellcheck (Ben Crocker) - download_cross.sh: Fix syntax flagged by shellcheck (Ben Crocker) - create_distgit_changelog.sh: Fix syntax flagged by shellcheck (Ben Crocker) - generate_cross_report.sh: Fix syntax flagged by shellcheck (Ben Crocker) - run_kabi-dw.sh: Fix syntax flagged by shellcheck (Ben Crocker) - mod-blacklist.sh: Fix syntax flagged by shellcheck (Ben Crocker) - scripts/configdiff.sh: Fix syntax flagged by shellcheck (Ben Crocker) - self-test/0001-shellcheck.bats: check for shellcheck (Ben Crocker) - self-test/1001-rpmlint.bats, 1003-rpminspect.bats (Ben Crocker) - Makefile, Makefile.common, egit.sh, 1005-dist-dump-variables.bats (Ben Crocker) - Add GIT macro to Makefile and Makefile.common: (Ben Crocker) Resolves: rhbz# Signed-off-by: Justin M. Forbes --- Makefile.rhelver | 2 +- generate_bls_conf.sh | 6 ++- kernel-aarch64-debug-fedora.config | 2 +- kernel-aarch64-fedora.config | 2 +- kernel-armv7hl-debug-fedora.config | 2 +- kernel-armv7hl-fedora.config | 2 +- kernel-armv7hl-lpae-debug-fedora.config | 2 +- kernel-armv7hl-lpae-fedora.config | 2 +- kernel.spec | 42 ++++++++++++++---- mod-blacklist.sh | 76 +++++++++++++++++---------------- parallel_xz.sh | 2 +- patch-5.10.0-redhat.patch | 12 +++--- sources | 6 +-- update_scripts.sh | 8 ++-- 14 files changed, 100 insertions(+), 66 deletions(-) diff --git a/Makefile.rhelver b/Makefile.rhelver index af24496a4..b99e7347b 100644 --- a/Makefile.rhelver +++ b/Makefile.rhelver @@ -12,7 +12,7 @@ RHEL_MINOR = 99 # # Use this spot to avoid future merge conflicts. # Do not trim this comment. -RHEL_RELEASE = 85 +RHEL_RELEASE = 90 # # Early y+1 numbering diff --git a/generate_bls_conf.sh b/generate_bls_conf.sh index f8415db24..03b21821f 100755 --- a/generate_bls_conf.sh +++ b/generate_bls_conf.sh @@ -1,6 +1,7 @@ #!/bin/bash set -e +# shellcheck disable=SC1091 . /etc/os-release kernelver=$1 && shift @@ -18,7 +19,10 @@ else debugid="" fi -cat >${output} < "$output" < [5.10.0-0.rc5.20201125git127c501a03d5.85] +* Mon Nov 30 2020 Fedora Kernel Team [5.10.0-0.rc6.90] - Temporarily backout parallel xz script ("Justin M. Forbes") +- build_configs.sh: Fix syntax flagged by shellcheck (Ben Crocker) +- genspec.sh: Fix syntax flagged by shellcheck (Ben Crocker) +- ark-rebase-patches.sh: Fix for shellcheck (Ben Crocker) +- ark-create-release.sh: Fix syntax flagged by shellcheck (Ben Crocker) +- merge-subtrees.sh: Fix syntax flagged by shellcheck (Ben Crocker) +- rh-dist-git.sh: Fix syntax flagged by shellcheck (Ben Crocker) +- update_scripts.sh: Fix syntax flagged by shellcheck (Ben Crocker) +- x86_rngd.sh: Fix syntax flagged by shellcheck (Ben Crocker) +- parallel_xz.sh: Fix syntax flagged by shellcheck (Ben Crocker) +- expand_srpm.sh: Fix syntax flagged by shellcheck (Ben Crocker) +- create-tarball.sh: Fix syntax flagged by shellcheck (Ben Crocker) +- generate_bls_conf.sh: Fix syntax flagged by shellcheck (Ben Crocker) +- clone_tree.sh: Fix syntax flagged by shellcheck (Ben Crocker) +- new_release.sh: Fix syntax flagged by shellcheck (Ben Crocker) +- download_cross.sh: Fix syntax flagged by shellcheck (Ben Crocker) +- create_distgit_changelog.sh: Fix syntax flagged by shellcheck (Ben Crocker) +- generate_cross_report.sh: Fix syntax flagged by shellcheck (Ben Crocker) +- run_kabi-dw.sh: Fix syntax flagged by shellcheck (Ben Crocker) +- mod-blacklist.sh: Fix syntax flagged by shellcheck (Ben Crocker) +- scripts/configdiff.sh: Fix syntax flagged by shellcheck (Ben Crocker) +- self-test/0001-shellcheck.bats: check for shellcheck (Ben Crocker) +- self-test/1001-rpmlint.bats, 1003-rpminspect.bats (Ben Crocker) +- Makefile, Makefile.common, egit.sh, 1005-dist-dump-variables.bats (Ben Crocker) +- Add GIT macro to Makefile and Makefile.common: (Ben Crocker) * Fri Nov 20 2020 Fedora Kernel Team [5.10.0-0.rc4.20201120git4d02da974ea8.81] - Fedora config update ("Justin M. Forbes") diff --git a/mod-blacklist.sh b/mod-blacklist.sh index f2f801b5e..e8797659e 100755 --- a/mod-blacklist.sh +++ b/mod-blacklist.sh @@ -1,4 +1,5 @@ #! /bin/bash +# shellcheck disable=SC2164 RpmDir=$1 ModDir=$2 @@ -24,9 +25,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." @@ -37,7 +38,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 @@ -45,14 +46,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 } @@ -60,11 +61,11 @@ foreachp() { P=$(nproc) bgcount=0 - while read mod; do + while read -r mod; do $1 "$mod" & bgcount=$((bgcount + 1)) - if [ $bgcount -eq $P ]; then + if [ $bgcount -eq "$P" ]; then wait -n bgcount=$((bgcount - 1)) fi @@ -76,12 +77,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 @@ -94,7 +95,8 @@ cp "$List" . # This variable needs to be exported because it is used in sub-script # executed by xargs -export ListName=$(basename "$List") +ListName=$(basename "$List") +export ListName foreachp find_depends < modnames @@ -102,25 +104,25 @@ sort -u req.list > req2.list sort -u "$ListName" > modules2.list join -v 1 modules2.list req2.list > modules3.list -for mod in $(cat modules3.list) +while IFS= read -r mod do - # get the path for the module - modpath=`grep /$mod modnames` - [ -z "$modpath" ] && continue - echo $modpath >> dep.list -done + # get the path for the module + modpath=$(grep /"$mod" modnames) + [ -z "$modpath" ] && continue + echo "$modpath" >> dep.list +done < modules3.list sort -u dep.list > dep2.list if [ -n "$Dest" ]; then - # 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 + # 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 fi popd @@ -130,31 +132,33 @@ popd # target doesn't try to sign a non-existent file. This is kinda ugly, but # so are the modules-* packages. -for mod in `cat ${Dir}/dep2.list` +while IFS= read -r mod do - modfile=`basename $mod | sed -e 's/.ko/.mod/'` - rm .tmp_versions/$modfile -done + modfile=$(basename "$mod" | sed -e 's/.ko/.mod/') + rm .tmp_versions/"$modfile" +done < "$Dir"/dep2.list -if [ ! -n "$Dest" ]; then - sed -e "s|^.|${ModDir}|g" ${Dir}/dep2.list > $RpmDir/$ListName +if [ -z "$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 -if [ -f $RpmDir/$ModDir/extra/drivers/block/floppy.ko* ]; then - blacklist "floppy" + +floppylist=("$RpmDir"/"$ModDir"/extra/drivers/block/floppy.ko*) +if [[ -n ${floppylist[0]} && -f ${floppylist[0]} ]]; 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 diff --git a/parallel_xz.sh b/parallel_xz.sh index bc08a548d..f1b6cdd15 100755 --- a/parallel_xz.sh +++ b/parallel_xz.sh @@ -23,4 +23,4 @@ test "$procgroup" = 1 && exec xargs -r xz # xz has some startup cost. If files are really small, # this cost might be significant. To combat this, # process several files (in sequence) by each xz process via -n 16: -exec xargs -r -n 16 -P $procgroup xz +exec xargs -r -n 16 -P "$procgroup" xz diff --git a/patch-5.10.0-redhat.patch b/patch-5.10.0-redhat.patch index 51f27ee79..1ef9802e7 100644 --- a/patch-5.10.0-redhat.patch +++ b/patch-5.10.0-redhat.patch @@ -202,7 +202,7 @@ index 000000000000..effb81d04bfd + +endmenu diff --git a/Makefile b/Makefile -index ed081e3eb800..549e1381c227 100644 +index 43ecedeb3f02..d35dda518ef1 100644 --- a/Makefile +++ b/Makefile @@ -18,6 +18,10 @@ $(if $(filter __%, $(MAKECMDGOALS)), \ @@ -216,7 +216,7 @@ index ed081e3eb800..549e1381c227 100644 # We are using a recursive build, so we need to do a little thinking # to get the ordering right. # -@@ -497,6 +501,7 @@ KBUILD_AFLAGS := -D__ASSEMBLY__ -fno-PIE +@@ -495,6 +499,7 @@ KBUILD_AFLAGS := -D__ASSEMBLY__ -fno-PIE KBUILD_CFLAGS := -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs \ -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE \ -Werror=implicit-function-declaration -Werror=implicit-int \ @@ -224,7 +224,7 @@ index ed081e3eb800..549e1381c227 100644 -Werror=return-type -Wno-format-security \ -std=gnu89 KBUILD_CPPFLAGS := -D__KERNEL__ -@@ -1247,7 +1252,13 @@ endef +@@ -1245,7 +1250,13 @@ endef define filechk_version.h echo \#define LINUX_VERSION_CODE $(shell \ expr $(VERSION) \* 65536 + 0$(PATCHLEVEL) \* 256 + 0$(SUBLEVEL)); \ @@ -684,7 +684,7 @@ index d6ca2da19339..7c30a62c5e5d 100644 obj-$(CONFIG_EFI_RCI2_TABLE) += rci2-table.o obj-$(CONFIG_EFI_EMBEDDED_FIRMWARE) += embedded-firmware.o diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c -index 5e5480a0a32d..bb5d61fc82bb 100644 +index 6c6eec044a97..406aff8327b6 100644 --- a/drivers/firmware/efi/efi.c +++ b/drivers/firmware/efi/efi.c @@ -31,6 +31,7 @@ @@ -1622,7 +1622,7 @@ index 258d5fe3d395..f7298e3dc8f3 100644 if (data->f01_container->dev.driver) { /* Driver already bound, so enable ATTN now. */ diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c -index b53446bb8c6b..b17b2a76a547 100644 +index 0f4dc25d46c9..bd962ee8bc4b 100644 --- a/drivers/iommu/iommu.c +++ b/drivers/iommu/iommu.c @@ -7,6 +7,7 @@ @@ -1633,7 +1633,7 @@ index b53446bb8c6b..b17b2a76a547 100644 #include #include #include -@@ -3029,3 +3030,24 @@ u32 iommu_sva_get_pasid(struct iommu_sva *handle) +@@ -3031,3 +3032,24 @@ u32 iommu_sva_get_pasid(struct iommu_sva *handle) return ops->sva_get_pasid(handle); } EXPORT_SYMBOL_GPL(iommu_sva_get_pasid); diff --git a/sources b/sources index a293cb423..15d108af6 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (linux-20201125git127c501a03d5.tar.xz) = 73831cf2ccc23dc8fa840e897aa4596d1182d29c18c09a93a5ff13868d9721c441d3a686c218fb59d5d55007ac9d9861a2336bf0299ca50cbddb02e2ac045d0e -SHA512 (kernel-abi-whitelists-5.10.0-0.rc5.20201125git127c501a03d5.85.tar.bz2) = feff207b2e43fd6f021592bdc91506d2c015336bc7cb094bea972aa31f36d9bbaf640629d8f07e66a620e8cb1da77f3f4b9475a43860aca32da50b2a6d66e724 -SHA512 (kernel-kabi-dw-5.10.0-0.rc5.20201125git127c501a03d5.85.tar.bz2) = 4d65cd89fce2acb86e6f51997777872e997e28356e73208fd9d9478377d014fa366f1877dab813362c5d996f8a746e156aa033a251ad109b161db5b791f87550 +SHA512 (linux-5.10-rc6.tar.xz) = 4c5bda5b64f657a0e911ca5c6e240026c2abd118e390ab680184eeb1850758a502f54c388a696adb8b699bf27180cc8ad149b80b8e64b470e1d7b94c1da938cc +SHA512 (kernel-abi-whitelists-5.10.0-0.rc6.90.tar.bz2) = 1dca6262cc8b9bd8bb513ba9cbfd9d5ab8ae779c26d12ea90ba404d845bf0038c557231ed86d0a4a5f4b8aca24f4076a73da4afddfbf4ad4438aa43e14e54df7 +SHA512 (kernel-kabi-dw-5.10.0-0.rc6.90.tar.bz2) = 0ff00731c1868222eae87231a5bef052e515861a5a424c123eeac30da5ce5828247c58c715f196d06498ac700e15d1b23ef48a3b077414271132538b3a30cd37 diff --git a/update_scripts.sh b/update_scripts.sh index 5c3dbaeb9..9196e795a 100755 --- a/update_scripts.sh +++ b/update_scripts.sh @@ -1,12 +1,12 @@ #!/bin/sh -if [ -z $1 ]; then +if [ -z "$1" ]; then exit 1 fi -TARGET=$1 +TARGET="$1" -for i in $RPM_SOURCE_DIR/*.$TARGET; do +for i in "$RPM_SOURCE_DIR"/*."$TARGET"; do NEW=${i%.$TARGET} - cp $i $NEW + cp "$i" "$NEW" done -- cgit