diff --git a/scripts/kernel-functions b/scripts/kernel-functions index 3a6a0d552..38233802d 100644 --- a/scripts/kernel-functions +++ b/scripts/kernel-functions @@ -119,9 +119,9 @@ function extract_kernel_tree { { extract_kernel_archive "$kver" && mv "linux-$kver" "linux-$1"; } || return $? fi - mv "linux-$1" ".." || return $? + mv "linux-$1" .. || return $? cd "../linux-$1" || return $? - ) + ) || return $? rmdir "${tmpdir}" } @@ -784,16 +784,18 @@ function download_and_extract_distro_rpm { CentOS) rpm2cpio "${kernel_downloads}/kernel-${kver}.src.rpm" | cpio -i --make-directories --quiet && - tar xaf "linux-${kver}.tar."* && - mv "linux-${kver}" ".." && - cd "../linux-${kver}" + tar xaf "linux-${kver}"*.tar.* && + if [ -e "linux-${kver}" ]; then + mv "linux-${kver}" .. + else + mv "linux-${kver}"*[^z] "../linux-${kver}" + fi ;; UEK) rpm2cpio "${kernel_downloads}/kernel-uek-${kver}.src.rpm" | cpio -i --make-directories --quiet && tar xaf "linux-${kver/-*}.tar."* && - mv "linux-${kver/-*}" "../linux-${kver}" && - cd "../linux-${kver}" + mv "linux-${kver/-*}" "../linux-${kver}" ;; *) echo "Error: unknown distro $distro" diff --git a/scripts/run-regression-tests b/scripts/run-regression-tests index 3520f1d55..f3a89cdbe 100755 --- a/scripts/run-regression-tests +++ b/scripts/run-regression-tests @@ -291,6 +291,7 @@ CONFIG_IRQSOFF_TRACER \ CONFIG_IWLWIFI_DEVICE_TRACING \ CONFIG_IWM_TRACING \ CONFIG_KALLMODSYMS \ +CONFIG_KCOV \ CONFIG_KVM_MMU_AUDIT \ CONFIG_MAC80211_DRIVER_API_TRACER \ CONFIG_MMIOTRACE \ @@ -678,11 +679,13 @@ do k="${kv}" generate_kernel_patch "$k" "${generate_kernel_patch_options}" || continue - ( + if ! ( cd "${outputdir}" && download_and_extract_kernel_tree "$k" - ) || + ); then + echo "Error: download_and_extract_kernel_tree $k failed" continue + fi k="${k/^*}" if [ "${run_checkpatch}" = "true" ]; then run_checkpatch "$k" diff --git a/scripts/specialize-patch b/scripts/specialize-patch index 49f51816a..b10dd5967 100755 --- a/scripts/specialize-patch +++ b/scripts/specialize-patch @@ -96,7 +96,8 @@ function evaluate(stmnt, pattern, arg, op, result) { "RHEL_RELEASE_CODE -0 < 7 * 256 + 5)", stmnt) gsub("IB_CLIENT_ADD_ONE_RETURNS_INT", - "(LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0))", stmnt) + "(LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0) || " \ + "RHEL_RELEASE_CODE -0 >= 8 * 256 + 4)", stmnt) gsub("defined\\(IB_CLIENT_REMOVE_TAKES_TWO_ARGS\\)", "(LINUX_VERSION_CODE >= KERNEL_VERSION(4, 3, 0) || " \ @@ -165,7 +166,8 @@ function evaluate(stmnt, pattern, arg, op, result) { "RHEL_RELEASE_CODE -0 < 8 * 256 + 2)", stmnt) gsub("RDMA_REJECT_HAS_FOUR_ARGS", - "(LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0))", stmnt) + "(LINUX_VERSION_CODE >= KERNEL_VERSION(5, 8, 0) || " \ + "RHEL_RELEASE_CODE -0 >= 8 * 256 + 4)", stmnt) gsub("defined(ENABLE_NPIV)", 0, stmnt)