Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=a045f4bc5d131a9146afc3aef6a7a053f4cef556
commit a045f4bc5d131a9146afc3aef6a7a053f4cef556 Author: DeX77 <[email protected]> Date: Tue Jul 26 13:17:20 2016 +0200 nvidia-367.35-1-x86_64 * fix build on i686 diff --git a/source/x11-extra/nvidia/FrugalBuild b/source/x11-extra/nvidia/FrugalBuild index 04a8d9c..93bd7e9 100644 --- a/source/x11-extra/nvidia/FrugalBuild +++ b/source/x11-extra/nvidia/FrugalBuild @@ -24,8 +24,10 @@ i686) sha1sums=('8cfa97e0e914832ab46f09c3e41d3fb3024502e1');; x86_64) _F_nvidia_name="NVIDIA-Linux-${CARCH}-${pkgver}-no-compat32" - source=("http://us.download.nvidia.com/XFree86/Linux-${CARCH}/${pkgver}/${_F_nvidia_name}.run") - sha1sums=('694cdc83d4da57c72a4975f345198beb4c8ad720');; + source=("http://us.download.nvidia.com/XFree86/Linux-${CARCH}/${pkgver}/${_F_nvidia_name}.run" \ + kernel-4.7-uvm.patch) + sha1sums=('694cdc83d4da57c72a4975f345198beb4c8ad720' \ + f19edcb44a8ce32a9c03d2665ca801b408c553d5);; esac source=("${source[@]}" \ @@ -36,7 +38,7 @@ source=("${source[@]}" \ sha1sums=("${sha1sums[@]}" \ 'a2bf63eb7dffdfc9268534654d3864e865af6834' \ '15455cb16a6638ee348dc01620c7f64234178ac8' \ - '6531dab3216afe8a918d62356c00e4870454eba2') + '1f9fa2c110c471271ffa88c08123af18dbb66d2b' ) build () { cd $Fsrcdir diff --git a/source/x11-extra/nvidia/kernel-4.6.patch b/source/x11-extra/nvidia/kernel-4.6.patch deleted file mode 100644 index 3dde473..0000000 --- a/source/x11-extra/nvidia/kernel-4.6.patch +++ /dev/null @@ -1,50 +0,0 @@ ---- a/kernel/nvidia-drm/nvidia-drm-fb.c -+++ b/kernel/nvidia-drm/nvidia-drm-fb.c -@@ -77,7 +77,7 @@ - static struct drm_framebuffer *internal_framebuffer_create - ( - struct drm_device *dev, -- struct drm_file *file, struct drm_mode_fb_cmd2 *cmd, -+ struct drm_file *file, const struct drm_mode_fb_cmd2 *cmd, - uint64_t nvkms_params_ptr, - uint64_t nvkms_params_size - ) -@@ -199,7 +199,7 @@ - struct drm_framebuffer *nvidia_drm_framebuffer_create - ( - struct drm_device *dev, -- struct drm_file *file, struct drm_mode_fb_cmd2 *cmd -+ struct drm_file *file, const struct drm_mode_fb_cmd2 *cmd - ) - { - return internal_framebuffer_create(dev, file, cmd, 0, 0); ---- a/kernel/nvidia-drm/nvidia-drm-fb.h -+++ b/kernel/nvidia-drm/nvidia-drm-fb.h -@@ -45,7 +45,7 @@ - struct drm_framebuffer *nvidia_drm_framebuffer_create - ( - struct drm_device *dev, -- struct drm_file *file, struct drm_mode_fb_cmd2 *cmd -+ struct drm_file *file, const struct drm_mode_fb_cmd2 *cmd - ); - - int nvidia_drm_add_nvkms_fb( ---- a/kernel/nvidia-drm/nvidia-drm-linux.c -+++ b/kernel/nvidia-drm/nvidia-drm-linux.c -@@ -31,6 +31,7 @@ - - #if defined(NV_DRM_AVAILABLE) - -+#include "nv-mm.h" - #include "nv-pgprot.h" - - MODULE_PARM_DESC( -@@ -121,8 +122,7 @@ - - down_read(&mm->mmap_sem); - -- pages_pinned = get_user_pages(current, mm, -- address, pages_count, write, force, -+ pages_pinned = NV_GET_USER_PAGES(address, pages_count, write, force, - user_pages, NULL); - up_read(&mm->mmap_sem); \ No newline at end of file diff --git a/source/x11-extra/nvidia/kernel-4.7-uvm.patch b/source/x11-extra/nvidia/kernel-4.7-uvm.patch new file mode 100644 index 0000000..2a9d3b4 --- /dev/null +++ b/source/x11-extra/nvidia/kernel-4.7-uvm.patch @@ -0,0 +1,18 @@ +diff -ur b/kernel/nvidia-uvm/uvm_linux.h b/kernel/nvidia-uvm/uvm_linux.h +--- kernel/nvidia-uvm/uvm_linux.h 2016-06-10 02:37:08.000000000 +0200 ++++ kernel/nvidia-uvm/uvm_linux.h 2016-06-14 02:49:35.214495381 +0200 +@@ -563,12 +563,13 @@ + INIT_RADIX_TREE(tree, GFP_NOWAIT); + } + ++/* + static bool radix_tree_empty(struct radix_tree_root *tree) + { + void *dummy; + return radix_tree_gang_lookup(tree, &dummy, 0, 1) == 0; + } +- ++*/ + + #if !defined(NV_USLEEP_RANGE_PRESENT) + static void __sched usleep_range(unsigned long min, unsigned long max) diff --git a/source/x11-extra/nvidia/kernel-4.7.patch b/source/x11-extra/nvidia/kernel-4.7.patch index d581a5e..11d8fd4 100644 --- a/source/x11-extra/nvidia/kernel-4.7.patch +++ b/source/x11-extra/nvidia/kernel-4.7.patch @@ -1,6 +1,6 @@ -diff -ur NVIDIA-Linux-x86_64-367.27/kernel/nvidia-drm/nvidia-drm-fb.c b/kernel/nvidia-drm/nvidia-drm-fb.c ---- NVIDIA-Linux-x86_64-367.27/kernel/nvidia-drm/nvidia-drm-fb.c 2016-06-10 02:38:43.000000000 +0200 -+++ b/kernel/nvidia-drm/nvidia-drm-fb.c 2016-06-14 02:45:44.263506669 +0200 +diff -ur b/kernel/nvidia-drm/nvidia-drm-fb.c b/kernel/nvidia-drm/nvidia-drm-fb.c +--- kernel/nvidia-drm/nvidia-drm-fb.c 2016-06-10 02:38:43.000000000 +0200 ++++ kernel/nvidia-drm/nvidia-drm-fb.c 2016-06-14 02:45:44.263506669 +0200 @@ -114,7 +114,7 @@ * We don't support any planar format, pick up first buffer only. */ @@ -10,9 +10,9 @@ diff -ur NVIDIA-Linux-x86_64-367.27/kernel/nvidia-drm/nvidia-drm-fb.c b/kernel/n if (gem == NULL) { -diff -ur NVIDIA-Linux-x86_64-367.27/kernel/nvidia-drm/nvidia-drm-gem.c b/kernel/nvidia-drm/nvidia-drm-gem.c ---- NVIDIA-Linux-x86_64-367.27/kernel/nvidia-drm/nvidia-drm-gem.c 2016-06-10 02:38:43.000000000 +0200 -+++ b/kernel/nvidia-drm/nvidia-drm-gem.c 2016-06-14 02:45:44.263506669 +0200 +diff -ur b/kernel/nvidia-drm/nvidia-drm-gem.c b/kernel/nvidia-drm/nvidia-drm-gem.c +--- kernel/nvidia-drm/nvidia-drm-gem.c 2016-06-10 02:38:43.000000000 +0200 ++++ kernel/nvidia-drm/nvidia-drm-gem.c 2016-06-14 02:45:44.263506669 +0200 @@ -408,7 +408,7 @@ mutex_lock(&dev->struct_mutex); @@ -22,21 +22,3 @@ diff -ur NVIDIA-Linux-x86_64-367.27/kernel/nvidia-drm/nvidia-drm-gem.c b/kernel/ if (gem == NULL) { -diff -ur NVIDIA-Linux-x86_64-367.27/kernel/nvidia-uvm/uvm_linux.h b/kernel/nvidia-uvm/uvm_linux.h ---- NVIDIA-Linux-x86_64-367.27/kernel/nvidia-uvm/uvm_linux.h 2016-06-10 02:37:08.000000000 +0200 -+++ b/kernel/nvidia-uvm/uvm_linux.h 2016-06-14 02:49:35.214495381 +0200 -@@ -563,12 +563,13 @@ - INIT_RADIX_TREE(tree, GFP_NOWAIT); - } - -+/* - static bool radix_tree_empty(struct radix_tree_root *tree) - { - void *dummy; - return radix_tree_gang_lookup(tree, &dummy, 0, 1) == 0; - } -- -+*/ - - #if !defined(NV_USLEEP_RANGE_PRESENT) - static void __sched usleep_range(unsigned long min, unsigned long max) _______________________________________________ Frugalware-git mailing list [email protected] http://frugalware.org/mailman/listinfo/frugalware-git
