diff --git a/packages/x11/driver/xf86-video-nvidia/package.mk b/packages/x11/driver/xf86-video-nvidia/package.mk index 009e552b52..88e41f34fd 100644 --- a/packages/x11/driver/xf86-video-nvidia/package.mk +++ b/packages/x11/driver/xf86-video-nvidia/package.mk @@ -20,7 +20,7 @@ PKG_NAME="xf86-video-nvidia" # Remember to run "python packages/x11/driver/xf86-video-nvidia/scripts/make_nvidia_udev.py" and commit changes to # "packages/x11/driver/xf86-video-nvidia/udev.d/96-nvidia.rules" whenever bumping version. # Host may require installation of python-lxml and python-requests packages. -PKG_VERSION="361.42" +PKG_VERSION="367.27" PKG_REV="1" PKG_ARCH="x86_64" PKG_LICENSE="nonfree" 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 deleted file mode 100644 index 76fec72fea..0000000000 --- a/packages/x11/driver/xf86-video-nvidia/patches/xf86-video-nvidia-0001-kernel-4.6-fix.patch +++ /dev/null @@ -1,60 +0,0 @@ ---- a/kernel/nvidia/os-mlock.c 2016-05-23 19:41:41.487380938 +0100 -+++ b/kernel/nvidia/os-mlock.c 2016-05-23 19:42:34.716761233 +0100 -@@ -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); ---- a/kernel/nvidia-uvm/uvm_full_pagetbl_mgmt.c 2016-03-22 23:48:41.000000000 +0000 -+++ b/kernel/nvidia-uvm/uvm_full_pagetbl_mgmt.c 2016-05-23 20:17:26.337911381 +0100 -@@ -2907,7 +2907,7 @@ - - // get userPA for this range - down_read(¤t->mm->mmap_sem); -- returnVal = get_user_pages(current, current->mm, (unsigned long)(UVM_ALIGN_ADDR(userCopyBuffer, PAGE_SIZE_4K)), -+ returnVal = get_user_pages((unsigned long)(UVM_ALIGN_ADDR(userCopyBuffer, PAGE_SIZE_4K)), - userPagesReq, 1, 0, tempUserPageArray, NULL); - up_read(¤t->mm->mmap_sem); - -@@ -2937,7 +2937,7 @@ - set_page_dirty_lock(tempUserPageArray[i]); - - UVM_PANIC_ON(tempUserPageArray[i] == 0); -- page_cache_release(tempUserPageArray[i]); -+ put_page(tempUserPageArray[i]); - tempUserPageArray[i] = 0; - } - ---- a/kernel/nvidia-uvm/uvm8_tools.c 2016-05-23 20:17:47.218443656 +0100 -+++ b/kernel/nvidia-uvm/uvm8_tools.c 2016-05-23 20:18:02.002820423 +0100 -@@ -157,7 +157,7 @@ - } - - down_read(¤t->mm->mmap_sem); -- ret = get_user_pages(current, current->mm, user_va, num_pages, 1, 0, *pages, NULL); -+ ret = get_user_pages(user_va, num_pages, 1, 0, *pages, NULL); - up_read(¤t->mm->mmap_sem); - if (ret != num_pages) { - status = NV_ERR_INVALID_ARGUMENT; diff --git a/packages/x11/driver/xf86-video-nvidia/udev.d/96-nvidia.rules b/packages/x11/driver/xf86-video-nvidia/udev.d/96-nvidia.rules index 766e134a87..2be91e77a8 100644 --- a/packages/x11/driver/xf86-video-nvidia/udev.d/96-nvidia.rules +++ b/packages/x11/driver/xf86-video-nvidia/udev.d/96-nvidia.rules @@ -90,6 +90,7 @@ ATTRS{device}=="0x0fe4", GOTO="configure_nvidia" ATTRS{device}=="0x0fe9", GOTO="configure_nvidia" ATTRS{device}=="0x0fea", GOTO="configure_nvidia" ATTRS{device}=="0x0fec", GOTO="configure_nvidia" +ATTRS{device}=="0x0fed", GOTO="configure_nvidia" ATTRS{device}=="0x0fee", GOTO="configure_nvidia" ATTRS{device}=="0x0fef", GOTO="configure_nvidia" ATTRS{device}=="0x0ff2", GOTO="configure_nvidia" @@ -271,6 +272,7 @@ ATTRS{device}=="0x1399", GOTO="configure_nvidia" ATTRS{device}=="0x139a", GOTO="configure_nvidia" ATTRS{device}=="0x139b", GOTO="configure_nvidia" ATTRS{device}=="0x139c", GOTO="configure_nvidia" +ATTRS{device}=="0x139d", GOTO="configure_nvidia" ATTRS{device}=="0x13b0", GOTO="configure_nvidia" ATTRS{device}=="0x13b1", GOTO="configure_nvidia" ATTRS{device}=="0x13b2", GOTO="configure_nvidia" @@ -292,10 +294,13 @@ ATTRS{device}=="0x13f3", GOTO="configure_nvidia" ATTRS{device}=="0x13f8", GOTO="configure_nvidia" ATTRS{device}=="0x13f9", GOTO="configure_nvidia" ATTRS{device}=="0x13fa", GOTO="configure_nvidia" +ATTRS{device}=="0x13fb", GOTO="configure_nvidia" ATTRS{device}=="0x1401", GOTO="configure_nvidia" ATTRS{device}=="0x1402", GOTO="configure_nvidia" +ATTRS{device}=="0x1406", GOTO="configure_nvidia" ATTRS{device}=="0x1407", GOTO="configure_nvidia" ATTRS{device}=="0x1427", GOTO="configure_nvidia" +ATTRS{device}=="0x1430", GOTO="configure_nvidia" ATTRS{device}=="0x1431", GOTO="configure_nvidia" ATTRS{device}=="0x1617", GOTO="configure_nvidia" ATTRS{device}=="0x1618", GOTO="configure_nvidia" @@ -308,6 +313,8 @@ ATTRS{device}=="0x17c8", GOTO="configure_nvidia" ATTRS{device}=="0x17f0", GOTO="configure_nvidia" ATTRS{device}=="0x17f1", GOTO="configure_nvidia" ATTRS{device}=="0x17fd", GOTO="configure_nvidia" +ATTRS{device}=="0x1b80", GOTO="configure_nvidia" +ATTRS{device}=="0x1b81", GOTO="configure_nvidia" GOTO="configure_nvidia-legacy" LABEL="configure_nvidia"