diff --git a/Cargo.lock b/Cargo.lock index acd19dbe..c56d47f4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -10,11 +10,9 @@ dependencies = [ "kernel-6_1", "kernel-6_12", "kmod-6_1-efa", - "kmod-6_1-nvidia-r570", "kmod-6_1-nvidia-r580", "kmod-6_12-amdgpu", "kmod-6_12-efa", - "kmod-6_12-nvidia-r570", "kmod-6_12-nvidia-r580", "libkcapi", "linux-firmware", @@ -49,13 +47,6 @@ dependencies = [ "kernel-6_1", ] -[[package]] -name = "kmod-6_1-nvidia-r570" -version = "0.1.0" -dependencies = [ - "kernel-6_1", -] - [[package]] name = "kmod-6_1-nvidia-r580" version = "0.1.0" @@ -77,13 +68,6 @@ dependencies = [ "kernel-6_12", ] -[[package]] -name = "kmod-6_12-nvidia-r570" -version = "0.1.0" -dependencies = [ - "kernel-6_12", -] - [[package]] name = "kmod-6_12-nvidia-r580" version = "0.1.0" diff --git a/Cargo.toml b/Cargo.toml index 01a6a1cd..2bb1db93 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -6,11 +6,9 @@ members = [ "packages/kernel-6.1", "packages/kernel-6.12", "packages/kmod-6.1-efa", - "packages/kmod-6.1-nvidia-r570", "packages/kmod-6.1-nvidia-r580", "packages/kmod-6.12-amdgpu", "packages/kmod-6.12-efa", - "packages/kmod-6.12-nvidia-r570", "packages/kmod-6.12-nvidia-r580", "packages/nvidia-migmanager", "packages/nvlsm", diff --git a/advisories/staging/BRSA-sjm54txjduoa.toml b/advisories/staging/BRSA-sjm54txjduoa.toml new file mode 100644 index 00000000..cf279dfe --- /dev/null +++ b/advisories/staging/BRSA-sjm54txjduoa.toml @@ -0,0 +1,22 @@ +[advisory] +id = "BRSA-sjm54txjduoa" +title = "kmod-nvidia-r570 support ended" +severity = "low" +end-of-life = true +description = "kmod-nvidia-r570 is no longer included in Bottlerocket. All users must upgrade to a version of the OS that does not include this package." + +[[advisory.products]] +package-name = "kmod-6.1-nvidia-r570" +patched-version = "570.211.01" +patched-epoch = "2" + +[[advisory.products]] +package-name = "kmod-6.12-nvidia-r570" +patched-version = "570.211.01" +patched-epoch = "2" + +[updateinfo] +author = "mgsharm" +issue-date = 2026-02-12T23:30:55Z +arches = ["x86_64", "aarch64"] +version = "staging" diff --git a/kits/bottlerocket-kernel-kit/Cargo.toml b/kits/bottlerocket-kernel-kit/Cargo.toml index 5819810d..32d6fc0f 100644 --- a/kits/bottlerocket-kernel-kit/Cargo.toml +++ b/kits/bottlerocket-kernel-kit/Cargo.toml @@ -16,11 +16,9 @@ grub = { path = "../../packages/grub" } kernel-6_1 = { path = "../../packages/kernel-6.1" } kernel-6_12 = { path = "../../packages/kernel-6.12" } kmod-6_1-efa = { path = "../../packages/kmod-6.1-efa" } -kmod-6_1-nvidia-r570 = { path = "../../packages/kmod-6.1-nvidia-r570" } kmod-6_1-nvidia-r580 = { path = "../../packages/kmod-6.1-nvidia-r580" } kmod-6_12-amdgpu = { path = "../../packages/kmod-6.12-amdgpu" } kmod-6_12-efa = { path = "../../packages/kmod-6.12-efa" } -kmod-6_12-nvidia-r570 = { path = "../../packages/kmod-6.12-nvidia-r570" } kmod-6_12-nvidia-r580 = { path = "../../packages/kmod-6.12-nvidia-r580" } nvidia-migmanager = { path = "../../packages/nvidia-migmanager" } nvlsm = { path = "../../packages/nvlsm" } diff --git a/packages/kmod-6.1-nvidia-r570/.gitignore b/packages/kmod-6.1-nvidia-r570/.gitignore deleted file mode 100644 index a0b85133..00000000 --- a/packages/kmod-6.1-nvidia-r570/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ -NVidiaEULAforAWS.pdf -NvidiaGridAWSUserLicenseAgreement.DOCX -COPYING -*.rpm diff --git a/packages/kmod-6.1-nvidia-r570/0001-makefile-allow-to-use-any-kernel-arch.patch b/packages/kmod-6.1-nvidia-r570/0001-makefile-allow-to-use-any-kernel-arch.patch deleted file mode 100644 index 264ec235..00000000 --- a/packages/kmod-6.1-nvidia-r570/0001-makefile-allow-to-use-any-kernel-arch.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 8d9bbc893466da39eea9f5b92dc2797cb7d79e12 Mon Sep 17 00:00:00 2001 -From: Shikha Vyaghra -Date: Wed, 8 Jan 2025 19:42:26 +0000 -Subject: [PATCH] makefile: allow to use any kernel arch - -The added check results in failing build for x86_64 architecture when we use -`_cross_karch` in make commands in spec file and fails for aarch64 while -using _cross_arch in the make commands. - -This check has been added recently and do not allow us to use -Kernel_ARCH we want. - -We need different Kernel arch as we do cross builds. - -Signed-off-by: Shikha Vyaghra ---- - kernel-open/Makefile | 10 ---------- - kernel/Makefile | 10 ---------- - 2 files changed, 20 deletions(-) - -diff --git a/kernel-open/Makefile b/kernel-open/Makefile -index 72672c2..187f39e 100644 ---- a/kernel-open/Makefile -+++ b/kernel-open/Makefile -@@ -80,16 +80,6 @@ else - ) - endif - -- KERNEL_ARCH = $(ARCH) -- -- ifneq ($(filter $(ARCH),i386 x86_64),) -- KERNEL_ARCH = x86 -- else -- ifeq ($(filter $(ARCH),arm64 powerpc),) -- $(error Unsupported architecture $(ARCH)) -- endif -- endif -- - NV_KERNEL_MODULES ?= $(wildcard nvidia nvidia-uvm nvidia-vgpu-vfio nvidia-modeset nvidia-drm nvidia-peermem) - NV_KERNEL_MODULES := $(filter-out $(NV_EXCLUDE_KERNEL_MODULES), \ - $(NV_KERNEL_MODULES)) -diff --git a/kernel/Makefile b/kernel/Makefile -index 72672c2..187f39e 100644 ---- a/kernel/Makefile -+++ b/kernel/Makefile -@@ -80,16 +80,6 @@ else - ) - endif - -- KERNEL_ARCH = $(ARCH) -- -- ifneq ($(filter $(ARCH),i386 x86_64),) -- KERNEL_ARCH = x86 -- else -- ifeq ($(filter $(ARCH),arm64 powerpc),) -- $(error Unsupported architecture $(ARCH)) -- endif -- endif -- - NV_KERNEL_MODULES ?= $(wildcard nvidia nvidia-uvm nvidia-vgpu-vfio nvidia-modeset nvidia-drm nvidia-peermem) - NV_KERNEL_MODULES := $(filter-out $(NV_EXCLUDE_KERNEL_MODULES), \ - $(NV_KERNEL_MODULES)) --- -2.40.1 - diff --git a/packages/kmod-6.1-nvidia-r570/Cargo.toml b/packages/kmod-6.1-nvidia-r570/Cargo.toml deleted file mode 100644 index d45de479..00000000 --- a/packages/kmod-6.1-nvidia-r570/Cargo.toml +++ /dev/null @@ -1,54 +0,0 @@ -[package] -name = "kmod-6_1-nvidia-r570" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" - -[lib] -path = "../packages.rs" - -[package.metadata.build-package] -package-name = "kmod-6.1-nvidia-r570" -releases-url = "https://docs.nvidia.com/datacenter/tesla/" - -[[package.metadata.build-package.external-files]] -url = "https://s3.amazonaws.com/EULA/NVidiaEULAforAWS.pdf" -sha512 = "e1926fe99afc3ab5b2f2744fcd53b4046465aefb2793e2e06c4a19455a3fde895e00af1415ff1a5804c32e6a2ed0657e475de63da6c23a0e9c59feeef52f3f58" - -[[package.metadata.build-package.external-files]] -url = "https://aws-nvidia-license-agreement.s3.amazonaws.com/NvidiaGridAWSUserLicenseAgreement.DOCX" -sha512 = "915d76bc26f7b39202883b6f902ebde1194d1f3e45e6c858ee42ac48615e4b315c658ba78d24bd72a3011289c2ea888ee17089f674497f1cba58d0e0c8f37c7a" - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/570.211.01/NVIDIA-Linux-x86_64-570.211.01.run" -sha512 = "3e751d90a8f126e369c5167e2d5ba8b218dd306ccf00907290ae70fb1c3f752f0ad0b973ce356a1a24cd0f19c31a07169cfd5705613a6bbb5918881635650839" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/570.211.01/NVIDIA-Linux-aarch64-570.211.01.run" -sha512 = "22816d8f798d6ce141ff2ce750b5df1ca4fef9b1ba79762157fd7f93c1ea905c74f421dc6ac2b7bf5b383192d2baa735d7a7d240523be815defb68be54c4a6be" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/cuda/repos/amzn2023/x86_64/nvidia-fabric-manager-570.211.01-1.x86_64.rpm" -sha512 = "21be6fdfbda1fabad20cc9a0bdabb1fdbf104e0627bb7cf5b51ca7e5da0608240d665bc8a4f5bf9cde5adc16526c195999f47d4ed79130e7c65cc972f92a5182" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/cuda/repos/amzn2023/sbsa/nvidia-fabric-manager-570.211.01-1.aarch64.rpm" -sha512 = "8e89fd4e7983b2ea430a884bd53e58827020c22e604161501570e21d33128431f14a43b05091f401977ed4da046ceb8f0c5015a200d2ad8877870b426b106398" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://s3.amazonaws.com/ec2-linux-nvidia-drivers/grid-18.6/NVIDIA-Linux-x86_64-570.211.01-grid-aws.run" -sha512 = "940e96ddc744e76a17f7eb196553264b3aaba16bd2f7e20bbd608b4f9958173d24644b7bcba303b8889c875658ce948c07c55d00cf5709bc69b9e21a86188845" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://raw.githubusercontent.com/NVIDIA/open-gpu-kernel-modules/570/COPYING" -sha512 = "f9cee68cbb12095af4b4e92d01c210461789ef41c70b64efefd6719d0b88468b7a67a3629c432d4d9304c730b5d1a942228a5bcc74a03ab1c411c77c758cd938" -force-upstream = true - -[build-dependencies] -kernel-6_1 = { path = "../kernel-6.1" } diff --git a/packages/kmod-6.1-nvidia-r570/copy-grid-kernel-modules.service.in b/packages/kmod-6.1-nvidia-r570/copy-grid-kernel-modules.service.in deleted file mode 100644 index ee282f2a..00000000 --- a/packages/kmod-6.1-nvidia-r570/copy-grid-kernel-modules.service.in +++ /dev/null @@ -1,20 +0,0 @@ -[Unit] -Description=Copy GRID kernel modules -RequiresMountsFor=PREFIX/lib/modules PREFIX/src/kernels -# Rerunning this service after the system is fully loaded will override -# the already linked kernel modules. This doesn't affect the running system, -# since kernel modules are linked early in the boot sequence, but we still -# disable manual restarts to prevent unnecessary kernel modules rewrites. -RefuseManualStart=true -RefuseManualStop=true - -[Service] -Type=oneshot -ExecCondition=/usr/bin/ghostdog match-nvidia-driver grid -ExecStart=/usr/bin/driverdog --modules-set nvidia-grid link-modules -ExecStart=/usr/bin/driverdog --modules-set nvidia-grid-copy-only link-modules -RemainAfterExit=true -StandardError=journal+console - -[Install] -RequiredBy=drivers.target diff --git a/packages/kmod-6.1-nvidia-r570/copy-open-gpu-kernel-modules.service.in b/packages/kmod-6.1-nvidia-r570/copy-open-gpu-kernel-modules.service.in deleted file mode 100644 index 041ff55d..00000000 --- a/packages/kmod-6.1-nvidia-r570/copy-open-gpu-kernel-modules.service.in +++ /dev/null @@ -1,20 +0,0 @@ -[Unit] -Description=Copy open GPU kernel modules -RequiresMountsFor=PREFIX/lib/modules PREFIX/src/kernels -# Rerunning this service after the system is fully loaded will override -# the already linked kernel modules. This doesn't affect the running system, -# since kernel modules are linked early in the boot sequence, but we still -# disable manual restarts to prevent unnecessary kernel modules rewrites. -RefuseManualStart=true -RefuseManualStop=true - -[Service] -Type=oneshot -ExecCondition=/usr/bin/ghostdog match-nvidia-driver open-gpu -ExecStart=/usr/bin/driverdog --modules-set nvidia-open-gpu link-modules -ExecStart=/usr/bin/driverdog --modules-set nvidia-open-gpu-copy-only link-modules -RemainAfterExit=true -StandardError=journal+console - -[Install] -RequiredBy=drivers.target diff --git a/packages/kmod-6.1-nvidia-r570/fabricmanager.env b/packages/kmod-6.1-nvidia-r570/fabricmanager.env deleted file mode 100644 index 74ec85b2..00000000 --- a/packages/kmod-6.1-nvidia-r570/fabricmanager.env +++ /dev/null @@ -1 +0,0 @@ -GUID_ARG="" diff --git a/packages/kmod-6.1-nvidia-r570/grid-license-check.service b/packages/kmod-6.1-nvidia-r570/grid-license-check.service deleted file mode 100644 index 168d26fe..00000000 --- a/packages/kmod-6.1-nvidia-r570/grid-license-check.service +++ /dev/null @@ -1,19 +0,0 @@ -[Unit] -Description=GRID License Check -RefuseManualStart=true -RefuseManualStop=true -After=nvidia-gridd.service -Requires=nvidia-gridd.service - -[Service] -Type=oneshot -ExecCondition=/usr/bin/ghostdog match-nvidia-driver grid -ExecStart=-/usr/bin/truncate /tmp/.nvidia-gridd-license -ExecStart=/usr/bin/nvidia-smi -q -ExecStart=/usr/bin/grep -q "License Status.*: Licensed" /tmp/.nvidia-gridd-license -ExecStart=/usr/bin/touch /etc/drivers/.grid-licensed -ExecStart=/usr/bin/systemctl stop grid-license-check.timer --no-block -StandardOutput=append:/tmp/.nvidia-gridd-license - -[Install] -WantedBy=nvidia-k8s-device-plugin.service diff --git a/packages/kmod-6.1-nvidia-r570/grid-license-check.timer b/packages/kmod-6.1-nvidia-r570/grid-license-check.timer deleted file mode 100644 index 1a1b26b9..00000000 --- a/packages/kmod-6.1-nvidia-r570/grid-license-check.timer +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=GRID License Check Timer -RefuseManualStart=true - -[Timer] -Unit=grid-license-check.service -OnBootSec=5s -OnUnitActiveSec=2s -AccuracySec=1s - -[Install] -WantedBy=timers.target diff --git a/packages/kmod-6.1-nvidia-r570/grid-license-file-check.conf b/packages/kmod-6.1-nvidia-r570/grid-license-file-check.conf deleted file mode 100644 index 224f0af9..00000000 --- a/packages/kmod-6.1-nvidia-r570/grid-license-file-check.conf +++ /dev/null @@ -1,2 +0,0 @@ -[Service] -ExecStartPre=/usr/bin/test -f /etc/drivers/.grid-licensed diff --git a/packages/kmod-6.1-nvidia-r570/gridd.conf b/packages/kmod-6.1-nvidia-r570/gridd.conf deleted file mode 100644 index 8cd1e86f..00000000 --- a/packages/kmod-6.1-nvidia-r570/gridd.conf +++ /dev/null @@ -1 +0,0 @@ -EnableUI=FALSE diff --git a/packages/kmod-6.1-nvidia-r570/kmod-6.1-nvidia-r570.spec b/packages/kmod-6.1-nvidia-r570/kmod-6.1-nvidia-r570.spec deleted file mode 100644 index a50f675f..00000000 --- a/packages/kmod-6.1-nvidia-r570/kmod-6.1-nvidia-r570.spec +++ /dev/null @@ -1,756 +0,0 @@ -%global tesla_major 570 -%global tesla_minor 211 -%global tesla_patch 01 -%global tesla_ver %{tesla_major}.%{tesla_minor}.%{tesla_patch} -%global grid_ver grid-18.6 -%if "%{?_cross_arch}" == "aarch64" -%global nvidia_arch sbsa -%else -%global nvidia_arch %{_cross_arch} -%endif - -# With the split of the firmware binary from firmware/gsp.bin to firmware/gsp_ga10x.bin -# and firmware/gsp_tu10x.bin the file format changed from executable to relocatable. -# The __spec_install_post macro will by default try to strip all binary files. -# Unfortunately the strip used is not compatible with the new file format. -# Redefine strip, so that these firmware binaries do not derail the build. -%global __strip /usr/bin/true - -Name: %{_cross_os}kmod-6.1-nvidia-r570 -Version: %{tesla_ver} -Release: 1%{?dist} -Epoch: 1 -Summary: NVIDIA r570 drivers for the 6.1 kernel -# We use these licences because we only ship our own software in the main package, -# each subpackage includes the LICENSE file provided by the Licenses.toml file -License: Apache-2.0 OR MIT -URL: http://www.nvidia.com/ - -# NVIDIA archives and license files from 0 to 199 -# NVIDIA .run scripts for kernel and userspace drivers -Source0: https://us.download.nvidia.com/tesla/%{tesla_ver}/NVIDIA-Linux-x86_64-%{tesla_ver}.run -Source1: https://us.download.nvidia.com/tesla/%{tesla_ver}/NVIDIA-Linux-aarch64-%{tesla_ver}.run -Source2: https://s3.amazonaws.com/ec2-linux-nvidia-drivers/%{grid_ver}/NVIDIA-Linux-x86_64-%{tesla_ver}-grid-aws.run -Source3: NVidiaEULAforAWS.pdf -Source4: COPYING -Source5: NvidiaGridAWSUserLicenseAgreement.DOCX - -# fabricmanager for NVSwitch -Source10: https://developer.download.nvidia.com/compute/cuda/repos/amzn2023/x86_64/nvidia-fabric-manager-%{tesla_ver}-1.x86_64.rpm -Source11: https://developer.download.nvidia.com/compute/cuda/repos/amzn2023/sbsa/nvidia-fabric-manager-%{tesla_ver}-1.aarch64.rpm - -# Common NVIDIA conf files from 200 to 299 -Source200: nvidia-tmpfiles.conf.in -Source202: nvidia-dependencies-modules-load.conf -Source203: nvidia-fabricmanager.service -Source204: nvidia-fabricmanager.cfg -Source205: nvidia-sysusers.conf -Source206: nvidia-persistenced.service -Source207: fabricmanager.env -Source208: gridd.conf -Source209: nvidia-gridd.service -Source210: grid-license-check.service -Source211: grid-license-check.timer -Source212: open-gpu-license-fallback.service -Source213: tesla-license-fallback.service -Source214: grid-license-file-check.conf - -# NVIDIA tesla conf files from 300 to 399 -Source300: nvidia-tesla-tmpfiles.conf -Source301: nvidia-tesla-build-config.toml.in -Source302: nvidia-ld.so.conf.in - -# Driverdog config templates from 400 to 499 -Source400: nvidia-open-gpu-config.toml.in -Source401: nvidia-open-gpu-copy-only-config.toml.in -Source402: nvidia-grid-config.toml.in -Source403: nvidia-grid-copy-only-config.toml.in - -# Systemd service templates from 500 to 599 -Source500: link-tesla-kernel-modules.service.in -Source501: load-tesla-kernel-modules.service.in -Source502: copy-open-gpu-kernel-modules.service.in -Source503: load-open-gpu-kernel-modules.service.in -Source504: copy-grid-kernel-modules.service.in -Source505: load-grid-kernel-modules.service.in - -Patch001: 0001-makefile-allow-to-use-any-kernel-arch.patch - -BuildRequires: %{_cross_os}kernel-6.1-archive -Requires: %{_cross_os}kernel-6.1 -Requires: %{_cross_os}nvidia-migmanager -Requires: %{name}-tesla -Requires: %{name}-open-gpu -%if "%{_cross_arch}" == "x86_64" -Requires: %{name}-grid -%endif -Requires: %{name}-mps - -%description -%{summary}. - -%package fabricmanager -Summary: NVIDIA fabricmanager config and service files -Requires: %{name}-tesla(fabricmanager) -Requires: %{_cross_os}nvlsm - -%description fabricmanager -%{summary}. - -%package open-gpu -Summary: NVIDIA %{tesla_major} Open GPU driver -Version: %{tesla_ver} -License: MIT AND GPL-2.0-only -Requires: %{_cross_os}variant-platform(aws) -Requires: %{name} - -%description open-gpu -%{summary}. - -%if "%{_cross_arch}" == "x86_64" -%package grid -Summary: NVIDIA %{tesla_major} GRID driver -Version: %{tesla_ver} -License: MIT AND GPL-2.0-only AND LicenceRef-NVIDIA-GRID-AWS-EULA -Requires: %{_cross_os}variant-platform(aws) -Requires: %{name} -Requires: %{_cross_os}libstdc++ - -%description grid -%{summary}. -%endif - -%package tesla -Summary: NVIDIA %{tesla_major} Tesla driver -Version: %{tesla_ver} -License: LicenseRef-NVIDIA-AWS-EULA -Requires: %{_cross_os}variant-platform(aws) -Requires: %{name} -Requires: %{name}-fabricmanager -Provides: %{name}-tesla(fabricmanager) - -%description tesla -%{summary} - -%package mps -Summary: NVIDIA CUDA Multi-Process Service -Requires: %{name} - -%description mps -%{summary}. - -%prep -# Extract nvidia sources with `-x`, otherwise the script will try to install -# the driver in the current run -sh %{_sourcedir}/NVIDIA-Linux-%{_cross_arch}-%{tesla_ver}.run -x -# Move to the sources directory and apply patch -pushd NVIDIA-Linux-%{_cross_arch}-%{tesla_ver} -%patch 1 -p1 -popd - -# Extract GRID drivers just like Tesla -%if "%{_cross_arch}" == "x86_64" -sh %{_sourcedir}/NVIDIA-Linux-x86_64-%{tesla_ver}-grid-aws.run -x -pushd NVIDIA-Linux-x86_64-%{tesla_ver}-grid-aws -%patch 1 -p1 -popd -%endif - -# Extract fabricmanager from the rpm via cpio rather than `%%setup` since the -# correct source is architecture-dependent. -mkdir fabricmanager-linux-%{nvidia_arch}-%{tesla_ver}-archive -rpm2cpio %{_sourcedir}/nvidia-fabric-manager-%{tesla_ver}-1.%{_cross_arch}.rpm | cpio -idmV -D fabricmanager-linux-%{nvidia_arch}-%{tesla_ver}-archive - -# Add the license. -install -p -m 0644 %{S:3} %{S:4} %{S:5} . - -%global kernel_sources %{_builddir}/kernel-devel -tar -xf %{_cross_datadir}/bottlerocket/kernel-devel.tar.xz - -# This recipe was based in the NVIDIA yum/dnf specs: -# https://github.com/NVIDIA/yum-packaging-precompiled-kmod - -# Begin open driver build -pushd NVIDIA-Linux-%{_cross_arch}-%{tesla_ver}/kernel-open - -# We set IGNORE_CC_MISMATCH even though we are using the same compiler used to -# compile the kernel, if we don't set this flag the compilation fails -make %{?_smp_mflags} ARCH=%{_cross_karch} IGNORE_CC_MISMATCH=1 SYSSRC=%{kernel_sources} CC=%{_cross_target}-gcc LD=%{_cross_target}-ld - -# Strip symbols out of the .ko files -for module in *.ko; do - %{_cross_target}-strip -g --strip-unneeded "${module}" -done - -# end open driver build -popd - -# Begin proprietary driver build -pushd NVIDIA-Linux-%{_cross_arch}-%{tesla_ver}/kernel - -# We set IGNORE_CC_MISMATCH even though we are using the same compiler used to -# compile the kernel, if we don't set this flag the compilation fails -make %{?_smp_mflags} ARCH=%{_cross_karch} IGNORE_CC_MISMATCH=1 SYSSRC=%{kernel_sources} CC=%{_cross_target}-gcc LD=%{_cross_target}-ld - -%{_cross_target}-strip -g --strip-unneeded nvidia/nv-interface.o -%{_cross_target}-strip -g --strip-unneeded nvidia-uvm.o -%{_cross_target}-strip -g --strip-unneeded nvidia-drm.o -%{_cross_target}-strip -g --strip-unneeded nvidia-peermem/nvidia-peermem.o -%{_cross_target}-strip -g --strip-unneeded nvidia-modeset/nv-modeset-interface.o - -# We delete these files since we just stripped the input .o files above, and -# will be build at runtime in the host -rm nvidia{,-modeset,-peermem}.o - -# Delete the .ko files created in make command, just to be safe that we -# don't include any linked module in the base image -rm nvidia{,-modeset,-peermem,-drm}.ko - -# End proprietary driver build -popd - -%if "%{_cross_arch}" == "x86_64" -# Begin GRID build -pushd NVIDIA-Linux-%{_cross_arch}-%{tesla_ver}-grid-aws/kernel-open - -# We set IGNORE_CC_MISMATCH even though we are using the same compiler used to -# compile the kernel, if we don't set this flag the compilation fails -make %{?_smp_mflags} ARCH=%{_cross_karch} IGNORE_CC_MISMATCH=1 SYSSRC=%{kernel_sources} CC=%{_cross_target}-gcc LD=%{_cross_target}-ld - -# Strip symbols out of the .ko files -for module in *.ko; do - %{_cross_target}-strip -g --strip-unneeded "${module}" -done - -# End GRID build -popd -%endif - -# Grab the list of supported devices -pushd NVIDIA-Linux-%{_cross_arch}-%{tesla_ver}/supported-gpus -# We want to grab all the `kernelopen` enabled chips except for this list that -# is best held back to the proprietary driver -# 10de:1db1 is V100-16G (P3dn) -# 10de:1db5 is V100-32G (P3dn) -# 10de:1eb8 is T4 (G4dn) -# 10de:1eb4 is T4G (G5g) -# 10de:2237 is A10G (G5) -jq -r '.chips[] | select(.features[] | contains("kernelopen")) | -select(.devid != "0x1DB1" -and .devid != "0x1DB5" -and .devid != "0x1DEB8" -and .devid != "0x1EB4" -and .devid != "0x2237")' supported-gpus.json | jq -s '{"open-gpu": .}' > open-gpu-supported-devices.json -# confirm "NVIDIA H100" is in the resulting file to catch shape changes -jq -e '."open-gpu"[] | select(."devid" == "0x2330") | ."features"| index("kernelopen")' open-gpu-supported-devices.json -popd - -%install -install -d %{buildroot}%{_cross_libdir} -install -d %{buildroot}%{_cross_tmpfilesdir} -install -d %{buildroot}%{_cross_unitdir} -install -d %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/{drivers,ld.so.conf.d} -install -d %{buildroot}%{_cross_sysusersdir} -install -d %{buildroot}%{_cross_bindir} - -KERNEL_VERSION=$(cat %{kernel_sources}/include/config/kernel.release) -sed \ - -e "s|__KERNEL_VERSION__|${KERNEL_VERSION}|" \ - -e "s|__PREFIX__|%{_cross_prefix}|" %{S:200} > nvidia.conf -install -p -m 0644 nvidia.conf %{buildroot}%{_cross_tmpfilesdir} - -# Install modules-load.d drop-in to autoload required kernel modules -install -d %{buildroot}%{_cross_libdir}/modules-load.d -install -p -m 0644 %{S:202} %{buildroot}%{_cross_libdir}/modules-load.d/nvidia-dependencies.conf - -# NVIDIA fabric manager service unit and config -install -p -m 0644 %{S:203} %{buildroot}%{_cross_unitdir} -install -d %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/nvidia -install -p -m 0644 %{S:204} %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/nvidia/fabricmanager.cfg -install -p -m 0644 %{S:207} %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/nvidia/fabricmanager.env - -# Begin NVIDIA tesla driver -pushd NVIDIA-Linux-%{_cross_arch}-%{tesla_ver} -# Proprietary driver -install -d %{buildroot}%{_cross_bindir} -install -d %{buildroot}%{_cross_libexecdir}/nvidia/tesla/bin -install -d %{buildroot}%{_cross_libdir}/nvidia/tesla -install -d %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d -install -d %{buildroot}%{_cross_factorydir}/nvidia/tesla -install -d %{buildroot}%{_cross_factorydir}/nvidia/open-gpu -%if "%{_cross_arch}" == "x86_64" -install -d %{buildroot}%{_cross_factorydir}/nvidia/grid -%endif -install -d %{buildroot}%{_cross_datadir}/nvidia/open-gpu/drivers - -install -m 0644 %{S:300} %{buildroot}%{_cross_tmpfilesdir}/nvidia-tesla.conf -sed -e 's|__NVIDIA_MODULES__|%{_cross_datadir}/nvidia/tesla/module-objects.d/|' %{S:301} > \ - nvidia-tesla.toml -install -m 0644 nvidia-tesla.toml %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/drivers -sed -e 's|__NVIDIA_MODULES__|%{_cross_datadir}/nvidia/open-gpu/drivers/|' %{S:400} > \ - nvidia-open-gpu.toml -install -m 0644 nvidia-open-gpu.toml %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/drivers -sed -e 's|__NVIDIA_MODULES__|%{_cross_datadir}/nvidia/open-gpu/drivers/|' %{S:401} > \ - nvidia-open-gpu-copy-only.toml -install -m 0644 nvidia-open-gpu-copy-only.toml %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/drivers - -%if "%{_cross_arch}" == "x86_64" -sed -e 's|__NVIDIA_MODULES__|%{_cross_datadir}/nvidia/grid/drivers/|' %{S:402} > \ - nvidia-grid.toml -install -m 0644 nvidia-grid.toml %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/drivers -sed -e 's|__NVIDIA_MODULES__|%{_cross_datadir}/nvidia/grid/drivers/|' %{S:403} > \ - nvidia-grid-copy-only.toml -install -m 0644 nvidia-grid-copy-only.toml %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/drivers -%endif -# We need to add `_cross_libdir` to the paths loaded by the ldconfig service -# because libnvidia-container uses the `ldcache` file created by the service, -# to locate and mount the libraries into the containers -sed -e 's|__LIBDIR__|%{_cross_libdir}|' %{S:302} > nvidia-tesla.conf -install -m 0644 nvidia-tesla.conf %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/ld.so.conf.d/ - -# Services to link/copy/load modules -sed -e 's|PREFIX|%{_cross_prefix}|g' %{S:500} > link-tesla-kernel-modules.service -sed -e 's|PREFIX|%{_cross_prefix}|g' %{S:501} > load-tesla-kernel-modules.service -install -p -m 0644 \ - link-tesla-kernel-modules.service \ - load-tesla-kernel-modules.service \ - %{buildroot}%{_cross_unitdir} - -sed -e 's|PREFIX|%{_cross_prefix}|g' %{S:502} > copy-open-gpu-kernel-modules.service -sed -e 's|PREFIX|%{_cross_prefix}|g' %{S:503} > load-open-gpu-kernel-modules.service -install -p -m 0644 \ - copy-open-gpu-kernel-modules.service \ - load-open-gpu-kernel-modules.service \ - %{buildroot}%{_cross_unitdir} - -%if "%{_cross_arch}" == "x86_64" -sed -e 's|PREFIX|%{_cross_prefix}|g' %{S:504} > copy-grid-kernel-modules.service -sed -e 's|PREFIX|%{_cross_prefix}|g' %{S:505} > load-grid-kernel-modules.service -install -p -m 0644 \ - copy-grid-kernel-modules.service \ - load-grid-kernel-modules.service \ - %{buildroot}%{_cross_unitdir} -%endif - -# proprietary driver -install kernel/nvidia.mod.o %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d -install kernel/nvidia/nv-interface.o %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d -install kernel/nvidia/nv-kernel.o_binary %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d/nv-kernel.o - -# uvm -install kernel/nvidia-uvm.mod.o %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d -install kernel/nvidia-uvm.o %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d - -# modeset -install kernel/nvidia-modeset.mod.o %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d -install kernel/nvidia-modeset/nv-modeset-interface.o %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d -install kernel/nvidia-modeset/nv-modeset-kernel.o %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d - -# peermem -install kernel/nvidia-peermem.mod.o %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d -install kernel/nvidia-peermem/nvidia-peermem.o %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d - -# drm -install kernel/nvidia-drm.mod.o %{buildroot}/%{_cross_datadir}/nvidia/tesla/module-objects.d -install kernel/nvidia-drm.o %{buildroot}/%{_cross_datadir}/nvidia/tesla/module-objects.d - -# open driver -install -d %{buildroot}%{_cross_datadir}/nvidia/open-gpu/drivers/ -install kernel-open/nvidia.ko %{buildroot}%{_cross_datadir}/nvidia/open-gpu/drivers/ - -# uvm -install kernel-open/nvidia-uvm.ko %{buildroot}%{_cross_datadir}/nvidia/open-gpu/drivers/ - -# modeset -install kernel-open/nvidia-modeset.ko %{buildroot}%{_cross_datadir}/nvidia/open-gpu/drivers/ - -# peermem -install kernel-open/nvidia-peermem.ko %{buildroot}%{_cross_datadir}/nvidia/open-gpu/drivers/ - -# drm -install kernel-open/nvidia-drm.ko %{buildroot}%{_cross_datadir}/nvidia/open-gpu/drivers/ -# end open driver - -# add various vulkan icd/config -install -d %{buildroot}%{_cross_datadir}/vulkan/icd.d -install -d %{buildroot}%{_cross_datadir}/vulkan/implicit_layer.d -install -m 0644 nvidia_icd.json %{buildroot}%{_cross_datadir}/vulkan/icd.d/nvidia_icd.json -install -m 0644 nvidia_layers.json %{buildroot}%{_cross_datadir}/vulkan/icd.d/nvidia_layers.json -install -d %{buildroot}%{_cross_datadir}/glvnd/egl_vendor.d -install -m 0644 10_nvidia.json %{buildroot}%{_cross_datadir}/glvnd/egl_vendor.d/10_nvidia.json -install -d %{buildroot}%{_cross_datadir}/egl/egl_external_platform.d -install -m 0644 10_nvidia_wayland.json %{buildroot}%{_cross_datadir}/egl/egl_external_platform.d/10_nvidia_wayland.json -install -m 0644 15_nvidia_gbm.json %{buildroot}%{_cross_datadir}/egl/egl_external_platform.d/15_nvidia_gbm.json -ln -rs %{buildroot}%{_cross_datadir}/vulkan/icd.d/nvidia_layers.json %{buildroot}%{_cross_datadir}/vulkan/implicit_layer.d/nvidia_layers.json - -%if "%{_cross_arch}" == "x86_64" -# GRID driver -pushd ../NVIDIA-Linux-x86_64-%{tesla_ver}-grid-aws -install -d %{buildroot}%{_cross_datadir}/nvidia/grid/drivers/ -install kernel-open/nvidia.ko %{buildroot}%{_cross_datadir}/nvidia/grid/drivers/ - -# uvm -install kernel-open/nvidia-uvm.ko %{buildroot}%{_cross_datadir}/nvidia/grid/drivers/ - -# modeset -install kernel-open/nvidia-modeset.ko %{buildroot}%{_cross_datadir}/nvidia/grid/drivers/ - -# peermem -install kernel-open/nvidia-peermem.ko %{buildroot}%{_cross_datadir}/nvidia/grid/drivers/ - -# drm -install kernel-open/nvidia-drm.ko %{buildroot}%{_cross_datadir}/nvidia/grid/drivers/ - -# Install nvidia-gridd and related files -install -m 755 nvidia-gridd %{buildroot}%{_cross_bindir}/nvidia-gridd -install -m 644 %{S:208} %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/nvidia/gridd.conf -install -p -m 0644 %{S:209} %{S:210} %{S:211} %{S:212} %{S:213} %{buildroot}%{_cross_unitdir} -install -d %{buildroot}%{_cross_unitdir}/nvidia-k8s-device-plugin.service.d -install -p -m 0644 %{S:214} %{buildroot}%{_cross_unitdir}/nvidia-k8s-device-plugin.service.d -popd -# End GRID driver -%endif - -# Binaries -install -m 755 nvidia-smi %{buildroot}%{_cross_bindir} -install -m 755 nvidia-debugdump %{buildroot}%{_cross_bindir} -install -m 755 nvidia-cuda-mps-control %{buildroot}%{_cross_bindir} -install -m 755 nvidia-cuda-mps-server %{buildroot}%{_cross_bindir} -install -m 755 nvidia-persistenced %{buildroot}%{_cross_bindir} -install -m 4755 nvidia-modprobe %{buildroot}%{_cross_bindir} -ln -rs %{buildroot}%{_cross_bindir}/nvidia-smi %{buildroot}%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-smi -ln -rs %{buildroot}%{_cross_bindir}/nvidia-debugdump %{buildroot}%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-debugdump -ln -rs %{buildroot}%{_cross_bindir}/nvidia-cuda-mps-control %{buildroot}%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-cuda-mps-control -ln -rs %{buildroot}%{_cross_bindir}/nvidia-cuda-mps-server %{buildroot}%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-cuda-mps-server -ln -rs %{buildroot}%{_cross_bindir}/nvidia-persistenced %{buildroot}%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-persistenced -%if "%{_cross_arch}" == "x86_64" -install -m 755 nvidia-ngx-updater %{buildroot}%{_cross_bindir} -ln -rs %{buildroot}%{_cross_bindir}/nvidia-ngx-updater %{buildroot}%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-ngx-updater -%endif - -# Users -install -m 0644 %{S:205} %{buildroot}%{_cross_sysusersdir}/nvidia.conf - -# Systemd units -install -m 0644 %{S:206} %{buildroot}%{_cross_unitdir} - -# We install all the libraries, and filter them out in the 'files' section, -# so we can catch when new libraries are added -install -m 755 *.so* %{buildroot}/%{_cross_libdir}/nvidia/tesla/ - -# This library has the same SONAME as libEGL.so.1.1.0, this will cause -# collisions while the symlinks are created. For now, we only symlink -# libEGL.so.1.1.0. -EXCLUDED_LIBS="libEGL.so.%{tesla_ver}" - -for lib in $(find . -maxdepth 1 -type f -name 'lib*.so.*' -printf '%%P\n'); do - [[ "${EXCLUDED_LIBS}" =~ "${lib}" ]] && continue - soname="$(%{_cross_target}-readelf -d "${lib}" | awk '/SONAME/{print $5}' | tr -d '[]')" - [ -n "${soname}" ] || continue - [ "${lib}" == "${soname}" ] && continue - ln -s "${lib}" %{buildroot}/%{_cross_libdir}/nvidia/tesla/"${soname}" -done - -# Include the firmware file for GSP support -install -d %{buildroot}%{_cross_libdir}/firmware/nvidia/%{tesla_ver} -install -p -m 0644 firmware/gsp_ga10x.bin %{buildroot}%{_cross_libdir}/firmware/nvidia/%{tesla_ver} -install -p -m 0644 firmware/gsp_tu10x.bin %{buildroot}%{_cross_libdir}/firmware/nvidia/%{tesla_ver} - -# Include the open driver supported devices file for runtime matching of the -# driver. This is consumed by ghostdog to match the driver to this list -install -p -m 0644 supported-gpus/open-gpu-supported-devices.json %{buildroot}%{_cross_datadir}/nvidia/open-gpu-supported-devices.json - -popd - -# Begin NVIDIA fabric manager binaries and topologies -pushd fabricmanager-linux-%{nvidia_arch}-%{tesla_ver}-archive -install -p -m 0755 usr/bin/nv-fabricmanager %{buildroot}%{_cross_bindir} -install -p -m 0755 usr/bin/nvswitch-audit %{buildroot}%{_cross_bindir} -ln -rs %{buildroot}%{_cross_bindir}/nv-fabricmanager %{buildroot}%{_cross_libexecdir}/nvidia/tesla/bin/nv-fabricmanager -ln -rs %{buildroot}%{_cross_bindir}/nvswitch-audit %{buildroot}%{_cross_libexecdir}/nvidia/tesla/bin/nvswitch-audit - -install -d %{buildroot}%{_cross_datadir}/nvidia/tesla/nvswitch -for t in usr/share/nvidia/nvswitch/*_topology ; do - install -p -m 0644 "${t}" %{buildroot}%{_cross_datadir}/nvidia/tesla/nvswitch -done - -popd - -%files -%{_cross_attribution_file} -%dir %{_cross_libexecdir}/nvidia -%dir %{_cross_libdir}/nvidia -%dir %{_cross_datadir}/nvidia -%dir %{_cross_libdir}/modules-load.d -%dir %{_cross_factorydir}%{_cross_sysconfdir}/drivers -%dir %{_cross_factorydir}%{_cross_sysconfdir}/nvidia -%{_cross_tmpfilesdir}/nvidia.conf -%{_cross_libdir}/modules-load.d/nvidia-dependencies.conf - -%files tesla -%license NVidiaEULAforAWS.pdf -%license fabricmanager-linux-%{nvidia_arch}-%{tesla_ver}-archive/usr/share/doc/nvidia-fabricmanager/third-party-notices.txt -%dir %{_cross_datadir}/egl -%dir %{_cross_datadir}/egl/egl_external_platform.d -%dir %{_cross_datadir}/glvnd -%dir %{_cross_datadir}/glvnd/egl_vendor.d -%dir %{_cross_datadir}/nvidia/tesla -%dir %{_cross_datadir}/nvidia/tesla/module-objects.d -%dir %{_cross_datadir}/vulkan -%dir %{_cross_datadir}/vulkan/icd.d -%dir %{_cross_datadir}/vulkan/implicit_layer.d -%dir %{_cross_factorydir}/nvidia/tesla -%dir %{_cross_libdir}/firmware/nvidia/%{tesla_ver} -%dir %{_cross_libdir}/nvidia/tesla -%dir %{_cross_libexecdir}/nvidia/tesla/bin - -# Service files for link/copy/loading drivers -%{_cross_unitdir}/link-tesla-kernel-modules.service -%{_cross_unitdir}/load-tesla-kernel-modules.service -%{_cross_unitdir}/copy-open-gpu-kernel-modules.service -%{_cross_unitdir}/load-open-gpu-kernel-modules.service -%if "%{_cross_arch}" == "x86_64" -%{_cross_unitdir}/copy-grid-kernel-modules.service -%{_cross_unitdir}/load-grid-kernel-modules.service -%endif - -# Binaries -%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-debugdump -%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-smi -%{_cross_libexecdir}/nvidia/tesla/bin/nv-fabricmanager -%{_cross_libexecdir}/nvidia/tesla/bin/nvswitch-audit -%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-persistenced -%{_cross_bindir}/nvidia-debugdump -%{_cross_bindir}/nvidia-smi -%{_cross_bindir}/nv-fabricmanager -%{_cross_bindir}/nvswitch-audit -%{_cross_bindir}/nvidia-persistenced -%{_cross_bindir}/nvidia-modprobe - -# nvswitch topologies -%dir %{_cross_datadir}/nvidia/tesla/nvswitch -%{_cross_datadir}/nvidia/tesla/nvswitch/dgxa100_hgxa100_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/dgx2_hgx2_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/dgxh100_hgxh100_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/dgxh800_hgxh800_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/dgxgh200_hgxgh200_16gpus_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/dgxgh200_hgxgh200_32gpus_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/dgxgh200_hgxgh200_8gpus_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/gb200_nvl36r1_c2g2_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/gb200_nvl36r1_c2g4_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/gb200_nvl4r1_c2g2_etf_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/gb200_nvl576r16_c2g4_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/gb200_nvl72r1_c2g4_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/gb200_nvl72r2_c2g2_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/gb200_nvl72r2_c2g4_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/gb200_nvl8r1_c2g4_etf_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/gb200_nvl8r1_c2g4_etf_nso_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/gh200_nvlink_32gpus_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/mgxh20_nvl16_topology - -# Configuration files -%{_cross_factorydir}%{_cross_sysconfdir}/drivers/nvidia-tesla.toml -%{_cross_factorydir}%{_cross_sysconfdir}/drivers/nvidia-open-gpu.toml -%{_cross_factorydir}%{_cross_sysconfdir}/drivers/nvidia-open-gpu-copy-only.toml -%if "%{_cross_arch}" == "x86_64" -%{_cross_factorydir}%{_cross_sysconfdir}/drivers/nvidia-grid.toml -%{_cross_factorydir}%{_cross_sysconfdir}/drivers/nvidia-grid-copy-only.toml -%endif -%{_cross_factorydir}%{_cross_sysconfdir}/ld.so.conf.d/nvidia-tesla.conf -%{_cross_datadir}/nvidia/open-gpu-supported-devices.json - -# driver -%{_cross_datadir}/nvidia/tesla/module-objects.d/nvidia.mod.o -%{_cross_datadir}/nvidia/tesla/module-objects.d/nv-interface.o -%{_cross_datadir}/nvidia/tesla/module-objects.d/nv-kernel.o - -# uvm -%{_cross_datadir}/nvidia/tesla/module-objects.d/nvidia-uvm.mod.o -%{_cross_datadir}/nvidia/tesla/module-objects.d/nvidia-uvm.o - -# modeset -%{_cross_datadir}/nvidia/tesla/module-objects.d/nv-modeset-interface.o -%{_cross_datadir}/nvidia/tesla/module-objects.d/nv-modeset-kernel.o -%{_cross_datadir}/nvidia/tesla/module-objects.d/nvidia-modeset.mod.o - -# tmpfiles -%{_cross_tmpfilesdir}/nvidia-tesla.conf - -# sysuser files -%{_cross_sysusersdir}/nvidia.conf - -# systemd units -%{_cross_unitdir}/nvidia-persistenced.service - -# ICD / vendor descriptors -%{_cross_datadir}/vulkan/icd.d/nvidia_icd.json -%{_cross_datadir}/vulkan/icd.d/nvidia_layers.json -%{_cross_datadir}/vulkan/implicit_layer.d/nvidia_layers.json -%{_cross_datadir}/glvnd/egl_vendor.d/10_nvidia.json -%{_cross_datadir}/egl/egl_external_platform.d/10_nvidia_wayland.json -%{_cross_datadir}/egl/egl_external_platform.d/15_nvidia_gbm.json - -# We only install the libraries required by all the DRIVER_CAPABILITIES, described here: -# https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/user-guide.html#driver-capabilities - -# Utility libs -%{_cross_libdir}/nvidia/tesla/libnvidia-api.so.1 -%{_cross_libdir}/nvidia/tesla/libnvidia-ml.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-ml.so.1 -%{_cross_libdir}/nvidia/tesla/libnvidia-cfg.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-cfg.so.1 -%{_cross_libdir}/nvidia/tesla/libnvidia-nvvm.so.4 -%{_cross_libdir}/nvidia/tesla/libnvidia-nvvm.so.%{tesla_ver} - -# Compute libs -%{_cross_libdir}/nvidia/tesla/libcuda.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libcuda.so.1 -%{_cross_libdir}/nvidia/tesla/libcudadebugger.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libcudadebugger.so.1 -%{_cross_libdir}/nvidia/tesla/libnvidia-opencl.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-opencl.so.1 -%{_cross_libdir}/nvidia/tesla/libnvidia-ptxjitcompiler.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-ptxjitcompiler.so.1 -%{_cross_libdir}/nvidia/tesla/libnvidia-allocator.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-allocator.so.1 -%{_cross_libdir}/nvidia/tesla/libOpenCL.so.1.0.0 -%{_cross_libdir}/nvidia/tesla/libOpenCL.so.1 -%{_cross_libdir}/nvidia/tesla/libnvidia-gpucomp.so.%{tesla_ver} -%if "%{_cross_arch}" == "x86_64" -%{_cross_libdir}/nvidia/tesla/libnvidia-pkcs11.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-pkcs11-openssl3.so.%{tesla_ver} -%endif - -# Video libs -%{_cross_libdir}/nvidia/tesla/libvdpau_nvidia.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libvdpau_nvidia.so.1 -%{_cross_libdir}/nvidia/tesla/libnvidia-encode.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-encode.so.1 -%{_cross_libdir}/nvidia/tesla/libnvidia-opticalflow.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-opticalflow.so.1 -%{_cross_libdir}/nvidia/tesla/libnvcuvid.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvcuvid.so.1 - -# Graphics libs -%{_cross_libdir}/nvidia/tesla/libnvidia-eglcore.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-glcore.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-tls.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-glsi.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-rtcore.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-fbc.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-fbc.so.1 -%{_cross_libdir}/nvidia/tesla/libnvoptix.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvoptix.so.1 - -# Graphics GLVND libs -%{_cross_libdir}/nvidia/tesla/libnvidia-glvkspirv.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libGLX_nvidia.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libGLX_nvidia.so.0 -%{_cross_libdir}/nvidia/tesla/libEGL_nvidia.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libEGL_nvidia.so.0 -%{_cross_libdir}/nvidia/tesla/libGLESv2_nvidia.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libGLESv2_nvidia.so.2 -%{_cross_libdir}/nvidia/tesla/libGLESv1_CM_nvidia.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libGLESv1_CM_nvidia.so.1 - -# Graphics compat -%{_cross_libdir}/nvidia/tesla/libEGL.so.1.1.0 -%{_cross_libdir}/nvidia/tesla/libEGL.so.1 -%{_cross_libdir}/nvidia/tesla/libEGL.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libGL.so.1.7.0 -%{_cross_libdir}/nvidia/tesla/libGL.so.1 -%{_cross_libdir}/nvidia/tesla/libGLESv1_CM.so.1.2.0 -%{_cross_libdir}/nvidia/tesla/libGLESv1_CM.so.1 -%{_cross_libdir}/nvidia/tesla/libGLESv2.so.2.1.0 -%{_cross_libdir}/nvidia/tesla/libGLESv2.so.2 - -# NGX -%{_cross_libdir}/nvidia/tesla/libnvidia-ngx.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-ngx.so.1 - -# Firmware -%{_cross_libdir}/firmware/nvidia/%{tesla_ver}/gsp_ga10x.bin -%{_cross_libdir}/firmware/nvidia/%{tesla_ver}/gsp_tu10x.bin - -# Neither nvidia-peermem nor nvidia-drm are included in driver container images, we exclude them -# for now, and we will add them if requested -%exclude %{_cross_datadir}/nvidia/tesla/module-objects.d/nvidia-peermem.mod.o -%exclude %{_cross_datadir}/nvidia/tesla/module-objects.d/nvidia-peermem.o -%exclude %{_cross_datadir}/nvidia/tesla/module-objects.d/nvidia-drm.mod.o -%exclude %{_cross_datadir}/nvidia/tesla/module-objects.d/nvidia-drm.o - -%if "%{_cross_arch}" == "x86_64" -%exclude %{_cross_libexecdir}/nvidia/tesla/bin/nvidia-ngx-updater -%exclude %{_cross_bindir}/nvidia-ngx-updater -%endif - -# None of these libraries are required by libnvidia-container, so they -# won't be used by a containerized workload -%exclude %{_cross_libdir}/nvidia/tesla/libGLX.so.0 -%exclude %{_cross_libdir}/nvidia/tesla/libGLdispatch.so.0 -%exclude %{_cross_libdir}/nvidia/tesla/libOpenGL.so.0 -%exclude %{_cross_libdir}/nvidia/tesla/libglxserver_nvidia.so.%{tesla_ver} -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-gtk2.so.%{tesla_ver} -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-gtk3.so.%{tesla_ver} -%exclude %{_cross_libdir}/nvidia/tesla/nvidia_drv.so -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-egl-wayland.so.1 -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-egl-gbm.so.1 -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-egl-gbm.so.1.1.2 -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-egl-wayland.so.1.1.20 -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-egl-xcb.so.1 -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-egl-xcb.so.1.0.4 -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-egl-xlib.so.1 -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-egl-xlib.so.1.0.4 -%if "%{_cross_arch}" == "x86_64" -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-sandboxutils.so.1 -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-sandboxutils.so.%{tesla_ver} -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-vksc-core.so.1 -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-vksc-core.so.%{tesla_ver} -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-wayland-client.so.%{tesla_ver} -%endif - -%files open-gpu -%license COPYING -%dir %{_cross_datadir}/nvidia/open-gpu/drivers -%dir %{_cross_factorydir}/nvidia/open-gpu - -%{_cross_datadir}/nvidia/open-gpu/drivers/nvidia.ko -%{_cross_datadir}/nvidia/open-gpu/drivers/nvidia-uvm.ko -%{_cross_datadir}/nvidia/open-gpu/drivers/nvidia-modeset.ko -%{_cross_datadir}/nvidia/open-gpu/drivers/nvidia-drm.ko -%{_cross_datadir}/nvidia/open-gpu/drivers/nvidia-peermem.ko - -# GRID driver files -%if "%{_cross_arch}" == "x86_64" -%files grid -%license COPYING -%license NvidiaGridAWSUserLicenseAgreement.DOCX -%license NVIDIA-Linux-x86_64-%{tesla_ver}-grid-aws/grid-third-party-licenses.txt -%dir %{_cross_datadir}/nvidia/grid/drivers -%dir %{_cross_factorydir}/nvidia/grid -%{_cross_bindir}/nvidia-gridd -%{_cross_factorydir}%{_cross_sysconfdir}/nvidia/gridd.conf -%{_cross_unitdir}/nvidia-gridd.service -%{_cross_unitdir}/grid-license-check.service -%{_cross_unitdir}/grid-license-check.timer -%{_cross_unitdir}/open-gpu-license-fallback.service -%{_cross_unitdir}/tesla-license-fallback.service -%{_cross_unitdir}/nvidia-k8s-device-plugin.service.d/grid-license-file-check.conf - -%{_cross_datadir}/nvidia/grid/drivers/nvidia.ko -%{_cross_datadir}/nvidia/grid/drivers/nvidia-uvm.ko -%{_cross_datadir}/nvidia/grid/drivers/nvidia-modeset.ko -%{_cross_datadir}/nvidia/grid/drivers/nvidia-drm.ko -%{_cross_datadir}/nvidia/grid/drivers/nvidia-peermem.ko -%endif - -%files fabricmanager -%{_cross_factorydir}%{_cross_sysconfdir}/nvidia/fabricmanager.cfg -%{_cross_factorydir}%{_cross_sysconfdir}/nvidia/fabricmanager.env -%{_cross_unitdir}/nvidia-fabricmanager.service - -%files mps -%{_cross_bindir}/nvidia-cuda-mps-control -%{_cross_bindir}/nvidia-cuda-mps-server -%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-cuda-mps-control -%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-cuda-mps-server diff --git a/packages/kmod-6.1-nvidia-r570/link-tesla-kernel-modules.service.in b/packages/kmod-6.1-nvidia-r570/link-tesla-kernel-modules.service.in deleted file mode 100644 index 996b9f98..00000000 --- a/packages/kmod-6.1-nvidia-r570/link-tesla-kernel-modules.service.in +++ /dev/null @@ -1,19 +0,0 @@ -[Unit] -Description=Link Tesla kernel modules -RequiresMountsFor=PREFIX/lib/modules PREFIX/src/kernels -# Rerunning this service after the system is fully loaded will override -# the already linked kernel modules. This doesn't affect the running system, -# since kernel modules are linked early in the boot sequence, but we still -# disable manual restarts to prevent unnecessary kernel modules rewrites. -RefuseManualStart=true -RefuseManualStop=true - -[Service] -Type=oneshot -ExecCondition=/usr/bin/ghostdog match-nvidia-driver tesla -ExecStart=/usr/bin/driverdog --modules-set nvidia-tesla link-modules -RemainAfterExit=true -StandardError=journal+console - -[Install] -RequiredBy=drivers.target diff --git a/packages/kmod-6.1-nvidia-r570/load-grid-kernel-modules.service.in b/packages/kmod-6.1-nvidia-r570/load-grid-kernel-modules.service.in deleted file mode 100644 index c6ca702f..00000000 --- a/packages/kmod-6.1-nvidia-r570/load-grid-kernel-modules.service.in +++ /dev/null @@ -1,19 +0,0 @@ -[Unit] -Description=Load GRID kernel modules -RequiresMountsFor=PREFIX/lib/modules PREFIX/src/kernels -After=copy-grid-kernel-modules.service -Requires=copy-grid-kernel-modules.service -# Disable manual restarts to prevent loading kernel modules -# that weren't linked by the running system -RefuseManualStart=true -RefuseManualStop=true - -[Service] -Type=oneshot -ExecCondition=/usr/bin/ghostdog match-nvidia-driver grid -ExecStart=/usr/bin/driverdog --modules-set nvidia-grid load-modules -RemainAfterExit=true -StandardError=journal+console - -[Install] -RequiredBy=drivers.target diff --git a/packages/kmod-6.1-nvidia-r570/load-open-gpu-kernel-modules.service.in b/packages/kmod-6.1-nvidia-r570/load-open-gpu-kernel-modules.service.in deleted file mode 100644 index fa67fc42..00000000 --- a/packages/kmod-6.1-nvidia-r570/load-open-gpu-kernel-modules.service.in +++ /dev/null @@ -1,19 +0,0 @@ -[Unit] -Description=Load open GPU kernel modules -RequiresMountsFor=PREFIX/lib/modules PREFIX/src/kernels -After=copy-open-gpu-kernel-modules.service -Requires=copy-open-gpu-kernel-modules.service -# Disable manual restarts to prevent loading kernel modules -# that weren't linked by the running system -RefuseManualStart=true -RefuseManualStop=true - -[Service] -Type=oneshot -ExecCondition=/usr/bin/ghostdog match-nvidia-driver open-gpu -ExecStart=/usr/bin/driverdog --modules-set nvidia-open-gpu load-modules -RemainAfterExit=true -StandardError=journal+console - -[Install] -RequiredBy=drivers.target diff --git a/packages/kmod-6.1-nvidia-r570/load-tesla-kernel-modules.service.in b/packages/kmod-6.1-nvidia-r570/load-tesla-kernel-modules.service.in deleted file mode 100644 index b4dbf078..00000000 --- a/packages/kmod-6.1-nvidia-r570/load-tesla-kernel-modules.service.in +++ /dev/null @@ -1,19 +0,0 @@ -[Unit] -Description=Load Tesla kernel modules -RequiresMountsFor=PREFIX/lib/modules PREFIX/src/kernels -After=link-tesla-kernel-modules.service -Requires=link-tesla-kernel-modules.service -# Disable manual restarts to prevent loading kernel modules -# that weren't linked by the running system -RefuseManualStart=true -RefuseManualStop=true - -[Service] -Type=oneshot -ExecCondition=/usr/bin/ghostdog match-nvidia-driver tesla -ExecStart=/usr/bin/driverdog --modules-set nvidia-tesla load-modules -RemainAfterExit=true -StandardError=journal+console - -[Install] -RequiredBy=drivers.target diff --git a/packages/kmod-6.1-nvidia-r570/nvidia-dependencies-modules-load.conf b/packages/kmod-6.1-nvidia-r570/nvidia-dependencies-modules-load.conf deleted file mode 100644 index 86f884a6..00000000 --- a/packages/kmod-6.1-nvidia-r570/nvidia-dependencies-modules-load.conf +++ /dev/null @@ -1,2 +0,0 @@ -i2c_core -ipmi_msghandler diff --git a/packages/kmod-6.1-nvidia-r570/nvidia-fabricmanager.cfg b/packages/kmod-6.1-nvidia-r570/nvidia-fabricmanager.cfg deleted file mode 100644 index 17fe0c90..00000000 --- a/packages/kmod-6.1-nvidia-r570/nvidia-fabricmanager.cfg +++ /dev/null @@ -1,33 +0,0 @@ -# Modern, systemd-aware settings: -# - Log to journal via stderr -# - Keep running in the foreground -LOG_LEVEL=4 -LOG_FILE_NAME= -DAEMONIZE=0 - -# Use Unix domain sockets instead of localhost ports. -UNIX_SOCKET_PATH=/run/nvidia/fabricmanager.sock -FM_CMD_UNIX_SOCKET_PATH=/run/nvidia/fabricmanager-cmd.sock - -# Start Fabric Manager in bare metal or full pass through virtualization mode. -FABRIC_MODE=0 -FABRIC_MODE_RESTART=0 - -# Terminate on NVSwitch and GPU config failure. -FM_STAY_RESIDENT_ON_FAILURES=0 - -# When there is a GPU to NVSwitch NVLink failure, remove the GPU with the failure -# from NVLink P2P capability. -ACCESS_LINK_FAILURE_MODE=0 - -# When there is an NVSwitch to NVSwitch NVLink failure, exit Fabric Manager. -TRUNK_LINK_FAILURE_MODE=0 - -# When there is an NVSwitch failure or an NVSwitch is excluded, abort Fabric Manager. -NVSWITCH_FAILURE_MODE=0 - -# When Fabric Manager service is stopped or terminated, abort all running CUDA jobs. -ABORT_CUDA_JOBS_ON_FM_EXIT=1 - -# Path to topology and database files. -TOPOLOGY_FILE_PATH=/usr/share/nvidia/tesla/nvswitch diff --git a/packages/kmod-6.1-nvidia-r570/nvidia-fabricmanager.service b/packages/kmod-6.1-nvidia-r570/nvidia-fabricmanager.service deleted file mode 100644 index 620b49ae..00000000 --- a/packages/kmod-6.1-nvidia-r570/nvidia-fabricmanager.service +++ /dev/null @@ -1,21 +0,0 @@ -[Unit] -Description=NVIDIA fabric manager service -Wants=modprobe@ib_umad.service -After=modprobe@ib_umad.service nvlsm-online.service -Requires=nvlsm-online.service - -[Service] -EnvironmentFile=/etc/nvidia/fabricmanager.env -EnvironmentFile=-/etc/nvidia/nvlsm.env -ExecStart=/usr/bin/nv-fabricmanager -c /etc/nvidia/fabricmanager.cfg $GUID_ARG -Type=simple -TimeoutSec=0 -RestartSec=5 -Restart=always -RemainAfterExit=true -StandardError=journal+console -SuccessExitStatus=255 -LimitCORE=infinity - -[Install] -WantedBy=multi-user.target diff --git a/packages/kmod-6.1-nvidia-r570/nvidia-grid-config.toml.in b/packages/kmod-6.1-nvidia-r570/nvidia-grid-config.toml.in deleted file mode 100644 index aa80e762..00000000 --- a/packages/kmod-6.1-nvidia-r570/nvidia-grid-config.toml.in +++ /dev/null @@ -1,11 +0,0 @@ -[nvidia-grid] -lib-modules-path = "kernel/drivers/extra/video/nvidia/grid" - -[nvidia-grid.kernel-modules."nvidia.ko"] -copy-source = "__NVIDIA_MODULES__" - -[nvidia-grid.kernel-modules."nvidia-modeset.ko"] -copy-source = "__NVIDIA_MODULES__" - -[nvidia-grid.kernel-modules."nvidia-uvm.ko"] -copy-source = "__NVIDIA_MODULES__" diff --git a/packages/kmod-6.1-nvidia-r570/nvidia-grid-copy-only-config.toml.in b/packages/kmod-6.1-nvidia-r570/nvidia-grid-copy-only-config.toml.in deleted file mode 100644 index c8f250b7..00000000 --- a/packages/kmod-6.1-nvidia-r570/nvidia-grid-copy-only-config.toml.in +++ /dev/null @@ -1,8 +0,0 @@ -[nvidia-grid-copy-only] -lib-modules-path = "kernel/drivers/extra/video/nvidia/grid" - -[nvidia-grid-copy-only.kernel-modules."nvidia-drm.ko"] -copy-source = "__NVIDIA_MODULES__" - -[nvidia-grid-copy-only.kernel-modules."nvidia-peermem.ko"] -copy-source = "__NVIDIA_MODULES__" diff --git a/packages/kmod-6.1-nvidia-r570/nvidia-gridd.service b/packages/kmod-6.1-nvidia-r570/nvidia-gridd.service deleted file mode 100644 index 902aeb60..00000000 --- a/packages/kmod-6.1-nvidia-r570/nvidia-gridd.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=NVIDIA Grid Daemon -Wants=systemd-resolved.service network-online.target nvidia-persistenced.service -After=systemd-resolved.service network-online.target nvidia-persistenced.service - -[Service] -Type=forking -ExecCondition=/usr/bin/ghostdog match-nvidia-driver grid -ExecStart=/usr/bin/nvidia-gridd -ExecStopPost=/bin/rm -rf /var/run/nvidia-gridd - -[Install] -WantedBy=preconfigured.target diff --git a/packages/kmod-6.1-nvidia-r570/nvidia-ld.so.conf.in b/packages/kmod-6.1-nvidia-r570/nvidia-ld.so.conf.in deleted file mode 100644 index f992bf22..00000000 --- a/packages/kmod-6.1-nvidia-r570/nvidia-ld.so.conf.in +++ /dev/null @@ -1 +0,0 @@ -__LIBDIR__/nvidia/tesla/ diff --git a/packages/kmod-6.1-nvidia-r570/nvidia-open-gpu-config.toml.in b/packages/kmod-6.1-nvidia-r570/nvidia-open-gpu-config.toml.in deleted file mode 100644 index 5ae81b71..00000000 --- a/packages/kmod-6.1-nvidia-r570/nvidia-open-gpu-config.toml.in +++ /dev/null @@ -1,11 +0,0 @@ -[nvidia-open-gpu] -lib-modules-path = "kernel/drivers/extra/video/nvidia/open-gpu" - -[nvidia-open-gpu.kernel-modules."nvidia.ko"] -copy-source = "__NVIDIA_MODULES__" - -[nvidia-open-gpu.kernel-modules."nvidia-modeset.ko"] -copy-source = "__NVIDIA_MODULES__" - -[nvidia-open-gpu.kernel-modules."nvidia-uvm.ko"] -copy-source = "__NVIDIA_MODULES__" diff --git a/packages/kmod-6.1-nvidia-r570/nvidia-open-gpu-copy-only-config.toml.in b/packages/kmod-6.1-nvidia-r570/nvidia-open-gpu-copy-only-config.toml.in deleted file mode 100644 index 774867d4..00000000 --- a/packages/kmod-6.1-nvidia-r570/nvidia-open-gpu-copy-only-config.toml.in +++ /dev/null @@ -1,8 +0,0 @@ -[nvidia-open-gpu-copy-only] -lib-modules-path = "kernel/drivers/extra/video/nvidia/open-gpu" - -[nvidia-open-gpu-copy-only.kernel-modules."nvidia-drm.ko"] -copy-source = "__NVIDIA_MODULES__" - -[nvidia-open-gpu-copy-only.kernel-modules."nvidia-peermem.ko"] -copy-source = "__NVIDIA_MODULES__" diff --git a/packages/kmod-6.1-nvidia-r570/nvidia-persistenced.service b/packages/kmod-6.1-nvidia-r570/nvidia-persistenced.service deleted file mode 100644 index bf09163d..00000000 --- a/packages/kmod-6.1-nvidia-r570/nvidia-persistenced.service +++ /dev/null @@ -1,10 +0,0 @@ -[Unit] -Description=NVIDIA Persistence Daemon -After=load-tesla-kernel-modules.service load-open-gpu-kernel-modules.service load-grid-kernel-modules.service - -[Service] -Type=forking -ExecStart=/usr/bin/nvidia-persistenced --user nvidia --verbose - -[Install] -RequiredBy=preconfigured.target diff --git a/packages/kmod-6.1-nvidia-r570/nvidia-sysusers.conf b/packages/kmod-6.1-nvidia-r570/nvidia-sysusers.conf deleted file mode 100644 index 76801d0d..00000000 --- a/packages/kmod-6.1-nvidia-r570/nvidia-sysusers.conf +++ /dev/null @@ -1 +0,0 @@ -u nvidia - "nvidia-persistenced user" diff --git a/packages/kmod-6.1-nvidia-r570/nvidia-tesla-build-config.toml.in b/packages/kmod-6.1-nvidia-r570/nvidia-tesla-build-config.toml.in deleted file mode 100644 index fb74dc51..00000000 --- a/packages/kmod-6.1-nvidia-r570/nvidia-tesla-build-config.toml.in +++ /dev/null @@ -1,18 +0,0 @@ -[nvidia-tesla] -lib-modules-path = "kernel/drivers/extra/video/nvidia/tesla" -objects-source = "__NVIDIA_MODULES__" - -[nvidia-tesla.object-files."nvidia.o"] -link-objects = ["nv-interface.o", "nv-kernel.o"] - -[nvidia-tesla.kernel-modules."nvidia.ko"] -link-objects = ["nvidia.o", "nvidia.mod.o"] - -[nvidia-tesla.object-files."nvidia-modeset.o"] -link-objects = ["nv-modeset-interface.o", "nv-modeset-kernel.o"] - -[nvidia-tesla.kernel-modules."nvidia-modeset.ko"] -link-objects = ["nvidia-modeset.o", "nvidia-modeset.mod.o"] - -[nvidia-tesla.kernel-modules."nvidia-uvm.ko"] -link-objects = ["nvidia-uvm.o", "nvidia-uvm.mod.o"] diff --git a/packages/kmod-6.1-nvidia-r570/nvidia-tesla-tmpfiles.conf b/packages/kmod-6.1-nvidia-r570/nvidia-tesla-tmpfiles.conf deleted file mode 100644 index b7ed04f8..00000000 --- a/packages/kmod-6.1-nvidia-r570/nvidia-tesla-tmpfiles.conf +++ /dev/null @@ -1,6 +0,0 @@ -C /etc/drivers/nvidia-tesla.toml -C /etc/drivers/nvidia-open-gpu.toml -C /etc/drivers/nvidia-open-gpu-copy-only.toml -C /etc/drivers/nvidia-grid.toml -C /etc/drivers/nvidia-grid-copy-only.toml -C /etc/ld.so.conf.d/nvidia-tesla.conf diff --git a/packages/kmod-6.1-nvidia-r570/nvidia-tmpfiles.conf.in b/packages/kmod-6.1-nvidia-r570/nvidia-tmpfiles.conf.in deleted file mode 100644 index 4eb43096..00000000 --- a/packages/kmod-6.1-nvidia-r570/nvidia-tmpfiles.conf.in +++ /dev/null @@ -1,11 +0,0 @@ -R __PREFIX__/lib/modules/__KERNEL_VERSION__/kernel/drivers/extra/video/nvidia/tesla - - - - - -d __PREFIX__/lib/modules/__KERNEL_VERSION__/kernel/drivers/extra/video/nvidia/tesla 0755 root root - - -R __PREFIX__/lib/modules/__KERNEL_VERSION__/kernel/drivers/extra/video/nvidia/open-gpu - - - - - -d __PREFIX__/lib/modules/__KERNEL_VERSION__/kernel/drivers/extra/video/nvidia/open-gpu 0755 root root - - -R __PREFIX__/lib/modules/__KERNEL_VERSION__/kernel/drivers/extra/video/nvidia/grid - - - - - -d __PREFIX__/lib/modules/__KERNEL_VERSION__/kernel/drivers/extra/video/nvidia/grid 0755 root root - - -C /etc/nvidia/fabricmanager.cfg - - - - -C /etc/nvidia/fabricmanager.env - - - - -C /etc/nvidia/gridd.conf - - - - -d /run/nvidia 0700 root root - -D /var/run/nvidia-persistenced 0755 nvidia nvidia - - diff --git a/packages/kmod-6.1-nvidia-r570/open-gpu-license-fallback.service b/packages/kmod-6.1-nvidia-r570/open-gpu-license-fallback.service deleted file mode 100644 index 03a87bd4..00000000 --- a/packages/kmod-6.1-nvidia-r570/open-gpu-license-fallback.service +++ /dev/null @@ -1,14 +0,0 @@ -[Unit] -Description=Open GPU GRID License Check Fallback -RefuseManualStart=true -RefuseManualStop=true - -[Service] -Type=oneshot -ExecCondition=/usr/bin/ghostdog match-nvidia-driver open-gpu -ExecStart=/usr/bin/touch /etc/drivers/.grid-licensed -ExecStart=/usr/bin/systemctl stop grid-license-check.timer --no-block -RemainAfterExit=true - -[Install] -WantedBy=nvidia-k8s-device-plugin.service diff --git a/packages/kmod-6.1-nvidia-r570/tesla-license-fallback.service b/packages/kmod-6.1-nvidia-r570/tesla-license-fallback.service deleted file mode 100644 index 6cbb36a6..00000000 --- a/packages/kmod-6.1-nvidia-r570/tesla-license-fallback.service +++ /dev/null @@ -1,14 +0,0 @@ -[Unit] -Description=Tesla GRID License Check Fallback -RefuseManualStart=true -RefuseManualStop=true - -[Service] -Type=oneshot -ExecCondition=/usr/bin/ghostdog match-nvidia-driver tesla -ExecStart=/usr/bin/touch /etc/drivers/.grid-licensed -ExecStart=/usr/bin/systemctl stop grid-license-check.timer --no-block -RemainAfterExit=true - -[Install] -WantedBy=nvidia-k8s-device-plugin.service diff --git a/packages/kmod-6.12-nvidia-r570/.gitignore b/packages/kmod-6.12-nvidia-r570/.gitignore deleted file mode 100644 index a0b85133..00000000 --- a/packages/kmod-6.12-nvidia-r570/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ -NVidiaEULAforAWS.pdf -NvidiaGridAWSUserLicenseAgreement.DOCX -COPYING -*.rpm diff --git a/packages/kmod-6.12-nvidia-r570/0001-makefile-allow-to-use-any-kernel-arch.patch b/packages/kmod-6.12-nvidia-r570/0001-makefile-allow-to-use-any-kernel-arch.patch deleted file mode 100644 index 264ec235..00000000 --- a/packages/kmod-6.12-nvidia-r570/0001-makefile-allow-to-use-any-kernel-arch.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 8d9bbc893466da39eea9f5b92dc2797cb7d79e12 Mon Sep 17 00:00:00 2001 -From: Shikha Vyaghra -Date: Wed, 8 Jan 2025 19:42:26 +0000 -Subject: [PATCH] makefile: allow to use any kernel arch - -The added check results in failing build for x86_64 architecture when we use -`_cross_karch` in make commands in spec file and fails for aarch64 while -using _cross_arch in the make commands. - -This check has been added recently and do not allow us to use -Kernel_ARCH we want. - -We need different Kernel arch as we do cross builds. - -Signed-off-by: Shikha Vyaghra ---- - kernel-open/Makefile | 10 ---------- - kernel/Makefile | 10 ---------- - 2 files changed, 20 deletions(-) - -diff --git a/kernel-open/Makefile b/kernel-open/Makefile -index 72672c2..187f39e 100644 ---- a/kernel-open/Makefile -+++ b/kernel-open/Makefile -@@ -80,16 +80,6 @@ else - ) - endif - -- KERNEL_ARCH = $(ARCH) -- -- ifneq ($(filter $(ARCH),i386 x86_64),) -- KERNEL_ARCH = x86 -- else -- ifeq ($(filter $(ARCH),arm64 powerpc),) -- $(error Unsupported architecture $(ARCH)) -- endif -- endif -- - NV_KERNEL_MODULES ?= $(wildcard nvidia nvidia-uvm nvidia-vgpu-vfio nvidia-modeset nvidia-drm nvidia-peermem) - NV_KERNEL_MODULES := $(filter-out $(NV_EXCLUDE_KERNEL_MODULES), \ - $(NV_KERNEL_MODULES)) -diff --git a/kernel/Makefile b/kernel/Makefile -index 72672c2..187f39e 100644 ---- a/kernel/Makefile -+++ b/kernel/Makefile -@@ -80,16 +80,6 @@ else - ) - endif - -- KERNEL_ARCH = $(ARCH) -- -- ifneq ($(filter $(ARCH),i386 x86_64),) -- KERNEL_ARCH = x86 -- else -- ifeq ($(filter $(ARCH),arm64 powerpc),) -- $(error Unsupported architecture $(ARCH)) -- endif -- endif -- - NV_KERNEL_MODULES ?= $(wildcard nvidia nvidia-uvm nvidia-vgpu-vfio nvidia-modeset nvidia-drm nvidia-peermem) - NV_KERNEL_MODULES := $(filter-out $(NV_EXCLUDE_KERNEL_MODULES), \ - $(NV_KERNEL_MODULES)) --- -2.40.1 - diff --git a/packages/kmod-6.12-nvidia-r570/Cargo.toml b/packages/kmod-6.12-nvidia-r570/Cargo.toml deleted file mode 100644 index f437fdb4..00000000 --- a/packages/kmod-6.12-nvidia-r570/Cargo.toml +++ /dev/null @@ -1,64 +0,0 @@ -[package] -name = "kmod-6_12-nvidia-r570" -version = "0.1.0" -edition = "2021" -publish = false -build = "../build.rs" - -[lib] -path = "../packages.rs" - -[package.metadata.build-package] -package-name = "kmod-6.12-nvidia-r570" -releases-url = "https://docs.nvidia.com/datacenter/tesla/" - -[[package.metadata.build-package.external-files]] -url = "https://s3.amazonaws.com/EULA/NVidiaEULAforAWS.pdf" -sha512 = "e1926fe99afc3ab5b2f2744fcd53b4046465aefb2793e2e06c4a19455a3fde895e00af1415ff1a5804c32e6a2ed0657e475de63da6c23a0e9c59feeef52f3f58" - -[[package.metadata.build-package.external-files]] -url = "https://aws-nvidia-license-agreement.s3.amazonaws.com/NvidiaGridAWSUserLicenseAgreement.DOCX" -sha512 = "915d76bc26f7b39202883b6f902ebde1194d1f3e45e6c858ee42ac48615e4b315c658ba78d24bd72a3011289c2ea888ee17089f674497f1cba58d0e0c8f37c7a" - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/570.211.01/NVIDIA-Linux-x86_64-570.211.01.run" -sha512 = "3e751d90a8f126e369c5167e2d5ba8b218dd306ccf00907290ae70fb1c3f752f0ad0b973ce356a1a24cd0f19c31a07169cfd5705613a6bbb5918881635650839" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://us.download.nvidia.com/tesla/570.211.01/NVIDIA-Linux-aarch64-570.211.01.run" -sha512 = "22816d8f798d6ce141ff2ce750b5df1ca4fef9b1ba79762157fd7f93c1ea905c74f421dc6ac2b7bf5b383192d2baa735d7a7d240523be815defb68be54c4a6be" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/cuda/repos/amzn2023/x86_64/nvidia-fabric-manager-570.211.01-1.x86_64.rpm" -sha512 = "21be6fdfbda1fabad20cc9a0bdabb1fdbf104e0627bb7cf5b51ca7e5da0608240d665bc8a4f5bf9cde5adc16526c195999f47d4ed79130e7c65cc972f92a5182" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/cuda/repos/amzn2023/sbsa/nvidia-fabric-manager-570.211.01-1.aarch64.rpm" -sha512 = "8e89fd4e7983b2ea430a884bd53e58827020c22e604161501570e21d33128431f14a43b05091f401977ed4da046ceb8f0c5015a200d2ad8877870b426b106398" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://s3.amazonaws.com/ec2-linux-nvidia-drivers/grid-18.6/NVIDIA-Linux-x86_64-570.211.01-grid-aws.run" -sha512 = "940e96ddc744e76a17f7eb196553264b3aaba16bd2f7e20bbd608b4f9958173d24644b7bcba303b8889c875658ce948c07c55d00cf5709bc69b9e21a86188845" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/cuda/repos/amzn2023/x86_64/nvidia-imex-570-570.211.01-1.x86_64.rpm" -sha512 = "608fc066214e0c160067d2c5ba8a5568b094003cd2c054252fb2822fa0742ec52811ce5a05a14d9bfffe32a8070211455cbd70b8d64bf2099cf49cbba0cf7fec" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://developer.download.nvidia.com/compute/cuda/repos/amzn2023/sbsa/nvidia-imex-570-570.211.01-1.aarch64.rpm" -sha512 = "a42e4fa0d306ee6ea8ffd527f678dfc9b25078e12a4438c77e4f8b57ecd7cdf44ea5e97ddb1500013c32907bf0a21284796ae33f1c383f0c224f20fc07058749" -force-upstream = true - -[[package.metadata.build-package.external-files]] -url = "https://raw.githubusercontent.com/NVIDIA/open-gpu-kernel-modules/570/COPYING" -sha512 = "f9cee68cbb12095af4b4e92d01c210461789ef41c70b64efefd6719d0b88468b7a67a3629c432d4d9304c730b5d1a942228a5bcc74a03ab1c411c77c758cd938" -force-upstream = true - -[build-dependencies] -kernel-6_12 = { path = "../kernel-6.12" } diff --git a/packages/kmod-6.12-nvidia-r570/copy-grid-kernel-modules.service.in b/packages/kmod-6.12-nvidia-r570/copy-grid-kernel-modules.service.in deleted file mode 100644 index ee282f2a..00000000 --- a/packages/kmod-6.12-nvidia-r570/copy-grid-kernel-modules.service.in +++ /dev/null @@ -1,20 +0,0 @@ -[Unit] -Description=Copy GRID kernel modules -RequiresMountsFor=PREFIX/lib/modules PREFIX/src/kernels -# Rerunning this service after the system is fully loaded will override -# the already linked kernel modules. This doesn't affect the running system, -# since kernel modules are linked early in the boot sequence, but we still -# disable manual restarts to prevent unnecessary kernel modules rewrites. -RefuseManualStart=true -RefuseManualStop=true - -[Service] -Type=oneshot -ExecCondition=/usr/bin/ghostdog match-nvidia-driver grid -ExecStart=/usr/bin/driverdog --modules-set nvidia-grid link-modules -ExecStart=/usr/bin/driverdog --modules-set nvidia-grid-copy-only link-modules -RemainAfterExit=true -StandardError=journal+console - -[Install] -RequiredBy=drivers.target diff --git a/packages/kmod-6.12-nvidia-r570/copy-open-gpu-kernel-modules.service.in b/packages/kmod-6.12-nvidia-r570/copy-open-gpu-kernel-modules.service.in deleted file mode 100644 index 041ff55d..00000000 --- a/packages/kmod-6.12-nvidia-r570/copy-open-gpu-kernel-modules.service.in +++ /dev/null @@ -1,20 +0,0 @@ -[Unit] -Description=Copy open GPU kernel modules -RequiresMountsFor=PREFIX/lib/modules PREFIX/src/kernels -# Rerunning this service after the system is fully loaded will override -# the already linked kernel modules. This doesn't affect the running system, -# since kernel modules are linked early in the boot sequence, but we still -# disable manual restarts to prevent unnecessary kernel modules rewrites. -RefuseManualStart=true -RefuseManualStop=true - -[Service] -Type=oneshot -ExecCondition=/usr/bin/ghostdog match-nvidia-driver open-gpu -ExecStart=/usr/bin/driverdog --modules-set nvidia-open-gpu link-modules -ExecStart=/usr/bin/driverdog --modules-set nvidia-open-gpu-copy-only link-modules -RemainAfterExit=true -StandardError=journal+console - -[Install] -RequiredBy=drivers.target diff --git a/packages/kmod-6.12-nvidia-r570/fabricmanager.env b/packages/kmod-6.12-nvidia-r570/fabricmanager.env deleted file mode 100644 index 74ec85b2..00000000 --- a/packages/kmod-6.12-nvidia-r570/fabricmanager.env +++ /dev/null @@ -1 +0,0 @@ -GUID_ARG="" diff --git a/packages/kmod-6.12-nvidia-r570/grid-license-check.service b/packages/kmod-6.12-nvidia-r570/grid-license-check.service deleted file mode 100644 index 168d26fe..00000000 --- a/packages/kmod-6.12-nvidia-r570/grid-license-check.service +++ /dev/null @@ -1,19 +0,0 @@ -[Unit] -Description=GRID License Check -RefuseManualStart=true -RefuseManualStop=true -After=nvidia-gridd.service -Requires=nvidia-gridd.service - -[Service] -Type=oneshot -ExecCondition=/usr/bin/ghostdog match-nvidia-driver grid -ExecStart=-/usr/bin/truncate /tmp/.nvidia-gridd-license -ExecStart=/usr/bin/nvidia-smi -q -ExecStart=/usr/bin/grep -q "License Status.*: Licensed" /tmp/.nvidia-gridd-license -ExecStart=/usr/bin/touch /etc/drivers/.grid-licensed -ExecStart=/usr/bin/systemctl stop grid-license-check.timer --no-block -StandardOutput=append:/tmp/.nvidia-gridd-license - -[Install] -WantedBy=nvidia-k8s-device-plugin.service diff --git a/packages/kmod-6.12-nvidia-r570/grid-license-check.timer b/packages/kmod-6.12-nvidia-r570/grid-license-check.timer deleted file mode 100644 index 1a1b26b9..00000000 --- a/packages/kmod-6.12-nvidia-r570/grid-license-check.timer +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=GRID License Check Timer -RefuseManualStart=true - -[Timer] -Unit=grid-license-check.service -OnBootSec=5s -OnUnitActiveSec=2s -AccuracySec=1s - -[Install] -WantedBy=timers.target diff --git a/packages/kmod-6.12-nvidia-r570/grid-license-file-check.conf b/packages/kmod-6.12-nvidia-r570/grid-license-file-check.conf deleted file mode 100644 index 224f0af9..00000000 --- a/packages/kmod-6.12-nvidia-r570/grid-license-file-check.conf +++ /dev/null @@ -1,2 +0,0 @@ -[Service] -ExecStartPre=/usr/bin/test -f /etc/drivers/.grid-licensed diff --git a/packages/kmod-6.12-nvidia-r570/gridd.conf b/packages/kmod-6.12-nvidia-r570/gridd.conf deleted file mode 100644 index 8cd1e86f..00000000 --- a/packages/kmod-6.12-nvidia-r570/gridd.conf +++ /dev/null @@ -1 +0,0 @@ -EnableUI=FALSE diff --git a/packages/kmod-6.12-nvidia-r570/kmod-6.12-nvidia-r570.spec b/packages/kmod-6.12-nvidia-r570/kmod-6.12-nvidia-r570.spec deleted file mode 100644 index 83c0647a..00000000 --- a/packages/kmod-6.12-nvidia-r570/kmod-6.12-nvidia-r570.spec +++ /dev/null @@ -1,789 +0,0 @@ -%global tesla_major 570 -%global tesla_minor 211 -%global tesla_patch 01 -%global tesla_ver %{tesla_major}.%{tesla_minor}.%{tesla_patch} -%global grid_ver grid-18.6 -%if "%{?_cross_arch}" == "aarch64" -%global nvidia_arch sbsa -%else -%global nvidia_arch %{_cross_arch} -%endif - -%global kernel_major 6.12 -%global kernel_sources %{_cross_usrsrc}/kernels/%{kernel_major} - -# With the split of the firmware binary from firmware/gsp.bin to firmware/gsp_ga10x.bin -# and firmware/gsp_tu10x.bin the file format changed from executable to relocatable. -# The __spec_install_post macro will by default try to strip all binary files. -# Unfortunately the strip used is not compatible with the new file format. -# Redefine strip, so that these firmware binaries do not derail the build. -%global __strip /usr/bin/true - -Name: %{_cross_os}kmod-6.12-nvidia-r570 -Version: %{tesla_ver} -Release: 1%{?dist} -Epoch: 1 -Summary: NVIDIA r570 drivers for the 6.12 kernel -# We use these licences because we only ship our own software in the main package, -# each subpackage includes the LICENSE file provided by the Licenses.toml file -License: Apache-2.0 OR MIT -URL: http://www.nvidia.com/ - -# NVIDIA archives and license files from 0 to 199 -# NVIDIA .run scripts for kernel and userspace drivers -Source0: https://us.download.nvidia.com/tesla/%{tesla_ver}/NVIDIA-Linux-x86_64-%{tesla_ver}.run -Source1: https://us.download.nvidia.com/tesla/%{tesla_ver}/NVIDIA-Linux-aarch64-%{tesla_ver}.run -Source2: https://s3.amazonaws.com/ec2-linux-nvidia-drivers/%{grid_ver}/NVIDIA-Linux-x86_64-%{tesla_ver}-grid-aws.run -Source3: NVidiaEULAforAWS.pdf -Source4: COPYING -Source5: NvidiaGridAWSUserLicenseAgreement.DOCX - -# fabricmanager for NVSwitch -Source10: https://developer.download.nvidia.com/compute/cuda/repos/amzn2023/x86_64/nvidia-fabric-manager-%{tesla_ver}-1.x86_64.rpm -Source11: https://developer.download.nvidia.com/compute/cuda/repos/amzn2023/sbsa/nvidia-fabric-manager-%{tesla_ver}-1.aarch64.rpm - -# IMEX for GB200 -Source20: https://developer.download.nvidia.com/compute/cuda/repos/amzn2023/x86_64/nvidia-imex-%{tesla_ver}-1.x86_64.rpm -Source21: https://developer.download.nvidia.com/compute/cuda/repos/amzn2023/sbsa/nvidia-imex-%{tesla_ver}-1.aarch64.rpm - -# Common NVIDIA conf files from 200 to 299 -Source200: nvidia-tmpfiles.conf.in -Source202: nvidia-dependencies-modules-load.conf -Source203: nvidia-fabricmanager.service -Source204: nvidia-fabricmanager.cfg -Source205: nvidia-sysusers.conf -Source206: nvidia-persistenced.service -Source207: fabricmanager.env -Source208: gridd.conf -Source209: nvidia-gridd.service -Source210: grid-license-check.service -Source211: grid-license-check.timer -Source212: open-gpu-license-fallback.service -Source213: tesla-license-fallback.service -Source214: grid-license-file-check.conf - -# NVIDIA tesla conf files from 300 to 399 -Source300: nvidia-tesla-tmpfiles.conf -Source301: nvidia-tesla-build-config.toml.in -Source302: nvidia-ld.so.conf.in - -# Driverdog config templates from 400 to 499 -Source400: nvidia-open-gpu-config.toml.in -Source401: nvidia-open-gpu-copy-only-config.toml.in -Source402: nvidia-grid-config.toml.in -Source403: nvidia-grid-copy-only-config.toml.in - -# Systemd service templates from 500 to 599 -Source500: link-tesla-kernel-modules.service.in -Source501: load-tesla-kernel-modules.service.in -Source502: copy-open-gpu-kernel-modules.service.in -Source503: load-open-gpu-kernel-modules.service.in -Source504: copy-grid-kernel-modules.service.in -Source505: load-grid-kernel-modules.service.in - -Patch001: 0001-makefile-allow-to-use-any-kernel-arch.patch - -BuildRequires: %{_cross_os}kernel-6.12-devel -Requires: %{_cross_os}kernel-6.12 -Requires: %{_cross_os}nvidia-migmanager -Requires: %{name}-tesla -Requires: %{name}-open-gpu -%if "%{_cross_arch}" == "x86_64" -Requires: %{name}-grid -%endif -Requires: %{name}-mps - -%description -%{summary}. - -%package fabricmanager -Summary: NVIDIA fabricmanager config and service files -Requires: %{name}-tesla(fabricmanager) -Requires: %{_cross_os}nvlsm -Requires: %{name}-imex - -%description fabricmanager -%{summary}. - -%package imex -Summary: NVIDIA IMEX config and service files -Requires: %{name} - -%description imex -%{summary}. - -%package open-gpu -Summary: NVIDIA %{tesla_major} Open GPU driver -Version: %{tesla_ver} -License: MIT AND GPL-2.0-only -Requires: %{_cross_os}variant-platform(aws) -Requires: %{name} - -%description open-gpu -%{summary}. - -%if "%{_cross_arch}" == "x86_64" -%package grid -Summary: NVIDIA %{tesla_major} GRID driver -Version: %{tesla_ver} -License: MIT AND GPL-2.0-only AND LicenseRef-NVIDIA-AWS-GRID-EULA -Requires: %{_cross_os}variant-platform(aws) -Requires: %{name} -Requires: %{_cross_os}libstdc++ - -%description grid -%{summary}. -%endif - -%package tesla -Summary: NVIDIA %{tesla_major} Tesla driver -Version: %{tesla_ver} -License: LicenseRef-NVIDIA-AWS-EULA AND GPL-2.0-only -Requires: %{_cross_os}variant-platform(aws) -Requires: %{name} -Requires: %{name}-fabricmanager -Provides: %{name}-tesla(fabricmanager) - -%description tesla -%{summary} - -%package mps -Summary: NVIDIA CUDA Multi-Process Service -Requires: %{name} - -%description mps -%{summary}. - -%prep -# Extract nvidia sources with `-x`, otherwise the script will try to install -# the driver in the current run -sh %{_sourcedir}/NVIDIA-Linux-%{_cross_arch}-%{tesla_ver}.run -x -# Move to the sources directory and apply patch -pushd NVIDIA-Linux-%{_cross_arch}-%{tesla_ver} -%patch 1 -p1 -popd - -# Extract GRID drivers just like Tesla -%if "%{_cross_arch}" == "x86_64" -sh %{_sourcedir}/NVIDIA-Linux-x86_64-%{tesla_ver}-grid-aws.run -x -pushd NVIDIA-Linux-x86_64-%{tesla_ver}-grid-aws -%patch 1 -p1 -popd -%endif - -# Extract fabricmanager from the rpm via cpio rather than `%%setup` since the -# correct source is architecture-dependent. -mkdir fabricmanager-linux-%{nvidia_arch}-%{tesla_ver}-archive -rpm2cpio %{_sourcedir}/nvidia-fabric-manager-%{tesla_ver}-1.%{_cross_arch}.rpm | cpio -idmV -D fabricmanager-linux-%{nvidia_arch}-%{tesla_ver}-archive - -# Add the license. -install -p -m 0644 %{S:3} %{S:4} %{S:5} . - -# Extract imex from the rpm via cpio rather than `%%setup` since the -# correct source is architecture-dependent. -mkdir imex-%{nvidia_arch}-%{tesla_ver}-archive -rpm2cpio %{_sourcedir}/nvidia-imex-%{tesla_major}-%{tesla_ver}-1.%{_cross_arch}.rpm | cpio -idmV -D imex-%{nvidia_arch}-%{tesla_ver}-archive - -# This recipe was based in the NVIDIA yum/dnf specs: -# https://github.com/NVIDIA/yum-packaging-precompiled-kmod - -# Begin open driver build -pushd NVIDIA-Linux-%{_cross_arch}-%{tesla_ver}/kernel-open - -# We set IGNORE_CC_MISMATCH even though we are using the same compiler used to -# compile the kernel, if we don't set this flag the compilation fails -make %{?_smp_mflags} ARCH=%{_cross_karch} IGNORE_CC_MISMATCH=1 SYSSRC=%{kernel_sources} CC=%{_cross_target}-gcc LD=%{_cross_target}-ld - -# Strip symbols out of the .ko files -for module in *.ko; do - %{_cross_target}-strip -g --strip-unneeded "${module}" -done - -# end open driver build -popd - -# Begin proprietary driver build -pushd NVIDIA-Linux-%{_cross_arch}-%{tesla_ver}/kernel - -# We set IGNORE_CC_MISMATCH even though we are using the same compiler used to -# compile the kernel, if we don't set this flag the compilation fails -make %{?_smp_mflags} ARCH=%{_cross_karch} IGNORE_CC_MISMATCH=1 SYSSRC=%{kernel_sources} CC=%{_cross_target}-gcc LD=%{_cross_target}-ld - -%{_cross_target}-strip -g --strip-unneeded nvidia/nv-interface.o -%{_cross_target}-strip -g --strip-unneeded nvidia-uvm.o -%{_cross_target}-strip -g --strip-unneeded nvidia-drm.o -%{_cross_target}-strip -g --strip-unneeded nvidia-peermem/nvidia-peermem.o -%{_cross_target}-strip -g --strip-unneeded nvidia-modeset/nv-modeset-interface.o - -# We delete these files since we just stripped the input .o files above, and -# will be build at runtime in the host -rm nvidia{,-modeset,-peermem}.o - -# Delete the .ko files created in make command, just to be safe that we -# don't include any linked module in the base image -rm nvidia{,-modeset,-peermem,-drm}.ko - -# End proprietary driver build -popd - -%if "%{_cross_arch}" == "x86_64" -# Begin GRID build -pushd NVIDIA-Linux-%{_cross_arch}-%{tesla_ver}-grid-aws/kernel-open - -# We set IGNORE_CC_MISMATCH even though we are using the same compiler used to -# compile the kernel, if we don't set this flag the compilation fails -make %{?_smp_mflags} ARCH=%{_cross_karch} IGNORE_CC_MISMATCH=1 SYSSRC=%{kernel_sources} CC=%{_cross_target}-gcc LD=%{_cross_target}-ld - -# Strip symbols out of the .ko files -for module in *.ko; do - %{_cross_target}-strip -g --strip-unneeded "${module}" -done - -# End GRID build -popd -%endif - -# Grab the list of supported devices -pushd NVIDIA-Linux-%{_cross_arch}-%{tesla_ver}/supported-gpus -# We want to grab all the `kernelopen` enabled chips except for this list that -# is best held back to the proprietary driver -# 10de:1db1 is V100-16G (P3dn) -# 10de:1db5 is V100-32G (P3dn) -# 10de:1eb8 is T4 (G4dn) -# 10de:1eb4 is T4G (G5g) -# 10de:2237 is A10G (G5) -jq -r '.chips[] | select(.features[] | contains("kernelopen")) | -select(.devid != "0x1DB1" -and .devid != "0x1DB5" -and .devid != "0x1DEB8" -and .devid != "0x1EB4" -and .devid != "0x2237")' supported-gpus.json | jq -s '{"open-gpu": .}' > open-gpu-supported-devices.json -# confirm "NVIDIA H100" is in the resulting file to catch shape changes -jq -e '."open-gpu"[] | select(."devid" == "0x2330") | ."features"| index("kernelopen")' open-gpu-supported-devices.json -popd - -%install -install -d %{buildroot}%{_cross_libdir} -install -d %{buildroot}%{_cross_tmpfilesdir} -install -d %{buildroot}%{_cross_unitdir} -install -d %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/{drivers,ld.so.conf.d} -install -d %{buildroot}%{_cross_sysusersdir} -install -d %{buildroot}%{_cross_bindir} - -sed \ - -e "s|__KERNEL_VERSION__|%{kernel_major}|" \ - -e "s|__PREFIX__|%{_cross_prefix}|" %{S:200} > nvidia.conf -install -p -m 0644 nvidia.conf %{buildroot}%{_cross_tmpfilesdir} - -# Install modules-load.d drop-in to autoload required kernel modules -install -d %{buildroot}%{_cross_libdir}/modules-load.d -install -p -m 0644 %{S:202} %{buildroot}%{_cross_libdir}/modules-load.d/nvidia-dependencies.conf - -# NVIDIA fabric manager service unit and config -install -p -m 0644 %{S:203} %{buildroot}%{_cross_unitdir} -install -d %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/nvidia -install -p -m 0644 %{S:204} %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/nvidia/fabricmanager.cfg -install -p -m 0644 %{S:207} %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/nvidia/fabricmanager.env - -# Begin NVIDIA tesla driver -pushd NVIDIA-Linux-%{_cross_arch}-%{tesla_ver} -# Proprietary driver -install -d %{buildroot}%{_cross_bindir} -install -d %{buildroot}%{_cross_libexecdir}/nvidia/tesla/bin -install -d %{buildroot}%{_cross_libdir}/nvidia/tesla -install -d %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d -install -d %{buildroot}%{_cross_factorydir}/nvidia/tesla -install -d %{buildroot}%{_cross_factorydir}/nvidia/open-gpu -%if "%{_cross_arch}" == "x86_64" -install -d %{buildroot}%{_cross_factorydir}/nvidia/grid -%endif -install -d %{buildroot}%{_cross_datadir}/nvidia/open-gpu/drivers - -install -m 0644 %{S:300} %{buildroot}%{_cross_tmpfilesdir}/nvidia-tesla.conf -sed -e 's|__NVIDIA_MODULES__|%{_cross_datadir}/nvidia/tesla/module-objects.d/|' %{S:301} > \ - nvidia-tesla.toml -install -m 0644 nvidia-tesla.toml %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/drivers -sed -e 's|__NVIDIA_MODULES__|%{_cross_datadir}/nvidia/open-gpu/drivers/|' %{S:400} > \ - nvidia-open-gpu.toml -install -m 0644 nvidia-open-gpu.toml %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/drivers -sed -e 's|__NVIDIA_MODULES__|%{_cross_datadir}/nvidia/open-gpu/drivers/|' %{S:401} > \ - nvidia-open-gpu-copy-only.toml -install -m 0644 nvidia-open-gpu-copy-only.toml %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/drivers - -%if "%{_cross_arch}" == "x86_64" -sed -e 's|__NVIDIA_MODULES__|%{_cross_datadir}/nvidia/grid/drivers/|' %{S:402} > \ - nvidia-grid.toml -install -m 0644 nvidia-grid.toml %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/drivers -sed -e 's|__NVIDIA_MODULES__|%{_cross_datadir}/nvidia/grid/drivers/|' %{S:403} > \ - nvidia-grid-copy-only.toml -install -m 0644 nvidia-grid-copy-only.toml %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/drivers -%endif -# We need to add `_cross_libdir` to the paths loaded by the ldconfig service -# because libnvidia-container uses the `ldcache` file created by the service, -# to locate and mount the libraries into the containers -sed -e 's|__LIBDIR__|%{_cross_libdir}|' %{S:302} > nvidia-tesla.conf -install -m 0644 nvidia-tesla.conf %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/ld.so.conf.d/ - -# Services to link/copy/load modules -sed -e 's|PREFIX|%{_cross_prefix}|g' %{S:500} > link-tesla-kernel-modules.service -sed -e 's|PREFIX|%{_cross_prefix}|g' %{S:501} > load-tesla-kernel-modules.service -install -p -m 0644 \ - link-tesla-kernel-modules.service \ - load-tesla-kernel-modules.service \ - %{buildroot}%{_cross_unitdir} - -sed -e 's|PREFIX|%{_cross_prefix}|g' %{S:502} > copy-open-gpu-kernel-modules.service -sed -e 's|PREFIX|%{_cross_prefix}|g' %{S:503} > load-open-gpu-kernel-modules.service -install -p -m 0644 \ - copy-open-gpu-kernel-modules.service \ - load-open-gpu-kernel-modules.service \ - %{buildroot}%{_cross_unitdir} - -%if "%{_cross_arch}" == "x86_64" -sed -e 's|PREFIX|%{_cross_prefix}|g' %{S:504} > copy-grid-kernel-modules.service -sed -e 's|PREFIX|%{_cross_prefix}|g' %{S:505} > load-grid-kernel-modules.service -install -p -m 0644 \ - copy-grid-kernel-modules.service \ - load-grid-kernel-modules.service \ - %{buildroot}%{_cross_unitdir} -%endif - -# proprietary driver -install kernel/nvidia.mod.o %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d -install kernel/nvidia/nv-interface.o %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d -install kernel/nvidia/nv-kernel.o_binary %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d/nv-kernel.o - -# module-common object -install kernel/.module-common.o %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d/.module-common.o - -# uvm -install kernel/nvidia-uvm.mod.o %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d -install kernel/nvidia-uvm.o %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d - -# modeset -install kernel/nvidia-modeset.mod.o %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d -install kernel/nvidia-modeset/nv-modeset-interface.o %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d -install kernel/nvidia-modeset/nv-modeset-kernel.o %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d - -# peermem -install kernel/nvidia-peermem.mod.o %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d -install kernel/nvidia-peermem/nvidia-peermem.o %{buildroot}%{_cross_datadir}/nvidia/tesla/module-objects.d - -# drm -install kernel/nvidia-drm.mod.o %{buildroot}/%{_cross_datadir}/nvidia/tesla/module-objects.d -install kernel/nvidia-drm.o %{buildroot}/%{_cross_datadir}/nvidia/tesla/module-objects.d - -# open driver -install -d %{buildroot}%{_cross_datadir}/nvidia/open-gpu/drivers/ -install kernel-open/nvidia.ko %{buildroot}%{_cross_datadir}/nvidia/open-gpu/drivers/ - -# add various vulkan icd/config -install -d %{buildroot}%{_cross_datadir}/vulkan/icd.d -install -d %{buildroot}%{_cross_datadir}/vulkan/implicit_layer.d -install -m 0644 nvidia_icd.json %{buildroot}%{_cross_datadir}/vulkan/icd.d/nvidia_icd.json -install -m 0644 nvidia_layers.json %{buildroot}%{_cross_datadir}/vulkan/icd.d/nvidia_layers.json -install -d %{buildroot}%{_cross_datadir}/glvnd/egl_vendor.d -install -m 0644 10_nvidia.json %{buildroot}%{_cross_datadir}/glvnd/egl_vendor.d/10_nvidia.json -install -d %{buildroot}%{_cross_datadir}/egl/egl_external_platform.d -install -m 0644 10_nvidia_wayland.json %{buildroot}%{_cross_datadir}/egl/egl_external_platform.d/10_nvidia_wayland.json -install -m 0644 15_nvidia_gbm.json %{buildroot}%{_cross_datadir}/egl/egl_external_platform.d/15_nvidia_gbm.json -ln -rs %{buildroot}%{_cross_datadir}/vulkan/icd.d/nvidia_layers.json %{buildroot}%{_cross_datadir}/vulkan/implicit_layer.d/nvidia_layers.json - -# uvm -install kernel-open/nvidia-uvm.ko %{buildroot}%{_cross_datadir}/nvidia/open-gpu/drivers/ - -# modeset -install kernel-open/nvidia-modeset.ko %{buildroot}%{_cross_datadir}/nvidia/open-gpu/drivers/ - -# peermem -install kernel-open/nvidia-peermem.ko %{buildroot}%{_cross_datadir}/nvidia/open-gpu/drivers/ - -# drm -install kernel-open/nvidia-drm.ko %{buildroot}%{_cross_datadir}/nvidia/open-gpu/drivers/ -# end open driver - -%if "%{_cross_arch}" == "x86_64" -# GRID driver -pushd ../NVIDIA-Linux-x86_64-%{tesla_ver}-grid-aws -install -d %{buildroot}%{_cross_datadir}/nvidia/grid/drivers/ -install kernel-open/nvidia.ko %{buildroot}%{_cross_datadir}/nvidia/grid/drivers/ - -# uvm -install kernel-open/nvidia-uvm.ko %{buildroot}%{_cross_datadir}/nvidia/grid/drivers/ - -# modeset -install kernel-open/nvidia-modeset.ko %{buildroot}%{_cross_datadir}/nvidia/grid/drivers/ - -# peermem -install kernel-open/nvidia-peermem.ko %{buildroot}%{_cross_datadir}/nvidia/grid/drivers/ - -# drm -install kernel-open/nvidia-drm.ko %{buildroot}%{_cross_datadir}/nvidia/grid/drivers/ - -# Install nvidia-gridd and related files -install -m 755 nvidia-gridd %{buildroot}%{_cross_bindir}/nvidia-gridd -install -m 644 %{S:208} %{buildroot}%{_cross_factorydir}%{_cross_sysconfdir}/nvidia/gridd.conf -install -p -m 0644 %{S:209} %{S:210} %{S:211} %{S:212} %{S:213} %{buildroot}%{_cross_unitdir} -install -d %{buildroot}%{_cross_unitdir}/nvidia-k8s-device-plugin.service.d -install -p -m 0644 %{S:214} %{buildroot}%{_cross_unitdir}/nvidia-k8s-device-plugin.service.d -popd -# End GRID driver -%endif - -# Binaries -install -m 755 nvidia-smi %{buildroot}%{_cross_bindir} -install -m 755 nvidia-debugdump %{buildroot}%{_cross_bindir} -install -m 755 nvidia-cuda-mps-control %{buildroot}%{_cross_bindir} -install -m 755 nvidia-cuda-mps-server %{buildroot}%{_cross_bindir} -install -m 755 nvidia-persistenced %{buildroot}%{_cross_bindir} -install -m 4755 nvidia-modprobe %{buildroot}%{_cross_bindir} -install -m 755 nvoptix.bin %{buildroot}%{_cross_datadir}/nvidia/ -ln -rs %{buildroot}%{_cross_bindir}/nvidia-smi %{buildroot}%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-smi -ln -rs %{buildroot}%{_cross_bindir}/nvidia-debugdump %{buildroot}%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-debugdump -ln -rs %{buildroot}%{_cross_bindir}/nvidia-cuda-mps-control %{buildroot}%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-cuda-mps-control -ln -rs %{buildroot}%{_cross_bindir}/nvidia-cuda-mps-server %{buildroot}%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-cuda-mps-server -ln -rs %{buildroot}%{_cross_bindir}/nvidia-persistenced %{buildroot}%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-persistenced -%if "%{_cross_arch}" == "x86_64" -install -m 755 nvidia-ngx-updater %{buildroot}%{_cross_bindir} -ln -rs %{buildroot}%{_cross_bindir}/nvidia-ngx-updater %{buildroot}%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-ngx-updater -%endif - -# Users -install -m 0644 %{S:205} %{buildroot}%{_cross_sysusersdir}/nvidia.conf - -# Systemd units -install -m 0644 %{S:206} %{buildroot}%{_cross_unitdir} - -# We install all the libraries, and filter them out in the 'files' section, -# so we can catch when new libraries are added -install -m 755 *.so* %{buildroot}/%{_cross_libdir}/nvidia/tesla/ - -# This library has the same SONAME as libEGL.so.1.1.0, this will cause -# collisions while the symlinks are created. For now, we only symlink -# libEGL.so.1.1.0. -EXCLUDED_LIBS="libEGL.so.%{tesla_ver}" - -for lib in $(find . -maxdepth 1 -type f -name 'lib*.so.*' -printf '%%P\n'); do - [[ "${EXCLUDED_LIBS}" =~ "${lib}" ]] && continue - soname="$(%{_cross_target}-readelf -d "${lib}" | awk '/SONAME/{print $5}' | tr -d '[]')" - [ -n "${soname}" ] || continue - [ "${lib}" == "${soname}" ] && continue - ln -s "${lib}" %{buildroot}/%{_cross_libdir}/nvidia/tesla/"${soname}" -done - -# Include the firmware file for GSP support -install -d %{buildroot}%{_cross_libdir}/firmware/nvidia/%{tesla_ver} -install -p -m 0644 firmware/gsp_ga10x.bin %{buildroot}%{_cross_libdir}/firmware/nvidia/%{tesla_ver} -install -p -m 0644 firmware/gsp_tu10x.bin %{buildroot}%{_cross_libdir}/firmware/nvidia/%{tesla_ver} - -# Include the open driver supported devices file for runtime matching of the -# driver. This is consumed by ghostdog to match the driver to this list -install -p -m 0644 supported-gpus/open-gpu-supported-devices.json %{buildroot}%{_cross_datadir}/nvidia/open-gpu-supported-devices.json - -popd - -# Begin NVIDIA fabric manager binaries and topologies -pushd fabricmanager-linux-%{nvidia_arch}-%{tesla_ver}-archive -install -p -m 0755 usr/bin/nv-fabricmanager %{buildroot}%{_cross_bindir} -install -p -m 0755 usr/bin/nvswitch-audit %{buildroot}%{_cross_bindir} -ln -rs %{buildroot}%{_cross_bindir}/nv-fabricmanager %{buildroot}%{_cross_libexecdir}/nvidia/tesla/bin/nv-fabricmanager -ln -rs %{buildroot}%{_cross_bindir}/nvswitch-audit %{buildroot}%{_cross_libexecdir}/nvidia/tesla/bin/nvswitch-audit - -install -d %{buildroot}%{_cross_datadir}/nvidia/tesla/nvswitch -for t in usr/share/nvidia/nvswitch/*_topology ; do - install -p -m 0644 "${t}" %{buildroot}%{_cross_datadir}/nvidia/tesla/nvswitch -done - -popd - -# Begin IMEX binaries and configuration files -pushd imex-%{nvidia_arch}-%{tesla_ver}-archive -install -p -m 0755 usr/bin/nvidia-imex %{buildroot}%{_cross_bindir} -install -p -m 0755 usr/bin/nvidia-imex-ctl %{buildroot}%{_cross_bindir} - -popd - -%files -%{_cross_attribution_file} -%dir %{_cross_libexecdir}/nvidia -%dir %{_cross_libdir}/nvidia -%dir %{_cross_datadir}/nvidia -%dir %{_cross_libdir}/modules-load.d -%dir %{_cross_factorydir}%{_cross_sysconfdir}/drivers -%dir %{_cross_factorydir}%{_cross_sysconfdir}/nvidia -%{_cross_tmpfilesdir}/nvidia.conf -%{_cross_libdir}/modules-load.d/nvidia-dependencies.conf - -%files tesla -%license NVidiaEULAforAWS.pdf -%license fabricmanager-linux-%{nvidia_arch}-%{tesla_ver}-archive/usr/share/doc/nvidia-fabricmanager/third-party-notices.txt -%dir %{_cross_datadir}/egl -%dir %{_cross_datadir}/egl/egl_external_platform.d -%dir %{_cross_datadir}/glvnd -%dir %{_cross_datadir}/glvnd/egl_vendor.d -%dir %{_cross_datadir}/nvidia/tesla -%dir %{_cross_datadir}/nvidia/tesla/module-objects.d -%dir %{_cross_datadir}/vulkan -%dir %{_cross_datadir}/vulkan/icd.d -%dir %{_cross_datadir}/vulkan/implicit_layer.d -%dir %{_cross_factorydir}/nvidia/tesla -%dir %{_cross_libdir}/firmware/nvidia/%{tesla_ver} -%dir %{_cross_libdir}/nvidia/tesla -%dir %{_cross_libexecdir}/nvidia/tesla/bin - -# Service files for link/copy/loading drivers -%{_cross_unitdir}/link-tesla-kernel-modules.service -%{_cross_unitdir}/load-tesla-kernel-modules.service -%{_cross_unitdir}/copy-open-gpu-kernel-modules.service -%{_cross_unitdir}/load-open-gpu-kernel-modules.service -%if "%{_cross_arch}" == "x86_64" -%{_cross_unitdir}/copy-grid-kernel-modules.service -%{_cross_unitdir}/load-grid-kernel-modules.service -%endif - -# Binaries -%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-debugdump -%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-smi -%{_cross_libexecdir}/nvidia/tesla/bin/nv-fabricmanager -%{_cross_libexecdir}/nvidia/tesla/bin/nvswitch-audit -%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-persistenced -%{_cross_bindir}/nvidia-debugdump -%{_cross_bindir}/nvidia-smi -%{_cross_bindir}/nv-fabricmanager -%{_cross_bindir}/nvswitch-audit -%{_cross_bindir}/nvidia-persistenced -%{_cross_bindir}/nvidia-modprobe - -# nvswitch topologies -%dir %{_cross_datadir}/nvidia/tesla/nvswitch -%{_cross_datadir}/nvidia/tesla/nvswitch/dgxa100_hgxa100_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/dgx2_hgx2_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/dgxh100_hgxh100_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/dgxh800_hgxh800_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/dgxgh200_hgxgh200_16gpus_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/dgxgh200_hgxgh200_32gpus_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/dgxgh200_hgxgh200_8gpus_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/gb200_nvl36r1_c2g2_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/gb200_nvl36r1_c2g4_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/gb200_nvl4r1_c2g2_etf_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/gb200_nvl576r16_c2g4_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/gb200_nvl72r1_c2g4_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/gb200_nvl72r2_c2g2_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/gb200_nvl72r2_c2g4_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/gb200_nvl8r1_c2g4_etf_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/gb200_nvl8r1_c2g4_etf_nso_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/gh200_nvlink_32gpus_topology -%{_cross_datadir}/nvidia/tesla/nvswitch/mgxh20_nvl16_topology - -# Configuration files -%{_cross_factorydir}%{_cross_sysconfdir}/drivers/nvidia-tesla.toml -%{_cross_factorydir}%{_cross_sysconfdir}/drivers/nvidia-open-gpu.toml -%{_cross_factorydir}%{_cross_sysconfdir}/drivers/nvidia-open-gpu-copy-only.toml -%if "%{_cross_arch}" == "x86_64" -%{_cross_factorydir}%{_cross_sysconfdir}/drivers/nvidia-grid.toml -%{_cross_factorydir}%{_cross_sysconfdir}/drivers/nvidia-grid-copy-only.toml -%endif -%{_cross_factorydir}%{_cross_sysconfdir}/ld.so.conf.d/nvidia-tesla.conf -%{_cross_datadir}/nvidia/open-gpu-supported-devices.json - -# driver -%{_cross_datadir}/nvidia/tesla/module-objects.d/nvidia.mod.o -%{_cross_datadir}/nvidia/tesla/module-objects.d/nv-interface.o -%{_cross_datadir}/nvidia/tesla/module-objects.d/nv-kernel.o -%{_cross_datadir}/nvidia/tesla/module-objects.d/.module-common.o - -# uvm -%{_cross_datadir}/nvidia/tesla/module-objects.d/nvidia-uvm.mod.o -%{_cross_datadir}/nvidia/tesla/module-objects.d/nvidia-uvm.o - -# modeset -%{_cross_datadir}/nvidia/tesla/module-objects.d/nv-modeset-interface.o -%{_cross_datadir}/nvidia/tesla/module-objects.d/nv-modeset-kernel.o -%{_cross_datadir}/nvidia/tesla/module-objects.d/nvidia-modeset.mod.o - -# tmpfiles -%{_cross_tmpfilesdir}/nvidia-tesla.conf - -# sysuser files -%{_cross_sysusersdir}/nvidia.conf - -# systemd units -%{_cross_unitdir}/nvidia-persistenced.service - -# ICD / vendor descriptors -%{_cross_datadir}/vulkan/icd.d/nvidia_icd.json -%{_cross_datadir}/vulkan/icd.d/nvidia_layers.json -%{_cross_datadir}/vulkan/implicit_layer.d/nvidia_layers.json -%{_cross_datadir}/glvnd/egl_vendor.d/10_nvidia.json -%{_cross_datadir}/egl/egl_external_platform.d/10_nvidia_wayland.json -%{_cross_datadir}/egl/egl_external_platform.d/15_nvidia_gbm.json - -# We only install the libraries required by all the DRIVER_CAPABILITIES, described here: -# https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/user-guide.html#driver-capabilities - -# Utility libs -%{_cross_libdir}/nvidia/tesla/libnvidia-api.so.1 -%{_cross_libdir}/nvidia/tesla/libnvidia-ml.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-ml.so.1 -%{_cross_libdir}/nvidia/tesla/libnvidia-cfg.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-cfg.so.1 -%{_cross_libdir}/nvidia/tesla/libnvidia-nvvm.so.4 -%{_cross_libdir}/nvidia/tesla/libnvidia-nvvm.so.%{tesla_ver} - -# Compute libs -%{_cross_libdir}/nvidia/tesla/libcuda.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libcuda.so.1 -%{_cross_libdir}/nvidia/tesla/libcudadebugger.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libcudadebugger.so.1 -%{_cross_libdir}/nvidia/tesla/libnvidia-opencl.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-opencl.so.1 -%{_cross_libdir}/nvidia/tesla/libnvidia-ptxjitcompiler.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-ptxjitcompiler.so.1 -%{_cross_libdir}/nvidia/tesla/libnvidia-allocator.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-allocator.so.1 -%{_cross_libdir}/nvidia/tesla/libOpenCL.so.1.0.0 -%{_cross_libdir}/nvidia/tesla/libOpenCL.so.1 -%{_cross_libdir}/nvidia/tesla/libnvidia-gpucomp.so.%{tesla_ver} -%if "%{_cross_arch}" == "x86_64" -%{_cross_libdir}/nvidia/tesla/libnvidia-pkcs11.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-pkcs11-openssl3.so.%{tesla_ver} -%endif - -# Video libs -%{_cross_libdir}/nvidia/tesla/libvdpau_nvidia.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libvdpau_nvidia.so.1 -%{_cross_libdir}/nvidia/tesla/libnvidia-encode.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-encode.so.1 -%{_cross_libdir}/nvidia/tesla/libnvidia-opticalflow.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-opticalflow.so.1 -%{_cross_libdir}/nvidia/tesla/libnvcuvid.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvcuvid.so.1 - -# Graphics libs -%{_cross_libdir}/nvidia/tesla/libnvidia-eglcore.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-glcore.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-tls.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-glsi.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-rtcore.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-fbc.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-fbc.so.1 -%{_cross_libdir}/nvidia/tesla/libnvoptix.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvoptix.so.1 -%{_cross_datadir}/nvidia/nvoptix.bin - -# Graphics GLVND libs -%{_cross_libdir}/nvidia/tesla/libnvidia-glvkspirv.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libGLX_nvidia.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libGLX_nvidia.so.0 -%{_cross_libdir}/nvidia/tesla/libEGL_nvidia.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libEGL_nvidia.so.0 -%{_cross_libdir}/nvidia/tesla/libGLESv2_nvidia.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libGLESv2_nvidia.so.2 -%{_cross_libdir}/nvidia/tesla/libGLESv1_CM_nvidia.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libGLESv1_CM_nvidia.so.1 - -# Graphics compat -%{_cross_libdir}/nvidia/tesla/libEGL.so.1.1.0 -%{_cross_libdir}/nvidia/tesla/libEGL.so.1 -%{_cross_libdir}/nvidia/tesla/libEGL.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libGL.so.1.7.0 -%{_cross_libdir}/nvidia/tesla/libGL.so.1 -%{_cross_libdir}/nvidia/tesla/libGLESv1_CM.so.1.2.0 -%{_cross_libdir}/nvidia/tesla/libGLESv1_CM.so.1 -%{_cross_libdir}/nvidia/tesla/libGLESv2.so.2.1.0 -%{_cross_libdir}/nvidia/tesla/libGLESv2.so.2 - -# NGX -%{_cross_libdir}/nvidia/tesla/libnvidia-ngx.so.%{tesla_ver} -%{_cross_libdir}/nvidia/tesla/libnvidia-ngx.so.1 - -# Firmware -%{_cross_libdir}/firmware/nvidia/%{tesla_ver}/gsp_ga10x.bin -%{_cross_libdir}/firmware/nvidia/%{tesla_ver}/gsp_tu10x.bin - -# Neither nvidia-peermem nor nvidia-drm are included in driver container images, we exclude them -# for now, and we will add them if requested -%exclude %{_cross_datadir}/nvidia/tesla/module-objects.d/nvidia-peermem.mod.o -%exclude %{_cross_datadir}/nvidia/tesla/module-objects.d/nvidia-peermem.o -%exclude %{_cross_datadir}/nvidia/tesla/module-objects.d/nvidia-drm.mod.o -%exclude %{_cross_datadir}/nvidia/tesla/module-objects.d/nvidia-drm.o - -%if "%{_cross_arch}" == "x86_64" -%exclude %{_cross_libexecdir}/nvidia/tesla/bin/nvidia-ngx-updater -%exclude %{_cross_bindir}/nvidia-ngx-updater -%endif - -# None of these libraries are required by libnvidia-container, so they -# won't be used by a containerized workload -%exclude %{_cross_libdir}/nvidia/tesla/libGLX.so.0 -%exclude %{_cross_libdir}/nvidia/tesla/libGLdispatch.so.0 -%exclude %{_cross_libdir}/nvidia/tesla/libOpenGL.so.0 -%exclude %{_cross_libdir}/nvidia/tesla/libglxserver_nvidia.so.%{tesla_ver} -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-gtk2.so.%{tesla_ver} -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-gtk3.so.%{tesla_ver} -%exclude %{_cross_libdir}/nvidia/tesla/nvidia_drv.so -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-egl-wayland.so.1 -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-egl-gbm.so.1 -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-egl-gbm.so.1.1.2 -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-egl-wayland.so.1.1.20 -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-egl-xcb.so.1 -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-egl-xcb.so.1.0.4 -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-egl-xlib.so.1 -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-egl-xlib.so.1.0.4 -%if "%{_cross_arch}" == "x86_64" -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-sandboxutils.so.1 -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-sandboxutils.so.%{tesla_ver} -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-vksc-core.so.1 -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-vksc-core.so.%{tesla_ver} -%exclude %{_cross_libdir}/nvidia/tesla/libnvidia-wayland-client.so.%{tesla_ver} -%endif - -%files open-gpu -%license COPYING -%dir %{_cross_datadir}/nvidia/open-gpu/drivers -%dir %{_cross_factorydir}/nvidia/open-gpu - -%{_cross_datadir}/nvidia/open-gpu/drivers/nvidia.ko -%{_cross_datadir}/nvidia/open-gpu/drivers/nvidia-uvm.ko -%{_cross_datadir}/nvidia/open-gpu/drivers/nvidia-modeset.ko -%{_cross_datadir}/nvidia/open-gpu/drivers/nvidia-drm.ko -%{_cross_datadir}/nvidia/open-gpu/drivers/nvidia-peermem.ko - -# GRID driver files -%if "%{_cross_arch}" == "x86_64" -%files grid -%license COPYING -%license NvidiaGridAWSUserLicenseAgreement.DOCX -%license NVIDIA-Linux-x86_64-%{tesla_ver}-grid-aws/grid-third-party-licenses.txt -%dir %{_cross_datadir}/nvidia/grid/drivers -%dir %{_cross_factorydir}/nvidia/grid -%{_cross_bindir}/nvidia-gridd -%{_cross_factorydir}%{_cross_sysconfdir}/nvidia/gridd.conf -%{_cross_unitdir}/nvidia-gridd.service -%{_cross_unitdir}/grid-license-check.service -%{_cross_unitdir}/grid-license-check.timer -%{_cross_unitdir}/open-gpu-license-fallback.service -%{_cross_unitdir}/tesla-license-fallback.service -%{_cross_unitdir}/nvidia-k8s-device-plugin.service.d/grid-license-file-check.conf - -%{_cross_datadir}/nvidia/grid/drivers/nvidia.ko -%{_cross_datadir}/nvidia/grid/drivers/nvidia-uvm.ko -%{_cross_datadir}/nvidia/grid/drivers/nvidia-modeset.ko -%{_cross_datadir}/nvidia/grid/drivers/nvidia-drm.ko -%{_cross_datadir}/nvidia/grid/drivers/nvidia-peermem.ko -%endif - -%files mps -%{_cross_bindir}/nvidia-cuda-mps-control -%{_cross_bindir}/nvidia-cuda-mps-server -%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-cuda-mps-control -%{_cross_libexecdir}/nvidia/tesla/bin/nvidia-cuda-mps-server - -%files fabricmanager -%{_cross_factorydir}%{_cross_sysconfdir}/nvidia/fabricmanager.cfg -%{_cross_factorydir}%{_cross_sysconfdir}/nvidia/fabricmanager.env -%{_cross_unitdir}/nvidia-fabricmanager.service - -%files imex -%{_cross_bindir}/nvidia-imex -%{_cross_bindir}/nvidia-imex-ctl diff --git a/packages/kmod-6.12-nvidia-r570/link-tesla-kernel-modules.service.in b/packages/kmod-6.12-nvidia-r570/link-tesla-kernel-modules.service.in deleted file mode 100644 index 996b9f98..00000000 --- a/packages/kmod-6.12-nvidia-r570/link-tesla-kernel-modules.service.in +++ /dev/null @@ -1,19 +0,0 @@ -[Unit] -Description=Link Tesla kernel modules -RequiresMountsFor=PREFIX/lib/modules PREFIX/src/kernels -# Rerunning this service after the system is fully loaded will override -# the already linked kernel modules. This doesn't affect the running system, -# since kernel modules are linked early in the boot sequence, but we still -# disable manual restarts to prevent unnecessary kernel modules rewrites. -RefuseManualStart=true -RefuseManualStop=true - -[Service] -Type=oneshot -ExecCondition=/usr/bin/ghostdog match-nvidia-driver tesla -ExecStart=/usr/bin/driverdog --modules-set nvidia-tesla link-modules -RemainAfterExit=true -StandardError=journal+console - -[Install] -RequiredBy=drivers.target diff --git a/packages/kmod-6.12-nvidia-r570/load-grid-kernel-modules.service.in b/packages/kmod-6.12-nvidia-r570/load-grid-kernel-modules.service.in deleted file mode 100644 index c6ca702f..00000000 --- a/packages/kmod-6.12-nvidia-r570/load-grid-kernel-modules.service.in +++ /dev/null @@ -1,19 +0,0 @@ -[Unit] -Description=Load GRID kernel modules -RequiresMountsFor=PREFIX/lib/modules PREFIX/src/kernels -After=copy-grid-kernel-modules.service -Requires=copy-grid-kernel-modules.service -# Disable manual restarts to prevent loading kernel modules -# that weren't linked by the running system -RefuseManualStart=true -RefuseManualStop=true - -[Service] -Type=oneshot -ExecCondition=/usr/bin/ghostdog match-nvidia-driver grid -ExecStart=/usr/bin/driverdog --modules-set nvidia-grid load-modules -RemainAfterExit=true -StandardError=journal+console - -[Install] -RequiredBy=drivers.target diff --git a/packages/kmod-6.12-nvidia-r570/load-open-gpu-kernel-modules.service.in b/packages/kmod-6.12-nvidia-r570/load-open-gpu-kernel-modules.service.in deleted file mode 100644 index fa67fc42..00000000 --- a/packages/kmod-6.12-nvidia-r570/load-open-gpu-kernel-modules.service.in +++ /dev/null @@ -1,19 +0,0 @@ -[Unit] -Description=Load open GPU kernel modules -RequiresMountsFor=PREFIX/lib/modules PREFIX/src/kernels -After=copy-open-gpu-kernel-modules.service -Requires=copy-open-gpu-kernel-modules.service -# Disable manual restarts to prevent loading kernel modules -# that weren't linked by the running system -RefuseManualStart=true -RefuseManualStop=true - -[Service] -Type=oneshot -ExecCondition=/usr/bin/ghostdog match-nvidia-driver open-gpu -ExecStart=/usr/bin/driverdog --modules-set nvidia-open-gpu load-modules -RemainAfterExit=true -StandardError=journal+console - -[Install] -RequiredBy=drivers.target diff --git a/packages/kmod-6.12-nvidia-r570/load-tesla-kernel-modules.service.in b/packages/kmod-6.12-nvidia-r570/load-tesla-kernel-modules.service.in deleted file mode 100644 index b4dbf078..00000000 --- a/packages/kmod-6.12-nvidia-r570/load-tesla-kernel-modules.service.in +++ /dev/null @@ -1,19 +0,0 @@ -[Unit] -Description=Load Tesla kernel modules -RequiresMountsFor=PREFIX/lib/modules PREFIX/src/kernels -After=link-tesla-kernel-modules.service -Requires=link-tesla-kernel-modules.service -# Disable manual restarts to prevent loading kernel modules -# that weren't linked by the running system -RefuseManualStart=true -RefuseManualStop=true - -[Service] -Type=oneshot -ExecCondition=/usr/bin/ghostdog match-nvidia-driver tesla -ExecStart=/usr/bin/driverdog --modules-set nvidia-tesla load-modules -RemainAfterExit=true -StandardError=journal+console - -[Install] -RequiredBy=drivers.target diff --git a/packages/kmod-6.12-nvidia-r570/nvidia-dependencies-modules-load.conf b/packages/kmod-6.12-nvidia-r570/nvidia-dependencies-modules-load.conf deleted file mode 100644 index 86f884a6..00000000 --- a/packages/kmod-6.12-nvidia-r570/nvidia-dependencies-modules-load.conf +++ /dev/null @@ -1,2 +0,0 @@ -i2c_core -ipmi_msghandler diff --git a/packages/kmod-6.12-nvidia-r570/nvidia-fabricmanager.cfg b/packages/kmod-6.12-nvidia-r570/nvidia-fabricmanager.cfg deleted file mode 100644 index 17fe0c90..00000000 --- a/packages/kmod-6.12-nvidia-r570/nvidia-fabricmanager.cfg +++ /dev/null @@ -1,33 +0,0 @@ -# Modern, systemd-aware settings: -# - Log to journal via stderr -# - Keep running in the foreground -LOG_LEVEL=4 -LOG_FILE_NAME= -DAEMONIZE=0 - -# Use Unix domain sockets instead of localhost ports. -UNIX_SOCKET_PATH=/run/nvidia/fabricmanager.sock -FM_CMD_UNIX_SOCKET_PATH=/run/nvidia/fabricmanager-cmd.sock - -# Start Fabric Manager in bare metal or full pass through virtualization mode. -FABRIC_MODE=0 -FABRIC_MODE_RESTART=0 - -# Terminate on NVSwitch and GPU config failure. -FM_STAY_RESIDENT_ON_FAILURES=0 - -# When there is a GPU to NVSwitch NVLink failure, remove the GPU with the failure -# from NVLink P2P capability. -ACCESS_LINK_FAILURE_MODE=0 - -# When there is an NVSwitch to NVSwitch NVLink failure, exit Fabric Manager. -TRUNK_LINK_FAILURE_MODE=0 - -# When there is an NVSwitch failure or an NVSwitch is excluded, abort Fabric Manager. -NVSWITCH_FAILURE_MODE=0 - -# When Fabric Manager service is stopped or terminated, abort all running CUDA jobs. -ABORT_CUDA_JOBS_ON_FM_EXIT=1 - -# Path to topology and database files. -TOPOLOGY_FILE_PATH=/usr/share/nvidia/tesla/nvswitch diff --git a/packages/kmod-6.12-nvidia-r570/nvidia-fabricmanager.service b/packages/kmod-6.12-nvidia-r570/nvidia-fabricmanager.service deleted file mode 100644 index 620b49ae..00000000 --- a/packages/kmod-6.12-nvidia-r570/nvidia-fabricmanager.service +++ /dev/null @@ -1,21 +0,0 @@ -[Unit] -Description=NVIDIA fabric manager service -Wants=modprobe@ib_umad.service -After=modprobe@ib_umad.service nvlsm-online.service -Requires=nvlsm-online.service - -[Service] -EnvironmentFile=/etc/nvidia/fabricmanager.env -EnvironmentFile=-/etc/nvidia/nvlsm.env -ExecStart=/usr/bin/nv-fabricmanager -c /etc/nvidia/fabricmanager.cfg $GUID_ARG -Type=simple -TimeoutSec=0 -RestartSec=5 -Restart=always -RemainAfterExit=true -StandardError=journal+console -SuccessExitStatus=255 -LimitCORE=infinity - -[Install] -WantedBy=multi-user.target diff --git a/packages/kmod-6.12-nvidia-r570/nvidia-grid-config.toml.in b/packages/kmod-6.12-nvidia-r570/nvidia-grid-config.toml.in deleted file mode 100644 index aa80e762..00000000 --- a/packages/kmod-6.12-nvidia-r570/nvidia-grid-config.toml.in +++ /dev/null @@ -1,11 +0,0 @@ -[nvidia-grid] -lib-modules-path = "kernel/drivers/extra/video/nvidia/grid" - -[nvidia-grid.kernel-modules."nvidia.ko"] -copy-source = "__NVIDIA_MODULES__" - -[nvidia-grid.kernel-modules."nvidia-modeset.ko"] -copy-source = "__NVIDIA_MODULES__" - -[nvidia-grid.kernel-modules."nvidia-uvm.ko"] -copy-source = "__NVIDIA_MODULES__" diff --git a/packages/kmod-6.12-nvidia-r570/nvidia-grid-copy-only-config.toml.in b/packages/kmod-6.12-nvidia-r570/nvidia-grid-copy-only-config.toml.in deleted file mode 100644 index c8f250b7..00000000 --- a/packages/kmod-6.12-nvidia-r570/nvidia-grid-copy-only-config.toml.in +++ /dev/null @@ -1,8 +0,0 @@ -[nvidia-grid-copy-only] -lib-modules-path = "kernel/drivers/extra/video/nvidia/grid" - -[nvidia-grid-copy-only.kernel-modules."nvidia-drm.ko"] -copy-source = "__NVIDIA_MODULES__" - -[nvidia-grid-copy-only.kernel-modules."nvidia-peermem.ko"] -copy-source = "__NVIDIA_MODULES__" diff --git a/packages/kmod-6.12-nvidia-r570/nvidia-gridd.service b/packages/kmod-6.12-nvidia-r570/nvidia-gridd.service deleted file mode 100644 index 902aeb60..00000000 --- a/packages/kmod-6.12-nvidia-r570/nvidia-gridd.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=NVIDIA Grid Daemon -Wants=systemd-resolved.service network-online.target nvidia-persistenced.service -After=systemd-resolved.service network-online.target nvidia-persistenced.service - -[Service] -Type=forking -ExecCondition=/usr/bin/ghostdog match-nvidia-driver grid -ExecStart=/usr/bin/nvidia-gridd -ExecStopPost=/bin/rm -rf /var/run/nvidia-gridd - -[Install] -WantedBy=preconfigured.target diff --git a/packages/kmod-6.12-nvidia-r570/nvidia-ld.so.conf.in b/packages/kmod-6.12-nvidia-r570/nvidia-ld.so.conf.in deleted file mode 100644 index f992bf22..00000000 --- a/packages/kmod-6.12-nvidia-r570/nvidia-ld.so.conf.in +++ /dev/null @@ -1 +0,0 @@ -__LIBDIR__/nvidia/tesla/ diff --git a/packages/kmod-6.12-nvidia-r570/nvidia-open-gpu-config.toml.in b/packages/kmod-6.12-nvidia-r570/nvidia-open-gpu-config.toml.in deleted file mode 100644 index 5ae81b71..00000000 --- a/packages/kmod-6.12-nvidia-r570/nvidia-open-gpu-config.toml.in +++ /dev/null @@ -1,11 +0,0 @@ -[nvidia-open-gpu] -lib-modules-path = "kernel/drivers/extra/video/nvidia/open-gpu" - -[nvidia-open-gpu.kernel-modules."nvidia.ko"] -copy-source = "__NVIDIA_MODULES__" - -[nvidia-open-gpu.kernel-modules."nvidia-modeset.ko"] -copy-source = "__NVIDIA_MODULES__" - -[nvidia-open-gpu.kernel-modules."nvidia-uvm.ko"] -copy-source = "__NVIDIA_MODULES__" diff --git a/packages/kmod-6.12-nvidia-r570/nvidia-open-gpu-copy-only-config.toml.in b/packages/kmod-6.12-nvidia-r570/nvidia-open-gpu-copy-only-config.toml.in deleted file mode 100644 index 774867d4..00000000 --- a/packages/kmod-6.12-nvidia-r570/nvidia-open-gpu-copy-only-config.toml.in +++ /dev/null @@ -1,8 +0,0 @@ -[nvidia-open-gpu-copy-only] -lib-modules-path = "kernel/drivers/extra/video/nvidia/open-gpu" - -[nvidia-open-gpu-copy-only.kernel-modules."nvidia-drm.ko"] -copy-source = "__NVIDIA_MODULES__" - -[nvidia-open-gpu-copy-only.kernel-modules."nvidia-peermem.ko"] -copy-source = "__NVIDIA_MODULES__" diff --git a/packages/kmod-6.12-nvidia-r570/nvidia-persistenced.service b/packages/kmod-6.12-nvidia-r570/nvidia-persistenced.service deleted file mode 100644 index bf09163d..00000000 --- a/packages/kmod-6.12-nvidia-r570/nvidia-persistenced.service +++ /dev/null @@ -1,10 +0,0 @@ -[Unit] -Description=NVIDIA Persistence Daemon -After=load-tesla-kernel-modules.service load-open-gpu-kernel-modules.service load-grid-kernel-modules.service - -[Service] -Type=forking -ExecStart=/usr/bin/nvidia-persistenced --user nvidia --verbose - -[Install] -RequiredBy=preconfigured.target diff --git a/packages/kmod-6.12-nvidia-r570/nvidia-sysusers.conf b/packages/kmod-6.12-nvidia-r570/nvidia-sysusers.conf deleted file mode 100644 index 76801d0d..00000000 --- a/packages/kmod-6.12-nvidia-r570/nvidia-sysusers.conf +++ /dev/null @@ -1 +0,0 @@ -u nvidia - "nvidia-persistenced user" diff --git a/packages/kmod-6.12-nvidia-r570/nvidia-tesla-build-config.toml.in b/packages/kmod-6.12-nvidia-r570/nvidia-tesla-build-config.toml.in deleted file mode 100644 index 0b5082f8..00000000 --- a/packages/kmod-6.12-nvidia-r570/nvidia-tesla-build-config.toml.in +++ /dev/null @@ -1,18 +0,0 @@ -[nvidia-tesla] -lib-modules-path = "kernel/drivers/extra/video/nvidia/tesla" -objects-source = "__NVIDIA_MODULES__" - -[nvidia-tesla.object-files."nvidia.o"] -link-objects = ["nv-interface.o", "nv-kernel.o"] - -[nvidia-tesla.kernel-modules."nvidia.ko"] -link-objects = ["nvidia.o", "nvidia.mod.o", ".module-common.o"] - -[nvidia-tesla.object-files."nvidia-modeset.o"] -link-objects = ["nv-modeset-interface.o", "nv-modeset-kernel.o"] - -[nvidia-tesla.kernel-modules."nvidia-modeset.ko"] -link-objects = ["nvidia-modeset.o", "nvidia-modeset.mod.o", ".module-common.o"] - -[nvidia-tesla.kernel-modules."nvidia-uvm.ko"] -link-objects = ["nvidia-uvm.o", "nvidia-uvm.mod.o", ".module-common.o"] diff --git a/packages/kmod-6.12-nvidia-r570/nvidia-tesla-tmpfiles.conf b/packages/kmod-6.12-nvidia-r570/nvidia-tesla-tmpfiles.conf deleted file mode 100644 index b7ed04f8..00000000 --- a/packages/kmod-6.12-nvidia-r570/nvidia-tesla-tmpfiles.conf +++ /dev/null @@ -1,6 +0,0 @@ -C /etc/drivers/nvidia-tesla.toml -C /etc/drivers/nvidia-open-gpu.toml -C /etc/drivers/nvidia-open-gpu-copy-only.toml -C /etc/drivers/nvidia-grid.toml -C /etc/drivers/nvidia-grid-copy-only.toml -C /etc/ld.so.conf.d/nvidia-tesla.conf diff --git a/packages/kmod-6.12-nvidia-r570/nvidia-tmpfiles.conf.in b/packages/kmod-6.12-nvidia-r570/nvidia-tmpfiles.conf.in deleted file mode 100644 index 4eb43096..00000000 --- a/packages/kmod-6.12-nvidia-r570/nvidia-tmpfiles.conf.in +++ /dev/null @@ -1,11 +0,0 @@ -R __PREFIX__/lib/modules/__KERNEL_VERSION__/kernel/drivers/extra/video/nvidia/tesla - - - - - -d __PREFIX__/lib/modules/__KERNEL_VERSION__/kernel/drivers/extra/video/nvidia/tesla 0755 root root - - -R __PREFIX__/lib/modules/__KERNEL_VERSION__/kernel/drivers/extra/video/nvidia/open-gpu - - - - - -d __PREFIX__/lib/modules/__KERNEL_VERSION__/kernel/drivers/extra/video/nvidia/open-gpu 0755 root root - - -R __PREFIX__/lib/modules/__KERNEL_VERSION__/kernel/drivers/extra/video/nvidia/grid - - - - - -d __PREFIX__/lib/modules/__KERNEL_VERSION__/kernel/drivers/extra/video/nvidia/grid 0755 root root - - -C /etc/nvidia/fabricmanager.cfg - - - - -C /etc/nvidia/fabricmanager.env - - - - -C /etc/nvidia/gridd.conf - - - - -d /run/nvidia 0700 root root - -D /var/run/nvidia-persistenced 0755 nvidia nvidia - - diff --git a/packages/kmod-6.12-nvidia-r570/open-gpu-license-fallback.service b/packages/kmod-6.12-nvidia-r570/open-gpu-license-fallback.service deleted file mode 100644 index 03a87bd4..00000000 --- a/packages/kmod-6.12-nvidia-r570/open-gpu-license-fallback.service +++ /dev/null @@ -1,14 +0,0 @@ -[Unit] -Description=Open GPU GRID License Check Fallback -RefuseManualStart=true -RefuseManualStop=true - -[Service] -Type=oneshot -ExecCondition=/usr/bin/ghostdog match-nvidia-driver open-gpu -ExecStart=/usr/bin/touch /etc/drivers/.grid-licensed -ExecStart=/usr/bin/systemctl stop grid-license-check.timer --no-block -RemainAfterExit=true - -[Install] -WantedBy=nvidia-k8s-device-plugin.service diff --git a/packages/kmod-6.12-nvidia-r570/tesla-license-fallback.service b/packages/kmod-6.12-nvidia-r570/tesla-license-fallback.service deleted file mode 100644 index 6cbb36a6..00000000 --- a/packages/kmod-6.12-nvidia-r570/tesla-license-fallback.service +++ /dev/null @@ -1,14 +0,0 @@ -[Unit] -Description=Tesla GRID License Check Fallback -RefuseManualStart=true -RefuseManualStop=true - -[Service] -Type=oneshot -ExecCondition=/usr/bin/ghostdog match-nvidia-driver tesla -ExecStart=/usr/bin/touch /etc/drivers/.grid-licensed -ExecStart=/usr/bin/systemctl stop grid-license-check.timer --no-block -RemainAfterExit=true - -[Install] -WantedBy=nvidia-k8s-device-plugin.service