summary refs log tree commit diff
path: root/pkgs/os-specific/linux/nvidia-x11
diff options
context:
space:
mode:
authorBastian Köcher <git@kchr.de>2018-04-05 11:48:56 +0200
committerBastian Köcher <git@kchr.de>2018-04-05 11:48:56 +0200
commit5d2331e3c6ec5e80295faed7ed55ff99ddd378d7 (patch)
treefc8abb86071377f5b03b7ed0bd48e933a1a8220d /pkgs/os-specific/linux/nvidia-x11
parentf8a41e52111b22409bf90d785f046dc2a3000ba3 (diff)
downloadnixlib-5d2331e3c6ec5e80295faed7ed55ff99ddd378d7.tar
nixlib-5d2331e3c6ec5e80295faed7ed55ff99ddd378d7.tar.gz
nixlib-5d2331e3c6ec5e80295faed7ed55ff99ddd378d7.tar.bz2
nixlib-5d2331e3c6ec5e80295faed7ed55ff99ddd378d7.tar.lz
nixlib-5d2331e3c6ec5e80295faed7ed55ff99ddd378d7.tar.xz
nixlib-5d2331e3c6ec5e80295faed7ed55ff99ddd378d7.tar.zst
nixlib-5d2331e3c6ec5e80295faed7ed55ff99ddd378d7.zip
nvidia-x11: 390.25 -> 390.48
Also fixes missing symbol error with kernel 4.16.
Diffstat (limited to 'pkgs/os-specific/linux/nvidia-x11')
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/default.nix12
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/fix_missing_symbol.patch19
2 files changed, 26 insertions, 5 deletions
diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix
index 57899d6f893f..11a97d420a83 100644
--- a/pkgs/os-specific/linux/nvidia-x11/default.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/default.nix
@@ -17,11 +17,13 @@ in
 rec {
   # Policy: use the highest stable version as the default (on our master).
   stable = generic {
-    version = "390.25";
-    sha256_32bit = "0fkbpx01l46pprrd4nlc2y6hfmkb55ddlwm1r84kr6j08qmmb0qi";
-    sha256_64bit = "0whsls1mm6vkll5qmxnyz8vjgspp1rmqpsampgi83k62n514c08r";
-    settingsSha256 = "1jhbr68z36s3fr9vx3ga2f6yrzlwpc0j5mw8h12g65p7wdsbk6y7";
-    persistencedSha256 = "033azbhi50f1b0lw759sncgf7ckh2m2c0khj5v15sch9kl1fzk8i";
+    version = "390.48";
+    sha256_32bit = "1y6n2hfz9vd0h7gd31fgxcl76s5pjf8afwqyq5slqpcxpd78j5ai";
+    sha256_64bit = "16a3blvizcksmaxr644s857yanw3i3vcvqvn7qnwbsbqpmxga09c";
+    settingsSha256 = "058xaiw5g0kxrvc3lvy4424fqbjkvmsznj2v73cgbm25i1m83krl";
+    persistencedSha256 = "0y86bhzl42lqyrbibqzf8a8yd49zbq3ryb78vgsl13i44f9sl79k";
+
+    patches = [ ./fix_missing_symbol.patch ];
   };
 
   beta = stable; # not enough interest to maintain beta ATM
diff --git a/pkgs/os-specific/linux/nvidia-x11/fix_missing_symbol.patch b/pkgs/os-specific/linux/nvidia-x11/fix_missing_symbol.patch
new file mode 100644
index 000000000000..ea783b4f011e
--- /dev/null
+++ b/pkgs/os-specific/linux/nvidia-x11/fix_missing_symbol.patch
@@ -0,0 +1,19 @@
+https://devtalk.nvidia.com/default/topic/1030082/linux/kernel-4-16-rc1-breaks-latest-drivers-unknown-symbol-swiotlb_map_sg_attrs-/
+--- a/kernel/common/inc/nv-linux.h~     2018-01-25 06:09:41.000000000 +0100
++++ b/kernel/common/inc/nv-linux.h      2018-03-05 13:58:17.746725638 +0100
+@@ -1209,6 +1209,7 @@ static inline NvU32 nv_alloc_init_flags(
+ static inline NvBool nv_dma_maps_swiotlb(struct pci_dev *dev)
+ {
+     NvBool swiotlb_in_use = NV_FALSE;
++#if 0
+ #if defined(CONFIG_SWIOTLB)
+   #if defined(NV_DMA_OPS_PRESENT) || defined(NV_GET_DMA_OPS_PRESENT)
+     /*
+@@ -1251,7 +1252,7 @@ static inline NvBool nv_dma_maps_swiotlb
+     swiotlb_in_use = (swiotlb == 1);
+   #endif
+ #endif
+-
++#endif
+     return swiotlb_in_use;
+ }