Mailinglist Archive: opensuse-factory (454 mails)

< Previous Next >
Re: [opensuse-factory] Nvidia driver 384.98 + latest kernel 4.14.9-1 in TW


On 31/12/2017 06:13, Basil Chupin wrote:
On 28/12/17 15:53, Basil Chupin wrote:
On 27/12/17 19:58, Christophe Giboudeaux wrote:
On mercredi 27 décembre 2017 07:18:48 CET Basil Chupin wrote:
Driver 384.98 does not compile under kernel 4.14.9-1. The
nvidia-installer log shows this error (for those who understand what it
means):

-> Error.
ERROR: An error occurred while performing the step: "Checking to see
whether the nvidia-uvm kernel module was successfully built". See
/var/log/nvidia-installer.log for details.
[pruned]


Anyone know of a work-around (in lieu of the suggested option given in
the last para.?

Yes, read https://devtalk.nvidia.com/default/topic/1028016/b/t/post/5228999/
Thank you, Christophe. Will apply the patch later today.

BC

OK, I give up! :-)

Here is the patch mentioned in the URL above (I named the patch as
Testing.txt):

diff -durN nvidia-384-orig/nvidia-uvm/uvm8_va_block.c
nvidia-384/nvidia-uvm/uvm8_va_block.c
--- nvidia-384-orig/nvidia-uvm/uvm8_va_block.c    2017-12-26
11:20:17.097715622 +0100
+++ nvidia-384/nvidia-uvm/uvm8_va_block.c    2017-12-26

The above "---" and "---" lines show patch where to find the file to patch, it seems your working directory is /data/Nvidia-384.98 so if you delete the "nvidia-384-orig/" and "nvidia-384/" parts from the:
"--- nvidia-384-orig/nvidia-uvm/uvm8_va_block.c" and
"+++ nvidia-384/nvidia-uvm/uvm8_va_block.c" parts in patch then it should apply, with a bit of luck.

11:20:29.674381760 +0100
@@ -36,6 +36,10 @@
#include "uvm8_perf_prefetch.h"
#include "uvm8_mem.h"
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,9)
+#include <linux/sched/task_stack.h>
+#endif
+
typedef enum
{
   BLOCK_PTE_OP_MAP,


 I apply it and get the following result:


linux-8qdh:/data/Nvidia-384.98 # sh ./NVIDIA*.run --apply-patch Testing.txt
Verifying archive integrity... OK
Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86_64
384.98..........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
can't find file to patch at input line 4
Perhaps you used the wrong -p or --strip option?

If you could have specified patch -p1 the patch would have applied but it's nvidia's script which is running patch so hopefully the advice I gave above will work.

The text leading up to this was:
--------------------------
|diff -durN nvidia-384-orig/nvidia-uvm/uvm8_va_block.c
nvidia-384/nvidia-uvm/uvm8_va_block.c
|--- nvidia-384-orig/nvidia-uvm/uvm8_va_block.c 2017-12-26
11:20:17.097715622 +0100
|+++ nvidia-384/nvidia-uvm/uvm8_va_block.c      2017-12-26
11:20:29.674381760 +0100
--------------------------
File to patch:
Skip this patch? [y]
Skipping patch.
/usr/bin/patch: **** malformed patch at line 12: typedef enum

Failed to apply patch file "/data/Nvidia-384.98/Testing.txt".


Now, I have only applied 3 or 4 patches in my life so I know bugger all
about patches and how to apply them. The cli command above is what I
found after searching around using a search engine. Obviously the wrong
command :-(, but I know not any better.

Could someone please "tell" me how to correctly apply the patch
mentioned in Christophe's post?

(Yesterday the latest version of the kernel -- 4.1.10-1.1 -- was
installed but this did not have the "fix" necessary to handle the Nvidia
driver 384.98.)

BC

Hope this works
Dave P
--
To unsubscribe, e-mail: opensuse-factory+unsubscribe@xxxxxxxxxxxx
To contact the owner, e-mail: opensuse-factory+owner@xxxxxxxxxxxx

< Previous Next >
Follow Ups