aboutsummarylogtreecommitdiffstats
diff options
context:
space:
mode:
author3l H4ck3r C0mf0r72022-07-15 16:35:45 +0000
committerGitHub2022-07-15 12:35:45 -0400
commit80078f22bc2f255bf6a552eb12e106e6f054dd01 (patch)
treed124ddb043f7ef31a5f6b7b7674253debbd43cc3
parente4e816d3b141c95e287e7e208b691d28f4ca6aac (diff)
downloadaur-80078f22bc2f255bf6a552eb12e106e6f054dd01.tar.gz
upgpkg: nvidia-merged 510.73.06-1; nvidia-vgpu 510.73.06-1
upstream release * Update nvidia-merged to 510.73 and kernel 5.18 * Update nvidia-vgpu to 510.73 and kernel 5.18 * Modify patch to use conditional compilation Required for linux < 5.18 support Signed-off-by: Erin Allison <erin@eallison.us> * Fix whitespace inconsistency in patch files Signed-off-by: Erin Allison <erin@eallison.us> * One more whitespace issue and checksums update Signed-off-by: Erin Allison <erin@eallison.us> Co-authored-by: Erin Allison <erin@eallison.us>
-rw-r--r--.SRCINFO32
-rw-r--r--PKGBUILD148
-rw-r--r--disable-nvidia-blob-version-check.patch13
-rw-r--r--nv-kernel.patchbin17800 -> 10083 bytes
-rw-r--r--nvidia-510.73.05-vgpu-5.18.patch73
-rw-r--r--nvidia-vgpu-vfio.patch12
6 files changed, 179 insertions, 99 deletions
diff --git a/.SRCINFO b/.SRCINFO
index d1596e09f5c1..dd7aefda3752 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,5 +1,5 @@
pkgbase = nvidia-merged
- pkgver = 510.47.03
+ pkgver = 510.73.06
pkgrel = 1
url = https://krutavshah.github.io/GPU_Virtualization-Wiki/
arch = x86_64
@@ -12,25 +12,27 @@ pkgbase = nvidia-merged
source = nvidia-smi
source = nvidia-vgpu.conf
source = vgpu_unlock-rs.conf
+ source = disable-nvidia-blob-version-check.patch
+ source = nvidia-510.73.05-vgpu-5.18.patch
source = nv-kernel.patch
source = nvidia.rules
source = nvidia-utils.sysusers
- source = nvidia-vgpu-vfio.patch
source = vgpu_unlock.patch
- source = file://NVIDIA-Linux-x86_64-510.47.03-grid.run
- source = file://NVIDIA-Linux-x86_64-510.47.03-vgpu-kvm.run
- source = git+https://github.com/mbilker/vgpu_unlock-rs.git#commit=3858f2c
+ source = file://NVIDIA-Linux-x86_64-510.73.08-grid.run
+ source = file://NVIDIA-Linux-x86_64-510.73.06-vgpu-kvm.run
+ source = git+https://github.com/mbilker/vgpu_unlock-rs.git#commit=6deede6
sha256sums = be99ff3def641bb900c2486cce96530394c5dc60548fc4642f19d3a4c784134d
sha256sums = 20676096714ac00d9fc993901ab275e4b0fa3f2eddc937dae395c8f4e8cb543e
sha256sums = 5ea0d9edfcf282cea9b204291716a9a4d6d522ba3a6bc28d78edf505b6dc7949
sha256sums = c85ae100a6c87c12906fd0057b77c0c4190f68434de4bc3bc89348ffc19aed61
- sha256sums = 7f6c7ab8bdcff47589306c465906bf950c93a721cb1c01792ca8150530566316
+ sha256sums = cc150696cf5b74556fca93cee3b1fc05695bb3a420a4a7bae5090e4b9d9bcfd7
+ sha256sums = 79b09682f9c3cfa32d219a14b3c956d8f05340addd5a43e7063c3d96175a56f4
+ sha256sums = 36325e26243429e1e55c8500bcac850fea6e6a8975a657984c0979042a001c7b
sha256sums = 4fbfd461f939f18786e79f8dba5fdb48be9f00f2ff4b1bb2f184dbce42dd6fc3
sha256sums = d8d1caa5d72c71c6430c2a0d9ce1a674787e9272ccce28b9d5898ca24e60a167
- sha256sums = 35bb29a3ea181ceadc6e27e88af863f10a6ba94ea16d9394cea4b50d384d3c47
sha256sums = f77f26f609bb6f1eb69d3dc7e84ba704e5c065e424a619ab1460accb8247143f
- sha256sums = 10f7873893ff558f92bbf0d2e7ec208d652f43f2829e7a307a83d46ac6cb61df
- sha256sums = 8656a261902e6569a71fbb55229dde8f03383772b6be50044102f250520d846f
+ sha256sums = 2affa1e1035a71b17d15d5fa9a16d8b3704d73701f04afaa4b09035a3412e6ce
+ sha256sums = b7d076bee270e779b7c1eb512c9325794be2e8cbd7cd37c0f62fc72d87654a82
sha256sums = SKIP
pkgname = lib32-nvidia-merged-utils
@@ -38,8 +40,8 @@ pkgname = lib32-nvidia-merged-utils
depends = lib32-zlib
depends = lib32-gcc-libs
depends = lib32-libglvnd
- depends = nvidia-merged-utils=510.47.03
- optdepends = lib32-opencl-nvidia=510.47.03
+ depends = nvidia-merged-utils=510.73.06
+ optdepends = lib32-opencl-nvidia=510.73.06
provides = lib32-vulkan-driver
provides = lib32-opengl-driver
provides = lib32-nvidia-libgl
@@ -58,7 +60,7 @@ pkgname = lib32-opencl-nvidia-merged
pkgname = nvidia-merged-dkms
pkgdesc = NVIDIA drivers - module sources; patched for vGPU support w/ Rust unlock & host DRM output
depends = dkms
- depends = nvidia-merged-utils=510.47.03
+ depends = nvidia-merged-utils=510.73.06
depends = libglvnd
provides = NVIDIA-MODULE
provides = nvidia-dkms
@@ -69,7 +71,7 @@ pkgname = nvidia-merged-settings
depends = gtk3
depends = libxv
depends = libvdpau
- depends = nvidia-merged-utils=510.47.03
+ depends = nvidia-merged-utils=510.73.06
provides = nvidia-settings
pkgname = nvidia-merged-utils
@@ -77,9 +79,9 @@ pkgname = nvidia-merged-utils
depends = xorg-server
depends = libglvnd
depends = egl-wayland
- optdepends = nvidia-merged-settings=510.47.03: configuration tool
+ optdepends = nvidia-merged-settings=510.73.06: configuration tool
optdepends = xorg-server-devel: nvidia-xconfig
- optdepends = opencl-nvidia-merged=510.47.03: OpenCL support
+ optdepends = opencl-nvidia-merged=510.73.06: OpenCL support
optdepends = mdevctl: mediated device contfiguration tool
optdepends = libvirt: virtualization engine control interface
provides = vulkan-driver
diff --git a/PKGBUILD b/PKGBUILD
index 87b5562600ff..9a8e76dbd835 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -15,7 +15,7 @@
pkgbase='nvidia-merged'
pkgname=('lib32-nvidia-merged-utils' 'lib32-opencl-nvidia-merged' 'nvidia-merged-dkms' 'nvidia-merged-settings' 'nvidia-merged-utils' 'opencl-nvidia-merged')
-pkgver=510.47.03
+pkgver=510.73.06
pkgrel=1
arch=('x86_64')
makedepends=('git' 'rust')
@@ -23,7 +23,8 @@ url='https://krutavshah.github.io/GPU_Virtualization-Wiki/'
license=('custom')
options=('!strip')
groups=('nvidia-merged')
-_gridpkg="NVIDIA-Linux-${CARCH}-${pkgver}-grid"
+_gridpkgver=510.73.08
+_gridpkg="NVIDIA-Linux-${CARCH}-${_gridpkgver}-grid"
_vgpupkg="NVIDIA-Linux-${CARCH}-${pkgver}-vgpu-kvm"
DLAGENTS=("file::/usr/bin/echo ${BOLD}${RED} Unable to find %u, please read the PKGBUILD ${ALL_OFF}" $DLAGENTS[@])
@@ -33,25 +34,27 @@ source=(
'nvidia-smi'
'nvidia-vgpu.conf'
'vgpu_unlock-rs.conf'
+ 'disable-nvidia-blob-version-check.patch'
+ 'nvidia-510.73.05-vgpu-5.18.patch'
'nv-kernel.patch'
'nvidia.rules'
'nvidia-utils.sysusers'
- 'nvidia-vgpu-vfio.patch'
'vgpu_unlock.patch'
"file://${_gridpkg}.run"
"file://${_vgpupkg}.run"
- 'git+https://github.com/mbilker/vgpu_unlock-rs.git#commit=3858f2c')
+ 'git+https://github.com/mbilker/vgpu_unlock-rs.git#commit=6deede6')
sha256sums=('be99ff3def641bb900c2486cce96530394c5dc60548fc4642f19d3a4c784134d'
'20676096714ac00d9fc993901ab275e4b0fa3f2eddc937dae395c8f4e8cb543e'
'5ea0d9edfcf282cea9b204291716a9a4d6d522ba3a6bc28d78edf505b6dc7949'
'c85ae100a6c87c12906fd0057b77c0c4190f68434de4bc3bc89348ffc19aed61'
- '7f6c7ab8bdcff47589306c465906bf950c93a721cb1c01792ca8150530566316'
+ 'cc150696cf5b74556fca93cee3b1fc05695bb3a420a4a7bae5090e4b9d9bcfd7'
+ '79b09682f9c3cfa32d219a14b3c956d8f05340addd5a43e7063c3d96175a56f4'
+ '36325e26243429e1e55c8500bcac850fea6e6a8975a657984c0979042a001c7b'
'4fbfd461f939f18786e79f8dba5fdb48be9f00f2ff4b1bb2f184dbce42dd6fc3'
'd8d1caa5d72c71c6430c2a0d9ce1a674787e9272ccce28b9d5898ca24e60a167'
- '35bb29a3ea181ceadc6e27e88af863f10a6ba94ea16d9394cea4b50d384d3c47'
'f77f26f609bb6f1eb69d3dc7e84ba704e5c065e424a619ab1460accb8247143f'
- '10f7873893ff558f92bbf0d2e7ec208d652f43f2829e7a307a83d46ac6cb61df'
- '8656a261902e6569a71fbb55229dde8f03383772b6be50044102f250520d846f'
+ '2affa1e1035a71b17d15d5fa9a16d8b3704d73701f04afaa4b09035a3412e6ce'
+ 'b7d076bee270e779b7c1eb512c9325794be2e8cbd7cd37c0f62fc72d87654a82'
'SKIP')
create_links() {
@@ -82,7 +85,7 @@ prepare() {
-i "${_gridpkg}/kernel/conftest.sh"
sed \
- -e "s/__VERSION_STRING/${pkgver}/" \
+ -e "s/__VERSION_STRING/${_gridpkgver}/" \
-e 's/__JOBS/`nproc`/' \
-e 's/__DKMS_MODULES//' \
-e '$iBUILT_MODULE_NAME[0]="nvidia"\
@@ -101,11 +104,12 @@ DEST_MODULE_LOCATION[5]="/kernel/drivers/video"' \
-i "${_gridpkg}/kernel/dkms.conf"
pushd "${_vgpupkg}"
- patch -p1 < "${srcdir}/nvidia-vgpu-vfio.patch"
+ patch -p1 < "${srcdir}/nvidia-510.73.05-vgpu-5.18.patch"
popd
pushd "${_gridpkg}"
- patch -p1 < "${srcdir}/nv-kernel.patch"
+ patch -p1 < "${srcdir}/disable-nvidia-blob-version-check.patch"
+ patch -u kernel/nvidia/nv-kernel.o_binary < "${srcdir}/nv-kernel.patch"
patch -p1 < "${srcdir}/vgpu_unlock.patch"
popd
}
@@ -125,9 +129,9 @@ package_opencl-nvidia-merged() {
# OpenCL
install -D -m644 "${_gridpkg}/nvidia.icd" "${pkgdir}/etc/OpenCL/vendors/nvidia.icd"
- install -D -m755 "${_gridpkg}/libnvidia-compiler-next.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-compiler-next.so.${pkgver}"
- install -D -m755 "${_gridpkg}/libnvidia-compiler.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-compiler.so.${pkgver}"
- install -D -m755 "${_gridpkg}/libnvidia-opencl.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-opencl.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/libnvidia-compiler-next.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-compiler-next.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/libnvidia-compiler.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-compiler.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/libnvidia-opencl.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-opencl.so.${_gridpkgver}"
create_links
@@ -140,12 +144,12 @@ package_nvidia-merged-dkms() {
provides=('NVIDIA-MODULE' 'nvidia-dkms')
install -d -m755 "${pkgdir}/usr/src"
- cp -dr --no-preserve='ownership' "${_gridpkg}/kernel" "${pkgdir}/usr/src/nvidia-${pkgver}"
+ cp -dr --no-preserve='ownership' "${_gridpkg}/kernel" "${pkgdir}/usr/src/nvidia-${_gridpkgver}"
- install -D -m644 "${_vgpupkg}/kernel/common/inc/nv-vgpu-vfio-interface.h" "${pkgdir}/usr/src/nvidia-${pkgver}/common/inc/nv-vgpu-vfio-interface.h"
- install -D -m644 "${_vgpupkg}/kernel/nvidia/nv-vgpu-vfio-interface.c" "${pkgdir}/usr/src/nvidia-${pkgver}/nvidia/nv-vgpu-vfio-interface.c"
- install -D -m644 "${_vgpupkg}/kernel/nvidia/nvidia-sources.Kbuild" "${pkgdir}/usr/src/nvidia-${pkgver}/nvidia/nvidia-sources.Kbuild"
- cp -dr --no-preserve='ownership' "${_vgpupkg}/kernel/nvidia-vgpu-vfio" "${pkgdir}/usr/src/nvidia-${pkgver}/nvidia-vgpu-vfio"
+ install -D -m644 "${_vgpupkg}/kernel/common/inc/nv-vgpu-vfio-interface.h" "${pkgdir}/usr/src/nvidia-${_gridpkgver}/common/inc/nv-vgpu-vfio-interface.h"
+ install -D -m644 "${_vgpupkg}/kernel/nvidia/nv-vgpu-vfio-interface.c" "${pkgdir}/usr/src/nvidia-${_gridpkgver}/nvidia/nv-vgpu-vfio-interface.c"
+ install -D -m644 "${_vgpupkg}/kernel/nvidia/nvidia-sources.Kbuild" "${pkgdir}/usr/src/nvidia-${_gridpkgver}/nvidia/nvidia-sources.Kbuild"
+ cp -dr --no-preserve='ownership' "${_vgpupkg}/kernel/nvidia-vgpu-vfio" "${pkgdir}/usr/src/nvidia-${_gridpkgver}/nvidia-vgpu-vfio"
echo "blacklist nouveau" | install -D -m644 /dev/stdin "${pkgdir}/usr/lib/modprobe.d/${pkgname}.conf"
echo "nvidia-uvm" | install -D -m644 /dev/stdin "${pkgdir}/usr/lib/modules-load.d/${pkgname}.conf"
@@ -160,7 +164,7 @@ package_nvidia-merged-settings() {
provides=('nvidia-settings')
install -D -m755 "${_gridpkg}/nvidia-settings" "${pkgdir}/usr/bin/nvidia-settings"
- install -D -m644 "${_gridpkg}/libnvidia-gtk3.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-gtk3.so.${pkgver}"
+ install -D -m644 "${_gridpkg}/libnvidia-gtk3.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-gtk3.so.${_gridpkgver}"
install -D -m644 "${_gridpkg}/nvidia-settings.1" "${pkgdir}/usr/share/man/man1/nvidia-settings.1"
install -D -m644 "${_gridpkg}/nvidia-settings.png" "${pkgdir}/usr/share/pixmaps/nvidia-settings.png"
install -D -m644 "${_gridpkg}/nvidia-settings.desktop" "${pkgdir}/usr/share/applications/nvidia-settings.desktop"
@@ -190,72 +194,72 @@ package_nvidia-merged-utils() {
install -D -m644 "${_gridpkg}/15_nvidia_gbm.json" "${pkgdir}/usr/share/egl/egl_external_platform.d/15_nvidia_gbm.json"
mkdir -p "${pkgdir}/usr/lib/gbm"
- ln -s "/usr/lib/libnvidia-allocator.so.${pkgver}" "${pkgdir}/usr/lib/gbm/nvidia-drm_gbm.so"
+ ln -s "/usr/lib/libnvidia-allocator.so.${_gridpkgver}" "${pkgdir}/usr/lib/gbm/nvidia-drm_gbm.so"
# firmware
- install -D -m644 "${_gridpkg}/firmware/gsp.bin" "${pkgdir}/usr/lib/firmware/nvidia/${pkgver}/gsp.bin"
+ install -D -m644 "${_gridpkg}/firmware/gsp.bin" "${pkgdir}/usr/lib/firmware/nvidia/${_gridpkgver}/gsp.bin"
# GLX extension module for X
- install -D -m755 "${_gridpkg}/libglxserver_nvidia.so.${pkgver}" "${pkgdir}/usr/lib/nvidia/xorg/libglxserver_nvidia.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/libglxserver_nvidia.so.${_gridpkgver}" "${pkgdir}/usr/lib/nvidia/xorg/libglxserver_nvidia.so.${_gridpkgver}"
# Ensure that X finds glx
- ln -s "libglxserver_nvidia.so.${pkgver}" "${pkgdir}/usr/lib/nvidia/xorg/libglxserver_nvidia.so.1"
- ln -s "libglxserver_nvidia.so.${pkgver}" "${pkgdir}/usr/lib/nvidia/xorg/libglxserver_nvidia.so"
+ ln -s "libglxserver_nvidia.so.${_gridpkgver}" "${pkgdir}/usr/lib/nvidia/xorg/libglxserver_nvidia.so.1"
+ ln -s "libglxserver_nvidia.so.${_gridpkgver}" "${pkgdir}/usr/lib/nvidia/xorg/libglxserver_nvidia.so"
- install -D -m755 "${_gridpkg}/libGLX_nvidia.so.${pkgver}" "${pkgdir}/usr/lib/libGLX_nvidia.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/libGLX_nvidia.so.${_gridpkgver}" "${pkgdir}/usr/lib/libGLX_nvidia.so.${_gridpkgver}"
# OpenGL libraries
- install -D -m755 "${_gridpkg}/libEGL_nvidia.so.${pkgver}" "${pkgdir}/usr/lib/libEGL_nvidia.so.${pkgver}"
- install -D -m755 "${_gridpkg}/libGLESv1_CM_nvidia.so.${pkgver}" "${pkgdir}/usr/lib/libGLESv1_CM_nvidia.so.${pkgver}"
- install -D -m755 "${_gridpkg}/libGLESv2_nvidia.so.${pkgver}" "${pkgdir}/usr/lib/libGLESv2_nvidia.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/libEGL_nvidia.so.${_gridpkgver}" "${pkgdir}/usr/lib/libEGL_nvidia.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/libGLESv1_CM_nvidia.so.${_gridpkgver}" "${pkgdir}/usr/lib/libGLESv1_CM_nvidia.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/libGLESv2_nvidia.so.${_gridpkgver}" "${pkgdir}/usr/lib/libGLESv2_nvidia.so.${_gridpkgver}"
install -D -m644 "${_gridpkg}/10_nvidia.json" "${pkgdir}/usr/share/glvnd/egl_vendor.d/10_nvidia.json"
# OpenGL core library
- install -D -m755 "${_gridpkg}/libnvidia-glcore.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-glcore.so.${pkgver}"
- install -D -m755 "${_gridpkg}/libnvidia-eglcore.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-eglcore.so.${pkgver}"
- install -D -m755 "${_gridpkg}/libnvidia-glsi.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-glsi.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/libnvidia-glcore.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-glcore.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/libnvidia-eglcore.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-eglcore.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/libnvidia-glsi.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-glsi.so.${_gridpkgver}"
# misc
- install -D -m755 "${_gridpkg}/libnvidia-fbc.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-fbc.so.${pkgver}"
- install -D -m755 "${_gridpkg}/libnvidia-encode.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-encode.so.${pkgver}"
- install -D -m755 "${_gridpkg}/libnvidia-cfg.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-cfg.so.${pkgver}"
- install -D -m755 "${_gridpkg}/libnvidia-ml.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-ml.so.${pkgver}"
- install -D -m755 "${_gridpkg}/libnvidia-glvkspirv.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-glvkspirv.so.${pkgver}"
- install -D -m755 "${_gridpkg}/libnvidia-allocator.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-allocator.so.${pkgver}"
- install -D -m755 "${_gridpkg}/libnvidia-vulkan-producer.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-vulkan-producer.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/libnvidia-fbc.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-fbc.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/libnvidia-encode.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-encode.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/libnvidia-cfg.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-cfg.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/libnvidia-ml.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-ml.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/libnvidia-glvkspirv.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-glvkspirv.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/libnvidia-allocator.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-allocator.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/libnvidia-vulkan-producer.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-vulkan-producer.so.${_gridpkgver}"
# Sigh libnvidia-vulkan-producer.so has no SONAME set so create_links doesn't catch it. NVIDIA please fix!
- ln -s "libnvidia-vulkan-producer.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-vulkan-producer.so.1"
- ln -s "libnvidia-vulkan-producer.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-vulkan-producer.so"
+ ln -s "libnvidia-vulkan-producer.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-vulkan-producer.so.1"
+ ln -s "libnvidia-vulkan-producer.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-vulkan-producer.so"
# Vulkan ICD
install -D -m644 "${_gridpkg}/nvidia_icd.json" "${pkgdir}/usr/share/vulkan/icd.d/nvidia_icd.json"
install -D -m644 "${_gridpkg}/nvidia_layers.json" "${pkgdir}/usr/share/vulkan/implicit_layer.d/nvidia_layers.json"
# VDPAU
- install -D -m755 "${_gridpkg}/libvdpau_nvidia.so.${pkgver}" "${pkgdir}/usr/lib/vdpau/libvdpau_nvidia.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/libvdpau_nvidia.so.${_gridpkgver}" "${pkgdir}/usr/lib/vdpau/libvdpau_nvidia.so.${_gridpkgver}"
# nvidia-tls library
- install -D -m755 "${_gridpkg}/libnvidia-tls.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-tls.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/libnvidia-tls.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-tls.so.${_gridpkgver}"
# CUDA
- install -D -m755 "${_gridpkg}/libcuda.so.${pkgver}" "${pkgdir}/usr/lib/libcuda.so.${pkgver}"
- install -D -m755 "${_gridpkg}/libnvcuvid.so.${pkgver}" "${pkgdir}/usr/lib/libnvcuvid.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/libcuda.so.${_gridpkgver}" "${pkgdir}/usr/lib/libcuda.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/libnvcuvid.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvcuvid.so.${_gridpkgver}"
# PTX JIT Compiler (Parallel Thread Execution (PTX) is a pseudo-assembly language for CUDA)
- install -D -m755 "${_gridpkg}/libnvidia-ptxjitcompiler.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-ptxjitcompiler.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/libnvidia-ptxjitcompiler.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-ptxjitcompiler.so.${_gridpkgver}"
# raytracing
- install -D -m755 "${_gridpkg}/libnvoptix.so.${pkgver}" "${pkgdir}/usr/lib/libnvoptix.so.${pkgver}"
- install -D -m755 "${_gridpkg}/libnvidia-rtcore.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-rtcore.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/libnvoptix.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvoptix.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/libnvidia-rtcore.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-rtcore.so.${_gridpkgver}"
# NGX
- install -D -m755 "${_gridpkg}/libnvidia-ngx.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-ngx.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/libnvidia-ngx.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-ngx.so.${_gridpkgver}"
install -D -m755 "${_gridpkg}/nvidia-ngx-updater" "${pkgdir}/usr/bin/nvidia-ngx-updater"
install -D -m755 "${_gridpkg}/_nvngx.dll" "${pkgdir}/usr/lib/nvidia/wine/_nvngx.dll"
install -D -m755 "${_gridpkg}/nvngx.dll" "${pkgdir}/usr/lib/nvidia/wine/nvngx.dll"
# Optical flow
- install -D -m755 "${_gridpkg}/libnvidia-opticalflow.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-opticalflow.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/libnvidia-opticalflow.so.${_gridpkgver}" "${pkgdir}/usr/lib/libnvidia-opticalflow.so.${_gridpkgver}"
# vGPU
install -D -m755 "${_vgpupkg}/libnvidia-vgpu.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-vgpu.so.${pkgver}"
@@ -303,8 +307,8 @@ package_nvidia-merged-utils() {
sed -i 's/__USER__/nvidia-persistenced/' "${pkgdir}/usr/lib/systemd/system/nvidia-persistenced.service"
# application profiles
- install -D -m644 "${_gridpkg}/nvidia-application-profiles-${pkgver}-rc" "${pkgdir}/usr/share/nvidia/nvidia-application-profiles-${pkgver}-rc"
- install -D -m644 "${_gridpkg}/nvidia-application-profiles-${pkgver}-key-documentation" "${pkgdir}/usr/share/nvidia/nvidia-application-profiles-${pkgver}-key-documentation"
+ install -D -m644 "${_gridpkg}/nvidia-application-profiles-${_gridpkgver}-rc" "${pkgdir}/usr/share/nvidia/nvidia-application-profiles-${_gridpkgver}-rc"
+ install -D -m644 "${_gridpkg}/nvidia-application-profiles-${_gridpkgver}-key-documentation" "${pkgdir}/usr/share/nvidia/nvidia-application-profiles-${_gridpkgver}-key-documentation"
install -D -m644 "${_gridpkg}/README.txt" "${pkgdir}/usr/share/doc/nvidia/README"
install -D -m644 "${_gridpkg}/NVIDIA_Changelog" "${pkgdir}/usr/share/doc/nvidia/NVIDIA_Changelog"
@@ -331,40 +335,40 @@ package_lib32-nvidia-merged-utils() {
provides=('lib32-vulkan-driver' 'lib32-opengl-driver' 'lib32-nvidia-libgl' 'lib32-nvidia-utils')
replaces=('lib32-nvidia-libgl')
- install -D -m755 "${_gridpkg}/32/libGLX_nvidia.so.${pkgver}" "${pkgdir}/usr/lib32/libGLX_nvidia.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/32/libGLX_nvidia.so.${_gridpkgver}" "${pkgdir}/usr/lib32/libGLX_nvidia.so.${_gridpkgver}"
# OpenGL libraries
- install -D -m755 "${_gridpkg}/32/libEGL_nvidia.so.${pkgver}" "${pkgdir}/usr/lib32/libEGL_nvidia.so.${pkgver}"
- install -D -m755 "${_gridpkg}/32/libGLESv1_CM_nvidia.so.${pkgver}" "${pkgdir}/usr/lib32/libGLESv1_CM_nvidia.so.${pkgver}"
- install -D -m755 "${_gridpkg}/32/libGLESv2_nvidia.so.${pkgver}" "${pkgdir}/usr/lib32/libGLESv2_nvidia.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/32/libEGL_nvidia.so.${_gridpkgver}" "${pkgdir}/usr/lib32/libEGL_nvidia.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/32/libGLESv1_CM_nvidia.so.${_gridpkgver}" "${pkgdir}/usr/lib32/libGLESv1_CM_nvidia.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/32/libGLESv2_nvidia.so.${_gridpkgver}" "${pkgdir}/usr/lib32/libGLESv2_nvidia.so.${_gridpkgver}"
# OpenGL core library
- install -D -m755 "${_gridpkg}/32/libnvidia-glcore.so.${pkgver}" "${pkgdir}/usr/lib32/libnvidia-glcore.so.${pkgver}"
- install -D -m755 "${_gridpkg}/32/libnvidia-eglcore.so.${pkgver}" "${pkgdir}/usr/lib32/libnvidia-eglcore.so.${pkgver}"
- install -D -m755 "${_gridpkg}/32/libnvidia-glsi.so.${pkgver}" "${pkgdir}/usr/lib32/libnvidia-glsi.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/32/libnvidia-glcore.so.${_gridpkgver}" "${pkgdir}/usr/lib32/libnvidia-glcore.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/32/libnvidia-eglcore.so.${_gridpkgver}" "${pkgdir}/usr/lib32/libnvidia-eglcore.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/32/libnvidia-glsi.so.${_gridpkgver}" "${pkgdir}/usr/lib32/libnvidia-glsi.so.${_gridpkgver}"
# misc
- install -D -m755 "${_gridpkg}/32/libnvidia-fbc.so.${pkgver}" "${pkgdir}/usr/lib32/libnvidia-fbc.so.${pkgver}"
- install -D -m755 "${_gridpkg}/32/libnvidia-encode.so.${pkgver}" "${pkgdir}/usr/lib32/libnvidia-encode.so.${pkgver}"
- install -D -m755 "${_gridpkg}/32/libnvidia-ml.so.${pkgver}" "${pkgdir}/usr/lib32/libnvidia-ml.so.${pkgver}"
- install -D -m755 "${_gridpkg}/32/libnvidia-glvkspirv.so.${pkgver}" "${pkgdir}/usr/lib32/libnvidia-glvkspirv.so.${pkgver}"
- install -D -m755 "${_gridpkg}/32/libnvidia-allocator.so.${pkgver}" "${pkgdir}/usr/lib32/libnvidia-allocator.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/32/libnvidia-fbc.so.${_gridpkgver}" "${pkgdir}/usr/lib32/libnvidia-fbc.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/32/libnvidia-encode.so.${_gridpkgver}" "${pkgdir}/usr/lib32/libnvidia-encode.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/32/libnvidia-ml.so.${_gridpkgver}" "${pkgdir}/usr/lib32/libnvidia-ml.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/32/libnvidia-glvkspirv.so.${_gridpkgver}" "${pkgdir}/usr/lib32/libnvidia-glvkspirv.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/32/libnvidia-allocator.so.${_gridpkgver}" "${pkgdir}/usr/lib32/libnvidia-allocator.so.${_gridpkgver}"
# VDPAU
- install -D -m755 "${_gridpkg}/32/libvdpau_nvidia.so.${pkgver}" "${pkgdir}/usr/lib32/vdpau/libvdpau_nvidia.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/32/libvdpau_nvidia.so.${_gridpkgver}" "${pkgdir}/usr/lib32/vdpau/libvdpau_nvidia.so.${_gridpkgver}"
# nvidia-tls library
- install -D -m755 "${_gridpkg}/32/libnvidia-tls.so.${pkgver}" "${pkgdir}/usr/lib32/libnvidia-tls.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/32/libnvidia-tls.so.${_gridpkgver}" "${pkgdir}/usr/lib32/libnvidia-tls.so.${_gridpkgver}"
# CUDA
- install -D -m755 "${_gridpkg}/32/libcuda.so.${pkgver}" "${pkgdir}/usr/lib32/libcuda.so.${pkgver}"
- install -D -m755 "${_gridpkg}/32/libnvcuvid.so.${pkgver}" "${pkgdir}/usr/lib32/libnvcuvid.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/32/libcuda.so.${_gridpkgver}" "${pkgdir}/usr/lib32/libcuda.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/32/libnvcuvid.so.${_gridpkgver}" "${pkgdir}/usr/lib32/libnvcuvid.so.${_gridpkgver}"
# PTX JIT Compiler (Parallel Thread Execution (PTX) is a pseudo-assembly language for CUDA)
- install -D -m755 "${_gridpkg}/32/libnvidia-ptxjitcompiler.so.${pkgver}" "${pkgdir}/usr/lib32/libnvidia-ptxjitcompiler.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/32/libnvidia-ptxjitcompiler.so.${_gridpkgver}" "${pkgdir}/usr/lib32/libnvidia-ptxjitcompiler.so.${_gridpkgver}"
# Optical flow
- install -D -m755 "${_gridpkg}/32/libnvidia-opticalflow.so.${pkgver}" "${pkgdir}/usr/lib32/libnvidia-opticalflow.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/32/libnvidia-opticalflow.so.${_gridpkgver}" "${pkgdir}/usr/lib32/libnvidia-opticalflow.so.${_gridpkgver}"
create_links
@@ -379,8 +383,8 @@ package_lib32-opencl-nvidia-merged() {
conflicts=('lib32-opencl-nvidia')
# OpenCL
- install -D -m755 "${_gridpkg}/32/libnvidia-compiler.so.${pkgver}" "${pkgdir}/usr/lib32/libnvidia-compiler.so.${pkgver}"
- install -D -m755 "${_gridpkg}/32/libnvidia-opencl.so.${pkgver}" "${pkgdir}/usr/lib32/libnvidia-opencl.so.${pkgver}"
+ install -D -m755 "${_gridpkg}/32/libnvidia-compiler.so.${_gridpkgver}" "${pkgdir}/usr/lib32/libnvidia-compiler.so.${_gridpkgver}"
+ install -D -m755 "${_gridpkg}/32/libnvidia-opencl.so.${_gridpkgver}" "${pkgdir}/usr/lib32/libnvidia-opencl.so.${_gridpkgver}"
create_links
diff --git a/disable-nvidia-blob-version-check.patch b/disable-nvidia-blob-version-check.patch
new file mode 100644
index 000000000000..b7e947e486ef
--- /dev/null
+++ b/disable-nvidia-blob-version-check.patch
@@ -0,0 +1,13 @@
+diff --git a/kernel/nvidia/nv.c b/kernel/nvidia/nv.c
+index 74ad0aa..38c9a1d 100644
+--- a/kernel/nvidia/nv.c
++++ b/kernel/nvidia/nv.c
+@@ -2193,7 +2193,7 @@ nvidia_ioctl(
+ {
+ NV_CTL_DEVICE_ONLY(nv);
+
+- rmStatus = rm_perform_version_check(sp, arg_copy, arg_size);
++ rmStatus = NV_OK; //rm_perform_version_check(sp, arg_copy, arg_size);
+ status = ((rmStatus == NV_OK) ? 0 : -EINVAL);
+ break;
+ }
diff --git a/nv-kernel.patch b/nv-kernel.patch
index 9023ebbc6505..ff5138f9987b 100644
--- a/nv-kernel.patch
+++ b/nv-kernel.patch
Binary files differ
diff --git a/nvidia-510.73.05-vgpu-5.18.patch b/nvidia-510.73.05-vgpu-5.18.patch
new file mode 100644
index 000000000000..41dbf0ee71c2
--- /dev/null
+++ b/nvidia-510.73.05-vgpu-5.18.patch
@@ -0,0 +1,73 @@
+diff --git a/kernel/nvidia-vgpu-vfio/nvidia-vgpu-vfio.c b/kernel/nvidia-vgpu-vfio/nvidia-vgpu-vfio.c
+index acb8fb2..a300b73 100644
+--- a/kernel/nvidia-vgpu-vfio/nvidia-vgpu-vfio.c
++++ b/kernel/nvidia-vgpu-vfio/nvidia-vgpu-vfio.c
+@@ -1058,6 +1058,14 @@ static int nv_vgpu_vfio_region_info(vgpu_dev_t *vgpu_dev,
+ struct vfio_region_info_cap_type cap_type = {
+ .header.id = VFIO_REGION_INFO_CAP_TYPE,
+ .header.version = 1,
++#if defined(VFIO_REGION_TYPE_MIGRATION_DEPRECATED)
++ .type = VFIO_REGION_TYPE_MIGRATION_DEPRECATED,
++#else
+ .type = VFIO_REGION_TYPE_MIGRATION,
++#endif
++#if defined(VFIO_REGION_SUBTYPE_MIGRATION_DEPRECATED)
++ .subtype = VFIO_REGION_SUBTYPE_MIGRATION_DEPRECATED
++#else
+ .subtype = VFIO_REGION_SUBTYPE_MIGRATION
++#endif
+ };
+@@ -1261,12 +1261,20 @@ static void vgpu_read_base(vgpu_dev_t *vgpu_dev)
+ NvU32 nv_translate_device_state(NvU32 device_state, NvU32 nv_state)
+ {
+ if (device_state & VFIO_DEVICE_STATE_RUNNING) {
++#if defined(VFIO_DEVICE_STATE_V1_SAVING)
++ if (device_state & VFIO_DEVICE_STATE_V1_SAVING)
++#else
+ if (device_state & VFIO_DEVICE_STATE_SAVING)
++#endif
+ return NV_VFIO_DEVICE_STATE_MIGRATION_PRECOPY_ACTIVE;
+ else
+ return NV_VFIO_DEVICE_STATE_RUNNING;
+ } else {
++#if defined(VFIO_DEVICE_STATE_V1_SAVING)
++ if (device_state & VFIO_DEVICE_STATE_V1_SAVING)
++#else
+ if (device_state & VFIO_DEVICE_STATE_SAVING)
++#endif
+ return NV_VFIO_DEVICE_STATE_MIGRATION_STOPNCOPY_ACTIVE;
+ else if (nv_state == NV_VFIO_DEVICE_STATE_MIGRATION_STOPNCOPY_ACTIVE)
+ return NV_VFIO_DEVICE_STATE_NONE;
+@@ -3262,7 +3262,7 @@ static NV_STATUS nv_create_dma_mappings(vgpu_dev_t *vgpu_dev,
+ }
+
+ pdev = to_pci_dev(NV_GET_MDEV_PARENT(vgpu_dev->mdev));
+- mapped_count = pci_map_sg(pdev, sgt.sgl, sgt.orig_nents, PCI_DMA_BIDIRECTIONAL);
++ mapped_count = dma_map_sg(&pdev->dev, sgt.sgl, sgt.orig_nents, DMA_BIDIRECTIONAL);
+ if (mapped_count == 0)
+ {
+ NV_VGPU_DEV_LOG(VGPU_ERR, vgpu_dev->mdev,
+@@ -3341,7 +3341,7 @@ static void nv_destroy_dma_mappings(vgpu_dev_t *vgpu_dev, mapping_node_t *mappin
+ }
+
+ pdev = to_pci_dev(NV_GET_MDEV_PARENT(vgpu_dev->mdev));
+- pci_unmap_sg(pdev, sgt.sgl, sgt.orig_nents, PCI_DMA_BIDIRECTIONAL);
++ dma_unmap_sg(&pdev->dev, sgt.sgl, sgt.orig_nents, DMA_BIDIRECTIONAL);
+ NV_DMA_FREE_SG_TABLE(sgt);
+
+ destroy_exit:
+@@ -4412,8 +4412,14 @@ static NV_STATUS nv_vgpu_probe(struct pci_dev *dev, NvU32 num_vgpu_types, NvU32
+ pci_set_master(dev);
+
+ pf_dma_mask = dma_get_mask(&dev->physfn->dev);
+- pci_set_dma_mask(dev, pf_dma_mask);
+- pci_set_consistent_dma_mask (dev, pf_dma_mask);
++ dma_set_mask(&dev->dev, pf_dma_mask);
++#if !NV_IS_EXPORT_SYMBOL_GPL_sme_active
++#if defined(NV_DMA_SET_COHERENT_MASK_PRESENT)
++ dma_set_coherent_mask(&dev->dev, pf_dma_mask);
++#else
++ pci_set_consistent_dma_mask(dev, pf_dma_mask);
++#endif
++#endif
+ }
diff --git a/nvidia-vgpu-vfio.patch b/nvidia-vgpu-vfio.patch
deleted file mode 100644
index 0e90986aa30a..000000000000
--- a/nvidia-vgpu-vfio.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- ./kernel/nvidia-vgpu-vfio/nvidia-vgpu-vfio.c 2022-01-24 17:56:30.000000000 -0600
-+++ ./kernel/nvidia-vgpu-vfio/nvidia-vgpu-vfio.c 2022-03-24 16:55:31.344084760 -0500
-@@ -206,4 +206,9 @@ struct parent_ops vgpu_fops = {
- .write = nv_vgpu_vfio_write,
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,15,0)
-+ .open_device = nv_vgpu_vfio_open,
-+ .close_device = nv_vgpu_vfio_close,
-+#else
- .open = nv_vgpu_vfio_open,
- .release = nv_vgpu_vfio_close,
-+#endif
- .ioctl = nv_vgpu_vfio_ioctl,