From 2d10cd458635ede1f36b3e18c15c67020f6961c1 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jan=20R=C4=99korajski?= Date: Sun, 19 Nov 2023 15:35:43 +0100 Subject: [PATCH] - fix building with kernel 6.6, rel 6 --- ..._prime_handle_to_fd-changes-from-470.patch | 49 +++++++++++++++++++ xorg-driver-video-nvidia-legacy-390xx.spec | 4 +- 2 files changed, 52 insertions(+), 1 deletion(-) create mode 100644 kernel-6.6-backport-drm_gem_prime_handle_to_fd-changes-from-470.patch diff --git a/kernel-6.6-backport-drm_gem_prime_handle_to_fd-changes-from-470.patch b/kernel-6.6-backport-drm_gem_prime_handle_to_fd-changes-from-470.patch new file mode 100644 index 0000000..ffcab89 --- /dev/null +++ b/kernel-6.6-backport-drm_gem_prime_handle_to_fd-changes-from-470.patch @@ -0,0 +1,49 @@ +From df6b55bb77ad479fcbcbcdaffd756369ed9dc4fb Mon Sep 17 00:00:00 2001 +From: Andreas Beckmann +Date: Wed, 1 Nov 2023 10:31:40 +0100 +Subject: [PATCH] backport drm_gem_prime_handle_to_fd changes from 470.223.02 + +--- + nvidia-drm/nvidia-drm-drv.c | 12 ++++++++++++ + nvidia-drm/nvidia-drm.Kbuild | 1 + + 2 files changed, 13 insertions(+) + +diff --git a/kernel/nvidia-drm/nvidia-drm-drv.c b/kernel/nvidia-drm/nvidia-drm-drv.c +index 7e6f5e8..c0cc77a 100644 +--- a/kernel/nvidia-drm/nvidia-drm-drv.c ++++ b/kernel/nvidia-drm/nvidia-drm-drv.c +@@ -697,7 +697,19 @@ static struct drm_driver nv_drm_driver = { + .ioctls = nv_drm_ioctls, + .num_ioctls = ARRAY_SIZE(nv_drm_ioctls), + ++/* ++ * linux-next commit 71a7974ac701 ("drm/prime: Unexport helpers for fd/handle ++ * conversion") unexports drm_gem_prime_handle_to_fd() and ++ * drm_gem_prime_fd_to_handle(). ++ * ++ * Prior linux-next commit 6b85aa68d9d5 ("drm: Enable PRIME import/export for ++ * all drivers") made these helpers the default when .prime_handle_to_fd / ++ * .prime_fd_to_handle are unspecified, so it's fine to just skip specifying ++ * them if the helpers aren't present. ++ */ ++#if NV_IS_EXPORT_SYMBOL_PRESENT_drm_gem_prime_handle_to_fd + .prime_handle_to_fd = drm_gem_prime_handle_to_fd, ++#endif + + #if defined(NV_DRM_DRIVER_HAS_GEM_PRIME_CALLBACKS) + .gem_prime_export = nv_drm_gem_prime_export, +diff --git a/kernel/nvidia-drm/nvidia-drm.Kbuild b/kernel/nvidia-drm/nvidia-drm.Kbuild +index 60b0412..2a8148f 100644 +--- a/kernel/nvidia-drm/nvidia-drm.Kbuild ++++ b/kernel/nvidia-drm/nvidia-drm.Kbuild +@@ -51,6 +51,7 @@ NV_CONFTEST_GENERIC_COMPILE_TESTS += drm_available + NV_CONFTEST_GENERIC_COMPILE_TESTS += drm_atomic_available + NV_CONFTEST_GENERIC_COMPILE_TESTS += is_export_symbol_gpl_refcount_inc + NV_CONFTEST_GENERIC_COMPILE_TESTS += is_export_symbol_gpl_refcount_dec_and_test ++NV_CONFTEST_GENERIC_COMPILE_TESTS += is_export_symbol_present_drm_gem_prime_handle_to_fd + + NV_CONFTEST_FUNCTION_COMPILE_TESTS += drm_dev_unref + NV_CONFTEST_FUNCTION_COMPILE_TESTS += drm_reinit_primary_mode_group +-- +2.20.1 + diff --git a/xorg-driver-video-nvidia-legacy-390xx.spec b/xorg-driver-video-nvidia-legacy-390xx.spec index eb00f7b..42e9aa1 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 5 +%define rel 6 %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 @@ -58,6 +58,7 @@ Patch5: kernel-6.4.patch Patch6: kernel-6.5-garbage-collect-all-references-to-get_user.patch Patch7: kernel-6.5-handle-get_user_pages-vmas-argument-remova.patch Patch8: kernel-6.5-handle-get_user_pages-vmas-argument-removal-x8664.patch +Patch9: kernel-6.6-backport-drm_gem_prime_handle_to_fd-changes-from-470.patch URL: https://www.nvidia.com/en-us/drivers/unix/ BuildRequires: rpm-build >= 4.6 BuildRequires: rpmbuild(macros) >= 1.752 @@ -329,6 +330,7 @@ rm -rf NVIDIA-Linux-x86*-%{version}* %ifarch %{x8664} %patch8 -p1 %endif +%patch9 -p1 echo 'EXTRA_CFLAGS += -Wno-pointer-arith -Wno-sign-compare -Wno-unused' >> kernel/Makefile.kbuild %build -- 2.44.0