diff --git a/packages/x11/driver/xf86-video-nvidia/patches/xf86-video-nvidia-0001-kernel-4.6-fix.patch b/packages/x11/driver/xf86-video-nvidia/patches/xf86-video-nvidia-0001-kernel-4.6-fix.patch new file mode 100644 index 0000000000..bfe69b3418 --- /dev/null +++ b/packages/x11/driver/xf86-video-nvidia/patches/xf86-video-nvidia-0001-kernel-4.6-fix.patch @@ -0,0 +1,29 @@ +--- a/kernel/os-mlock.c 2016-04-03 05:07:03.000000000 +0200 ++++ b/kernel/os-mlock.c 2016-04-17 00:46:54.758305738 +0200 +@@ -116,7 +116,7 @@ + } + + down_read(&mm->mmap_sem); +- ret = get_user_pages(current, mm, (unsigned long)address, ++ ret = get_user_pages((unsigned long)address, + page_count, write, force, user_pages, NULL); + up_read(&mm->mmap_sem); + pinned = ret; +@@ -129,7 +129,7 @@ + else if (pinned < page_count) + { + for (i = 0; i < pinned; i++) +- page_cache_release(user_pages[i]); ++ put_page(user_pages[i]); + os_free_mem(user_pages); + return NV_ERR_INVALID_ADDRESS; + } +@@ -156,7 +156,7 @@ + { + if (write) + set_page_dirty_lock(user_pages[i]); +- page_cache_release(user_pages[i]); ++ put_page(user_pages[i]); + } + + os_free_mem(user_pages);