From 000c412fedef84e334cb3ae9880486357289e70a Mon Sep 17 00:00:00 2001 From: Mike Khiretskiy Date: Tue, 30 Nov 2021 21:28:46 +0300 Subject: [PATCH] =?UTF-8?q?x11-drivers/nvidia-drivers:=20=D0=94=D0=BE?= =?UTF-8?q?=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=20=D0=BF=D0=B0=D1=82=D1=87?= =?UTF-8?q?=20=D0=B4=D0=BB=D1=8F=20=D1=81=D0=B1=D0=BE=D1=80=D0=BA=D0=B8=20?= =?UTF-8?q?nvidia-390=20=D0=B4=D0=BB=D1=8F=20=D1=8F=D0=B4=D1=80=D0=B0=205.?= =?UTF-8?q?15?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Патч переработан из https://gist.githubusercontent.com/joanbm/144a965c36fc1dc0d1f1b9be3438a368/raw/73c41bc2910e1df24fcc34c6ebb9945ba7677fee/nvidia-fix-linux-5.14.patch https://bbs.archlinux.org/viewtopic.php?id=268421 --- .../nvidia-390-kernel-5.15.patch | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 profiles/templates/3.6/6_ac_install_patch/x11-drivers/nvidia-drivers/nvidia-390-kernel-5.15.patch diff --git a/profiles/templates/3.6/6_ac_install_patch/x11-drivers/nvidia-drivers/nvidia-390-kernel-5.15.patch b/profiles/templates/3.6/6_ac_install_patch/x11-drivers/nvidia-drivers/nvidia-390-kernel-5.15.patch new file mode 100644 index 000000000..23c9ed27c --- /dev/null +++ b/profiles/templates/3.6/6_ac_install_patch/x11-drivers/nvidia-drivers/nvidia-390-kernel-5.15.patch @@ -0,0 +1,39 @@ +# Calculate format=diff pkg(sys-kernel/calculate-sources)=>5.15,5.16&&merge(x11-drivers/nvidia-drivers)=>390,397 +diff --git a/kernel/nvidia-drm/nvidia-drm-drv.c b/kernel/nvidia-drm/nvidia-drm-drv.c +index 54389be..16320d0 100644 +--- a/kernel/nvidia-drm/nvidia-drm-drv.c ++++ b/kernel/nvidia-drm/nvidia-drm-drv.c +@@ -811,7 +811,6 @@ static void nv_drm_register_drm_device(const nv_gpu_info_t *gpu_info) + + dev->dev_private = nv_dev; + nv_dev->dev = dev; +- dev->pdev = pdev; + + /* Register DRM device to DRM sub-system */ + +diff --git a/kernel/nvidia/nvlink_linux.c b/kernel/nvidia/nvlink_linux.c +index 872bc90..434acd6 100644 +--- a/kernel/nvidia/nvlink_linux.c ++++ b/kernel/nvidia/nvlink_linux.c +@@ -597,7 +597,7 @@ void NVLINK_API_CALL nvlink_sleep(unsigned int ms) + // the requested timeout has expired, loop until less + // than a jiffie of the desired delay remains. + // +- current->state = TASK_INTERRUPTIBLE; ++ WRITE_ONCE(current->__state, TASK_INTERRUPTIBLE); + do + { + schedule_timeout(jiffies); +diff --git a/kernel/nvidia/os-interface.c b/kernel/nvidia/os-interface.c +index 3603a5a..5ac01c5 100644 +--- a/kernel/nvidia/os-interface.c ++++ b/kernel/nvidia/os-interface.c +@@ -580,7 +580,7 @@ NV_STATUS NV_API_CALL os_delay(NvU32 MilliSeconds) + // the requested timeout has expired, loop until less + // than a jiffie of the desired delay remains. + // +- current->state = TASK_INTERRUPTIBLE; ++ WRITE_ONCE(current->__state, TASK_INTERRUPTIBLE); + do + { + schedule_timeout(jiffies);