update to 470.161.03 [release 470.161.03-1mamba;Tue Mar 07 2023]

This commit is contained in:
Silvan Calarco 2024-01-06 07:47:35 +01:00
parent 7ab2c01981
commit 97d2edab20
6 changed files with 1126 additions and 0 deletions

View File

@ -1,2 +1,6 @@
# nvidia_470
nvidia proprietary accelerated drivers for the Linux Kernel.
These packages contains parts that are not (fully) released under GPL license.
These modules are packaged apart from the main kernel modules because they are not fully released as GPL. This means that some modules might have been built from binary objects distributed by the hardware manufacturer. By loading this modules you will "taint" the kernel, which means that your running system won't be 100% GPL.

View File

@ -0,0 +1,30 @@
diff -Nru NVIDIA-Linux-x86-331.20.orig/kernel/conftest.sh NVIDIA-Linux-x86-331.20/kernel/conftest.sh
--- NVIDIA-Linux-x86-331.20.orig/kernel/conftest.sh 2013-10-31 01:30:27.000000000 +0100
+++ NVIDIA-Linux-x86-331.20/kernel/conftest.sh 2013-12-02 01:03:17.234157468 +0100
@@ -175,7 +175,7 @@
if [ "$OUTPUT" != "$SOURCES" ]; then
MACH_CFLAGS="-I$HEADERS/asm-$ARCH/mach-default"
- if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" ]; then
+ if [ "$ARCH" = "x86" -o "$ARCH" = "x86_64" ]; then
MACH_CFLAGS="$MACH_CFLAGS -I$HEADERS/asm-x86/mach-default"
MACH_CFLAGS="$MACH_CFLAGS -I$SOURCES/arch/x86/include/asm/mach-default"
MACH_CFLAGS="$MACH_CFLAGS -I$HEADERS/arch/x86/include/uapi"
@@ -189,7 +189,7 @@
fi
else
MACH_CFLAGS="-I$HEADERS/asm/mach-default"
- if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" ]; then
+ if [ "$ARCH" = "x86" -o "$ARCH" = "x86_64" ]; then
MACH_CFLAGS="$MACH_CFLAGS -I$HEADERS/asm-x86/mach-default"
MACH_CFLAGS="$MACH_CFLAGS -I$SOURCES/arch/x86/include/asm/mach-default"
MACH_CFLAGS="$MACH_CFLAGS -I$HEADERS/arch/x86/include/uapi"
@@ -206,7 +206,7 @@
CFLAGS="$BASE_CFLAGS $MACH_CFLAGS $OUTPUT_CFLAGS $AUTOCONF_CFLAGS"
CFLAGS="$CFLAGS -I$HEADERS -I$HEADERS/uapi -I$OUTPUT/include/generated/uapi"
- if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" ]; then
+ if [ "$ARCH" = "x86" -o "$ARCH" = "x86_64" ]; then
CFLAGS="$CFLAGS -I$SOURCES/arch/x86/include"
CFLAGS="$CFLAGS -I$SOURCES/arch/x86/include/uapi"
CFLAGS="$CFLAGS -I$OUTPUT/arch/x86/include/generated"

View File

@ -0,0 +1,42 @@
--- a/kernel/nvidia-drm/nvidia-drm-fb.c 2016-05-17 19:36:45.210422962 +0700
+++ b/kernel/nvidia-drm/nvidia-drm-fb.c 2016-05-17 19:43:19.621579825 +0700
@@ -77,7 +77,7 @@
static struct drm_framebuffer *internal_framebuffer_create
(
struct drm_device *dev,
- struct drm_file *file, struct drm_mode_fb_cmd2 *cmd,
+ struct drm_file *file, const struct drm_mode_fb_cmd2 *cmd,
uint64_t nvkms_params_ptr,
uint64_t nvkms_params_size
)
@@ -199,7 +199,7 @@
struct drm_framebuffer *nvidia_drm_framebuffer_create
(
struct drm_device *dev,
- struct drm_file *file, struct drm_mode_fb_cmd2 *cmd
+ struct drm_file *file, const struct drm_mode_fb_cmd2 *cmd
)
{
return internal_framebuffer_create(dev, file, cmd, 0, 0);
--- a/kernel/nvidia-drm/nvidia-drm-fb.h 2016-05-17 19:36:45.210422962 +0700
+++ b/kernel/nvidia-drm/nvidia-drm-fb.h 2016-05-17 19:36:48.517069977 +0700
@@ -45,7 +45,7 @@
struct drm_framebuffer *nvidia_drm_framebuffer_create
(
struct drm_device *dev,
- struct drm_file *file, struct drm_mode_fb_cmd2 *cmd
+ struct drm_file *file, const struct drm_mode_fb_cmd2 *cmd
);
int nvidia_drm_add_nvkms_fb(
--- a/kernel/nvidia-drm/nvidia-drm-linux.c 2016-05-17 19:36:45.210422962 +0700
+++ b/kernel/nvidia-drm/nvidia-drm-linux.c 2016-05-17 19:42:18.677163127 +0700
@@ -121,7 +121,7 @@
down_read(&mm->mmap_sem);
- pages_pinned = get_user_pages(current, mm,
+ pages_pinned = get_user_pages_remote(current, mm,
address, pages_count, write, force,
user_pages, NULL);
up_read(&mm->mmap_sem);

View File

@ -0,0 +1,8 @@
Section "OutputClass"
Identifier "nvidia"
MatchDriver "nvidia-drm"
Driver "nvidia"
Option "AllowEmptyInitialConfiguration"
ModulePath "/usr/lib64/nvidia/xorg"
ModulePath "/usr/lib64/xorg/modules"
EndSection

1
nvidia.sysusers Normal file
View File

@ -0,0 +1 @@
u nvidia-persistenced 143 'NVIDIA Persistence Daemon'

1041
nvidia_470.spec Normal file

File diff suppressed because it is too large Load Diff