[packages/xorg-driver-video-nvidia-legacy-390xx] fix build with kernel 6.17; rel 14
atler
atler at pld-linux.org
Sat Oct 4 19:06:09 CEST 2025
commit 37ffa62c586cb3aa67a42e436ad9dd8b79bb84d3
Author: Jan Palus <jpalus at fastmail.com>
Date: Sat Oct 4 19:05:29 2025 +0200
fix build with kernel 6.17; rel 14
kernel-6.17.patch | 94 ++++++++++++++++++++++++++++++
xorg-driver-video-nvidia-legacy-390xx.spec | 4 +-
2 files changed, 97 insertions(+), 1 deletion(-)
---
diff --git a/xorg-driver-video-nvidia-legacy-390xx.spec b/xorg-driver-video-nvidia-legacy-390xx.spec
index fcdad70..319af0b 100644
--- a/xorg-driver-video-nvidia-legacy-390xx.spec
+++ b/xorg-driver-video-nvidia-legacy-390xx.spec
@@ -29,7 +29,7 @@ exit 1
%define no_install_post_check_so 1
-%define rel 13
+%define rel 14
%define pname xorg-driver-video-nvidia-legacy-390xx
Summary: Linux Drivers for nVidia GeForce/Quadro Chips
Summary(hu.UTF-8): Linux meghajtók nVidia GeForce/Quadro chipekhez
@@ -67,6 +67,7 @@ Patch14: kernel-6.13.patch
Patch15: kernel-6.14.patch
Patch16: gcc15.patch
Patch17: kernel-6.15.patch
+Patch18: kernel-6.17.patch
URL: https://www.nvidia.com/en-us/drivers/unix/
BuildRequires: rpm-build >= 4.6
BuildRequires: rpmbuild(macros) >= 1.752
@@ -352,6 +353,7 @@ rm -rf NVIDIA-Linux-x86*-%{version}*
%patch -P 15 -p1
%patch -P 16 -p1
%patch -P 17 -p1
+%patch -P 18 -p1
%build
%{?with_kernel:%{expand:%build_kernel_packages}}
diff --git a/kernel-6.17.patch b/kernel-6.17.patch
new file mode 100644
index 0000000..4d577af
--- /dev/null
+++ b/kernel-6.17.patch
@@ -0,0 +1,94 @@
+--- NVIDIA-Linux-x86_64-390.157-no-compat32/kernel/conftest.sh.orig 2025-10-04 18:00:11.127759377 +0200
++++ NVIDIA-Linux-x86_64-390.157-no-compat32/kernel/conftest.sh 2025-10-04 18:19:17.233544201 +0200
+@@ -3635,6 +3635,25 @@
+ compile_check_conftest "$CODE" "NV_KMEM_CACHE_CREATE_USERCOPY_PRESENT" "" "functions"
+ ;;
+
++ drm_fb_create_takes_format_info)
++ #
++ # Determine if a `struct drm_format_info *` is passed into
++ # the .fb_create callback. If so, it will have 4 arguments.
++ # This parameter was added in commit 81112eaac559 ("drm:
++ # Pass the format info to .fb_create") in linux-next
++ # (2025-07-16)
++ CODE="
++ #include <drm/drm_mode_config.h>
++ #include <drm/drm_framebuffer.h>
++
++ static const struct drm_mode_config_funcs funcs;
++ void conftest_drm_fb_create_takes_format_info(void) {
++ funcs.fb_create(NULL, NULL, NULL, NULL);
++ }"
++
++ compile_check_conftest "$CODE" "NV_DRM_FB_CREATE_TAKES_FORMAT_INFO" "" "types"
++ ;;
++
+ drm_connector_funcs_have_mode_in_name)
+ #
+ # Determine if _mode_ is present in connector function names.
+--- NVIDIA-Linux-x86_64-390.157-no-compat32/kernel/nvidia-drm/nvidia-drm-drv.c.orig 2025-10-04 18:00:11.125327631 +0200
++++ NVIDIA-Linux-x86_64-390.157-no-compat32/kernel/nvidia-drm/nvidia-drm-drv.c 2025-10-04 18:08:08.182118372 +0200
+@@ -137,6 +137,9 @@
+ static struct drm_framebuffer *nv_drm_framebuffer_create(
+ struct drm_device *dev,
+ struct drm_file *file,
++#if defined(NV_DRM_FB_CREATE_TAKES_FORMAT_INFO)
++ const struct drm_format_info *info,
++#endif
+ #if defined(NV_DRM_HELPER_MODE_FILL_FB_STRUCT_HAS_CONST_MODE_CMD_ARG)
+ const struct drm_mode_fb_cmd2 *cmd
+ #else
+@@ -152,6 +155,9 @@
+ fb = nv_drm_internal_framebuffer_create(
+ dev,
+ file,
++#if defined(NV_DRM_FB_CREATE_TAKES_FORMAT_INFO)
++ info,
++#endif
+ &local_cmd);
+
+ #if !defined(NV_DRM_HELPER_MODE_FILL_FB_STRUCT_HAS_CONST_MODE_CMD_ARG)
+--- NVIDIA-Linux-x86_64-390.157-no-compat32/kernel/nvidia-drm/nvidia-drm-fb.c.orig 2025-10-04 18:00:11.106930610 +0200
++++ NVIDIA-Linux-x86_64-390.157-no-compat32/kernel/nvidia-drm/nvidia-drm-fb.c 2025-10-04 18:21:26.081871861 +0200
+@@ -157,6 +157,9 @@
+ struct drm_framebuffer *nv_drm_internal_framebuffer_create(
+ struct drm_device *dev,
+ struct drm_file *file,
++#if defined(NV_DRM_FB_CREATE_TAKES_FORMAT_INFO)
++ const struct drm_format_info *info,
++#endif
+ struct drm_mode_fb_cmd2 *cmd)
+ {
+ struct nv_drm_framebuffer *nv_fb;
+@@ -183,6 +186,9 @@
+ dev,
+ #endif
+ &nv_fb->base,
++#if defined(NV_DRM_FB_CREATE_TAKES_FORMAT_INFO)
++ info,
++#endif
+ cmd);
+
+ /*
+--- NVIDIA-Linux-x86_64-390.157-no-compat32/kernel/nvidia-drm/nvidia-drm-fb.h.orig 2022-10-12 11:30:31.000000000 +0200
++++ NVIDIA-Linux-x86_64-390.157-no-compat32/kernel/nvidia-drm/nvidia-drm-fb.h 2025-10-04 18:11:29.866410753 +0200
+@@ -58,6 +58,9 @@
+ struct drm_framebuffer *nv_drm_internal_framebuffer_create(
+ struct drm_device *dev,
+ struct drm_file *file,
++#if defined(NV_DRM_FB_CREATE_TAKES_FORMAT_INFO)
++ const struct drm_format_info *info,
++#endif
+ struct drm_mode_fb_cmd2 *cmd);
+
+ #endif /* NV_DRM_ATOMIC_MODESET_AVAILABLE */
+--- NVIDIA-Linux-x86_64-390.157-no-compat32/kernel/nvidia-drm/nvidia-drm.Kbuild.orig 2025-10-04 18:26:55.544150286 +0200
++++ NVIDIA-Linux-x86_64-390.157-no-compat32/kernel/nvidia-drm/nvidia-drm.Kbuild 2025-10-04 18:32:30.990156500 +0200
+@@ -61,6 +61,7 @@
+ NV_CONFTEST_FUNCTION_COMPILE_TESTS += drm_atomic_state_ref_counting
+ NV_CONFTEST_FUNCTION_COMPILE_TESTS += drm_driver_has_gem_prime_res_obj
+ NV_CONFTEST_FUNCTION_COMPILE_TESTS += drm_atomic_helper_connector_dpms
++NV_CONFTEST_FUNCTION_COMPILE_TESTS += drm_fb_create_takes_format_info
+ NV_CONFTEST_FUNCTION_COMPILE_TESTS += drm_connector_funcs_have_mode_in_name
+ NV_CONFTEST_FUNCTION_COMPILE_TESTS += vmf_insert_pfn
+ NV_CONFTEST_FUNCTION_COMPILE_TESTS += drm_framebuffer_get
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/xorg-driver-video-nvidia-legacy-390xx.git/commitdiff/37ffa62c586cb3aa67a42e436ad9dd8b79bb84d3
More information about the pld-cvs-commit
mailing list