From 144593b0c24d56e2b0b41de52747b349af95cdfe Mon Sep 17 00:00:00 2001 From: Tulip Blossom Date: Mon, 3 Feb 2025 17:49:15 -0300 Subject: [PATCH] fix: make sure nouveau kargs are getting applied on nvidia builds (#253) --- build_scripts/15-packages-image-base.sh | 2 ++ build_scripts/overrides/hwe/10-hyperscale-kernel.sh | 2 ++ build_scripts/overrides/x86_64/gdx/20-nvidia.sh | 10 +++++++++- 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/build_scripts/15-packages-image-base.sh b/build_scripts/15-packages-image-base.sh index ec7e137..fd6b903 100755 --- a/build_scripts/15-packages-image-base.sh +++ b/build_scripts/15-packages-image-base.sh @@ -9,6 +9,8 @@ dnf remove -y subscription-manager # The base images take super long to update, this just updates manually for now dnf -y update +dnf -y install 'dnf-command(versionlock)' +dnf versionlock add kernel kernel-devel kernel-devel-matched kernel-core kernel-modules kernel-modules-core kernel-modules-extra kernel-uki-virt dnf config-manager --set-enabled crb dnf -y install "https://dl.fedoraproject.org/pub/epel/epel-release-latest-$MAJOR_VERSION_NUMBER.noarch.rpm" diff --git a/build_scripts/overrides/hwe/10-hyperscale-kernel.sh b/build_scripts/overrides/hwe/10-hyperscale-kernel.sh index be0dcd5..51e68a7 100755 --- a/build_scripts/overrides/hwe/10-hyperscale-kernel.sh +++ b/build_scripts/overrides/hwe/10-hyperscale-kernel.sh @@ -6,7 +6,9 @@ set -euox pipefail dnf -y install centos-release-hyperscale-kernel dnf config-manager --set-disabled "centos-hyperscale" dnf config-manager --set-disabled "centos-hyperscale-kernel" +dnf versionlock remove kernel kernel-devel kernel-devel-matched kernel-core kernel-modules kernel-modules-core kernel-modules-extra kernel-uki-virt dnf --enablerepo="centos-hyperscale" --enablerepo="centos-hyperscale-kernel" -y update kernel +dnf versionlock add kernel kernel-devel kernel-devel-matched kernel-core kernel-modules kernel-modules-core kernel-modules-extra kernel-uki-virt # Only necessary when not building with Nvidia KERNEL_SUFFIX="" diff --git a/build_scripts/overrides/x86_64/gdx/20-nvidia.sh b/build_scripts/overrides/x86_64/gdx/20-nvidia.sh index 2e6898b..19b89b5 100755 --- a/build_scripts/overrides/x86_64/gdx/20-nvidia.sh +++ b/build_scripts/overrides/x86_64/gdx/20-nvidia.sh @@ -7,6 +7,8 @@ NVIDIA_DISTRO="rhel9" # These are necessary for building the nvidia drivers # DKMS is provided by EPEL +# Also make sure the kernel is locked before this is run whenever the kernel updates +# kernel-devel might pull in an entire new kernel dnf -y install kernel-devel kernel-devel-matched kernel-headers dkms dnf config-manager --add-repo "https://developer.download.nvidia.com/compute/cuda/repos/${NVIDIA_DISTRO}/$(arch)/cuda-${NVIDIA_DISTRO}.repo" @@ -22,11 +24,17 @@ dnf -y install --nogpgcheck \ -x egl-gbm \ nvidia-driver{,-cuda} kmod-nvidia-open-dkms -cat >/etc/modprobe.d/nouveau-blacklist.conf </usr/lib/modprobe.d/00-nouveau-blacklist.conf </usr/lib/bootc/kargs.d/00-nvidia.toml <