Package: release.debian.org
Severity: normal
User: release.debian....@packages.debian.org
Usertags: unblock

Dear Release Team,

Please unblock package nvidia-graphics-drivers

nvidia-graphics-drivers in stretch (non-free) is affected by the
following "high" priority CVEs:

CVE-2017-0350 CVE-2017-0351 CVE-2017-0352 [1]

Tracked by Debian bug #863515 [2] and fixed by upstream version 375.66.
375.66-1 has just been uploaded to unstable.

Please consider unblocking the new version 375.66-1 to allow it to
migrate to testing, if possible in 5 days to allow plenty time before
the deadline of June the 9th.

Given this is a non-free package that includes upstream proprietary
binary blobs, the attached debdiff only covers the changes in the
debian/ directory.

The changes with the previous versions are:

- Update changelog to mention upstream changes
- Update changelog to sync with updates to stable and oldstable
- Drop kernel modules patches merged upstream
- Adjust symbols files for library changes in 375.66
- Adjust list of supported hardware IDs (nv-readme.ids)
- Adjust source package metadata to mark the kernel modules as tested
up to Linux 4.10

Kind regards,
Luca Boccassi

[1] https://security-tracker.debian.org/tracker/CVE-2017-0350
https://security-tracker.debian.org/tracker/CVE-2017-0351
https://security-tracker.debian.org/tracker/CVE-2017-0352
[2] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=863515
diff -Nru --exclude '*.run' nvidia-graphics-drivers-375.39/debian/changelog nvidia-graphics-drivers-375.66/debian/changelog
--- nvidia-graphics-drivers-375.39/debian/changelog	2017-02-23 15:36:38.000000000 +0000
+++ nvidia-graphics-drivers-375.66/debian/changelog	2017-05-28 12:03:11.000000000 +0100
@@ -1,3 +1,58 @@
+nvidia-graphics-drivers (375.66-1) unstable; urgency=medium
+
+  * New upstream long lived branch release 375.66 (2017-05-04).
+    * Fixed CVE-2017-0350, CVE-2017-0351, CVE-2017-0352.  (Closes: #863515)
+    - Added support for the following GPUs: GeForce GTX 1080 Ti, Quadro P3000,
+      Quadro M520, TITAN Xp
+    - Fixed a bug that could cause EGL applications to crash when calling
+      eglInitialize() multiple times on X11-backed displays.
+    - Fixed a regression that could cause rendering corruption on a monitor
+      connected via DisplayPort upon a modeset event (for example, changing
+      resolutions or power cycling the monitor).
+    - Updated the display configuration page in the nvidia-settings control
+      panel to accurately reflect HDMI 3D refresh rates.
+    - Fixed a bug that could cause OpenGL applications to crash when VT
+      switching between multiple X servers.
+    - Fixed a bug that caused the system to become unresponsive after resuming
+      from power management suspend/hibernate. Additional symptoms of this bug
+      included display flickering and "Xid 56" errors in the kernel log.
+    - Fixed a bug that caused backlight brightness to not be controllable on
+      some notebooks with DisplayPort internal panels.
+    - Fixed a bug that left HDMI and DisplayPort audio muted after a
+      framebuffer console mode was restored. For some displays, this caused the
+      display to remain blank.
+    - Fixed a bug that caused audio over DisplayPort to stop working when the
+      monitor was unplugged and plugged back in or awoken from DPMS
+      power-saving mode.
+    - Restored support for the following GPU: GRID K520
+    - Fixed a regression that caused corruption in certain applications, such
+      as window border shadows in Unity, after resuming from suspend.
+    - Installation of the nvidia-drm kernel module is now optional. The new
+      '--no-drm' option can be used to prevent nvidia-installer from building
+      and installing nvidia-drm, on systems where this kernel module fails to
+      build and/or load.
+    - Fixed a bug that could cause some applications to crash when running with
+      PRIME Sync.
+    - Fixed a bug that prevented PRIME Sync from working on notebooks with
+      GeForce GTX 4xx and 5xx series GPUs.
+    - Fixed a bug that caused OpenGL apps to have excessive CPU usage when
+      running with PRIME Sync but without native displays enabled.
+    - Fixed a bug that could cause PRIME Sync to deadlock in the kernel,
+      particularly common on Linux 4.10.
+    - Fixed a bug that caused PRIME Sync to run slowly on systems with Pascal
+      GPUs.
+
+  [ Andreas Beckmann ]
+  * Merge changes from 340.102-1 (jessie).
+
+  [ Luca Boccassi ]
+  * Update nv-readme.ids
+  * Update symbols files
+  * Drop deprecated-cpu-events.patch, dma-fence-rename.patch and
+    vmf-address.patch, fixed upstream
+
+ -- Luca Boccassi <luca.bocca...@gmail.com>  Sun, 28 May 2017 12:03:11 +0100
+
 nvidia-graphics-drivers (375.39-1) unstable; urgency=medium
 
   * New upstream long lived branch release 375.39 (2017-02-14).
@@ -851,6 +906,7 @@
   * Drop incomplete Perfkit support.
   * nvidia-detect: Drop support for squeeze(-lts) (EoL).
   * Update lintian overrides.
+  * Upload to jessie.
 
   [ Luca Boccassi ]
   * Update Portuguese debconf translation. Thanks Américo Monteiro!
@@ -1373,6 +1429,23 @@
 
  -- Andreas Beckmann <a...@debian.org>  Mon, 20 Oct 2014 19:04:58 +0200
 
+nvidia-graphics-drivers (340.102-1) jessie; urgency=medium
+
+  * New upstream legacy 340xx branch release 340.102 (2017-02-14).
+    * Fixed CVE-2017-0309, CVE-2017-0310, CVE-2017-0311, CVE-2017-0318,
+      CVE-2017-0321.  (Closes: #855277)
+
+  [ Andreas Beckmann ]
+  * unregister_proc_on_failure.patch: New, unregister procfs entries during
+    error unwind if loading the module failed.  (Closes: #764639)
+  * Upload to jessie.
+
+  [ Luca Boccassi ]
+  * Add deprecated-cpu-events.patch and vmf-address.patch to fix kernel
+    module build on Linux 4.10 and newer.
+
+ -- Andreas Beckmann <a...@debian.org>  Tue, 04 Apr 2017 22:12:27 +0200
+
 nvidia-graphics-drivers (340.101-1) jessie; urgency=medium
 
   * New upstream legacy 340xx branch release 340.101 (2016-12-14).
diff -Nru --exclude '*.run' nvidia-graphics-drivers-375.39/debian/libgl1-glvnd-nvidia-glx.symbols nvidia-graphics-drivers-375.66/debian/libgl1-glvnd-nvidia-glx.symbols
--- nvidia-graphics-drivers-375.39/debian/libgl1-glvnd-nvidia-glx.symbols	2016-12-08 16:24:25.000000000 +0000
+++ nvidia-graphics-drivers-375.66/debian/libgl1-glvnd-nvidia-glx.symbols	2017-05-28 11:35:38.000000000 +0100
@@ -764,6 +764,6 @@
 #MISSING: 361.45# public_entry_start@Base 361
  stub_find_public@Base 361
  stub_get_addr@Base 361
- stub_get_name@Base 361
+#MISSING: 375.66# stub_get_name@Base 361
  stub_get_patch_callbacks@Base 361
  stub_get_slot@Base 361
diff -Nru --exclude '*.run' nvidia-graphics-drivers-375.39/debian/libnvidia-ml1.symbols nvidia-graphics-drivers-375.66/debian/libnvidia-ml1.symbols
--- nvidia-graphics-drivers-375.39/debian/libnvidia-ml1.symbols	2017-02-23 15:36:38.000000000 +0000
+++ nvidia-graphics-drivers-375.66/debian/libnvidia-ml1.symbols	2017-05-28 11:35:38.000000000 +0100
@@ -35,6 +35,9 @@
  nvmlDeviceGetDisplayMode@Base 270
  nvmlDeviceGetDriverModel@Base 270
  nvmlDeviceGetEccMode@Base 270
+ nvmlDeviceGetEncoderCapacity@Base 375.66
+ nvmlDeviceGetEncoderSessions@Base 375.66
+ nvmlDeviceGetEncoderStats@Base 375.66
  nvmlDeviceGetEncoderUtilization@Base 340
  nvmlDeviceGetEnforcedPowerLimit@Base 331
  nvmlDeviceGetFanSpeed@Base 270
@@ -79,6 +82,7 @@
  nvmlDeviceGetPowerManagementMode@Base 270
  nvmlDeviceGetPowerState@Base 270
  nvmlDeviceGetPowerUsage@Base 270
+ nvmlDeviceGetProcessUtilization@Base 375.66
  nvmlDeviceGetRetiredPages@Base 319
  nvmlDeviceGetRetiredPagesPendingStatus@Base 319
  nvmlDeviceGetSamples@Base 340
@@ -97,6 +101,7 @@
  nvmlDeviceGetUtilizationRates@Base 270
  nvmlDeviceGetVbiosVersion@Base 285
  nvmlDeviceGetVgpuMetadata@Base 375.26
+ nvmlDeviceGetVgpuProcessUtilization@Base 375.66
  nvmlDeviceGetVgpuUtilization@Base 375
  nvmlDeviceGetViolationStatus@Base 340
  nvmlDeviceGetVirtualizationMode@Base 361.28
@@ -151,6 +156,9 @@
  nvmlUnitGetUnitInfo@Base 270
  nvmlUnitSetLedState@Base 270
 #MISSING: 375# nvmlVgpuInstanceGetDecoderUtilization@Base 370
+ nvmlVgpuInstanceGetEncoderCapacity@Base 375.66
+ nvmlVgpuInstanceGetEncoderSessions@Base 375.66
+ nvmlVgpuInstanceGetEncoderStats@Base 375.66
 #MISSING: 375# nvmlVgpuInstanceGetEncoderUtilization@Base 370
  nvmlVgpuInstanceGetFbUsage@Base 367.27
 #MISSING: 375# nvmlVgpuInstanceGetFbUtilization@Base 370
@@ -162,6 +170,7 @@
  nvmlVgpuInstanceGetUUID@Base 367.27
  nvmlVgpuInstanceGetVmDriverVersion@Base 367.27
  nvmlVgpuInstanceGetVmID@Base 367
+ nvmlVgpuInstanceSetEncoderCapacity@Base 375.66
  nvmlVgpuTypeGetClass@Base 361.42
  nvmlVgpuTypeGetDeviceID@Base 361.42
  nvmlVgpuTypeGetFrameRateLimit@Base 375
diff -Nru --exclude '*.run' nvidia-graphics-drivers-375.39/debian/module/debian/patches/deprecated-cpu-events.patch nvidia-graphics-drivers-375.66/debian/module/debian/patches/deprecated-cpu-events.patch
--- nvidia-graphics-drivers-375.39/debian/module/debian/patches/deprecated-cpu-events.patch	2017-02-23 15:36:38.000000000 +0000
+++ nvidia-graphics-drivers-375.66/debian/module/debian/patches/deprecated-cpu-events.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,49 +0,0 @@
-Author: Luca Boccassi <luca.bocca...@gmail.com>
-Description: Fix kernel module build on 4.10 and greater
- From kernel 4.10 and newer (commit 530e9b76ae8f8) CPU_DOWN_FAILED and
- CPU_DOWN_PREPARE are no longer available as events, together with their
- callback registers.
---- a/nvidia/nv-pat.c
-+++ b/nvidia/nv-pat.c
-@@ -210,19 +210,23 @@
- 
-     switch (action)
-     {
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-         case CPU_DOWN_FAILED:
-+#endif
-         case CPU_ONLINE:
-             if (cpu == (NvUPtr)hcpu)
-                 nv_setup_pat_entries(NULL);
-             else
-                 NV_SMP_CALL_FUNCTION(nv_setup_pat_entries, hcpu, 1);
-             break;
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-         case CPU_DOWN_PREPARE:
-             if (cpu == (NvUPtr)hcpu)
-                 nv_restore_pat_entries(NULL);
-             else
-                 NV_SMP_CALL_FUNCTION(nv_restore_pat_entries, hcpu, 1);
-             break;
-+#endif
-     }
- 
-     put_cpu();
-@@ -252,7 +256,7 @@
-     if (!disable_pat)
-     {
-         nv_enable_pat_support();
--#if defined(NV_ENABLE_PAT_SUPPORT) && defined(NV_ENABLE_HOTPLUG_CPU)
-+#if defined(NV_ENABLE_PAT_SUPPORT) && defined(NV_ENABLE_HOTPLUG_CPU) && LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-         if (nv_pat_mode == NV_PAT_MODE_BUILTIN)
-         {
-             if (register_hotcpu_notifier(&nv_hotcpu_nfb) != 0)
-@@ -279,7 +283,7 @@
-     if (nv_pat_mode == NV_PAT_MODE_BUILTIN)
-     {
-         nv_disable_pat_support();
--#if defined(NV_ENABLE_PAT_SUPPORT) && defined(NV_ENABLE_HOTPLUG_CPU)
-+#if defined(NV_ENABLE_PAT_SUPPORT) && defined(NV_ENABLE_HOTPLUG_CPU) && LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-         unregister_hotcpu_notifier(&nv_hotcpu_nfb);
- #endif
-     }
diff -Nru --exclude '*.run' nvidia-graphics-drivers-375.39/debian/module/debian/patches/dma-fence-rename.patch nvidia-graphics-drivers-375.66/debian/module/debian/patches/dma-fence-rename.patch
--- nvidia-graphics-drivers-375.39/debian/module/debian/patches/dma-fence-rename.patch	2017-02-23 15:36:38.000000000 +0000
+++ nvidia-graphics-drivers-375.66/debian/module/debian/patches/dma-fence-rename.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,245 +0,0 @@
-Author: Luca Boccassi <luca.bocca...@gmail.com>
-Description: Fix kernel module build on 4.10 and greater
- From kernel 4.10 and newer (commit f54d1867005c3) include/linux/fence.h has
- been renamed to include/linux/dma-fence.h, and all structures and functions
- also gained a dma_ prefix.
---- a/nvidia-drm/nvidia-drm-priv.h
-+++ b/nvidia-drm/nvidia-drm-priv.h
-@@ -34,7 +34,12 @@
- #endif
- 
- #if defined(NV_DRM_DRIVER_HAS_GEM_PRIME_RES_OBJ)
-+#include <linux/version.h>
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
- #include <linux/fence.h>
-+#else
-+#include <linux/dma-fence.h>
-+#endif
- #include <linux/reservation.h>
- #endif
- 
---- a/nvidia-drm/nvidia-drm-fence.c
-+++ b/nvidia-drm/nvidia-drm-fence.c
-@@ -31,7 +31,11 @@
- 
- #if defined(NV_DRM_DRIVER_HAS_GEM_PRIME_RES_OBJ)
- struct nv_fence {
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-     struct fence base;
-+#else
-+    struct dma_fence base;
-+#endif
-     spinlock_t lock;
- 
-     struct nvidia_drm_device *nv_dev;
-@@ -51,7 +55,11 @@
- 
- static const char *nvidia_drm_gem_prime_fence_op_get_driver_name
- (
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-     struct fence *fence
-+#else
-+    struct dma_fence *fence
-+#endif
- )
- {
-     return "NVIDIA";
-@@ -59,7 +67,11 @@
- 
- static const char *nvidia_drm_gem_prime_fence_op_get_timeline_name
- (
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-     struct fence *fence
-+#else
-+    struct dma_fence *fence
-+#endif
- )
- {
-     return "nvidia.prime";
-@@ -67,7 +79,11 @@
- 
- static bool nvidia_drm_gem_prime_fence_op_signaled
- (
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-     struct fence *fence
-+#else
-+    struct dma_fence *fence
-+#endif
- )
- {
-     struct nv_fence *nv_fence = container_of(fence, struct nv_fence, base);
-@@ -99,7 +115,11 @@
- 
- static bool nvidia_drm_gem_prime_fence_op_enable_signaling
- (
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-     struct fence *fence
-+#else
-+    struct dma_fence *fence
-+#endif
- )
- {
-     bool ret = true;
-@@ -107,7 +127,11 @@
-     struct nvidia_drm_gem_object *nv_gem = nv_fence->nv_gem;
-     struct nvidia_drm_device *nv_dev = nv_fence->nv_dev;
- 
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-     if (fence_is_signaled(fence))
-+#else
-+    if (dma_fence_is_signaled(fence))
-+#endif
-     {
-         return false;
-     }
-@@ -136,7 +160,11 @@
-     }
- 
-     nv_gem->fenceContext.softFence = fence;
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-     fence_get(fence);
-+#else
-+    dma_fence_get(fence);
-+#endif
- 
- unlock_struct_mutex:
-     mutex_unlock(&nv_dev->dev->struct_mutex);
-@@ -146,7 +174,11 @@
- 
- static void nvidia_drm_gem_prime_fence_op_release
- (
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-     struct fence *fence
-+#else
-+    struct dma_fence *fence
-+#endif
- )
- {
-     struct nv_fence *nv_fence = container_of(fence, struct nv_fence, base);
-@@ -155,7 +187,11 @@
- 
- static signed long nvidia_drm_gem_prime_fence_op_wait
- (
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-     struct fence *fence,
-+#else
-+    struct dma_fence *fence,
-+#endif
-     bool intr,
-     signed long timeout
- )
-@@ -170,12 +206,22 @@
-      * that it should never get hit during normal operation, but not so long
-      * that the system becomes unresponsive.
-      */
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-     return fence_default_wait(fence, intr,
-                               (timeout == MAX_SCHEDULE_TIMEOUT) ?
-                                   msecs_to_jiffies(96) : timeout);
-+#else
-+    return dma_fence_default_wait(fence, intr,
-+                              (timeout == MAX_SCHEDULE_TIMEOUT) ?
-+                                  msecs_to_jiffies(96) : timeout);
-+#endif
- }
- 
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
- static const struct fence_ops nvidia_drm_gem_prime_fence_ops = {
-+#else
-+static const struct dma_fence_ops nvidia_drm_gem_prime_fence_ops = {
-+#endif
-     .get_driver_name = nvidia_drm_gem_prime_fence_op_get_driver_name,
-     .get_timeline_name = nvidia_drm_gem_prime_fence_op_get_timeline_name,
-     .signaled = nvidia_drm_gem_prime_fence_op_signaled,
-@@ -285,7 +331,11 @@
-     bool force
- )
- {
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-     struct fence *fence = nv_gem->fenceContext.softFence;
-+#else
-+    struct dma_fence *fence = nv_gem->fenceContext.softFence;
-+#endif
- 
-     WARN_ON(!mutex_is_locked(&nv_dev->dev->struct_mutex));
- 
-@@ -301,10 +351,17 @@
- 
-         if (force || nv_fence_ready_to_signal(nv_fence))
-         {
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-             fence_signal(&nv_fence->base);
- 
-             nv_gem->fenceContext.softFence = NULL;
-             fence_put(&nv_fence->base);
-+#else
-+            dma_fence_signal(&nv_fence->base);
-+
-+            nv_gem->fenceContext.softFence = NULL;
-+            dma_fence_put(&nv_fence->base);
-+#endif
- 
-             nvKms->disableChannelEvent(nv_dev->pDevice,
-                                        nv_gem->fenceContext.cb);
-@@ -320,7 +377,11 @@
- 
-         nv_fence = container_of(fence, struct nv_fence, base);
- 
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-         fence_signal(&nv_fence->base);
-+#else
-+        dma_fence_signal(&nv_fence->base);
-+#endif
-     }
- }
- 
-@@ -513,7 +574,11 @@
-      * fence_context_alloc() cannot fail, so we do not need to check a return
-      * value.
-      */
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-     nv_gem->fenceContext.context = fence_context_alloc(1);
-+#else
-+    nv_gem->fenceContext.context = dma_fence_context_alloc(1);
-+#endif
- 
-     ret = nvidia_drm_gem_prime_fence_import_semaphore(
-               nv_dev, nv_gem, p->index,
-@@ -670,7 +735,11 @@
-     nv_fence->nv_gem = nv_gem;
- 
-     spin_lock_init(&nv_fence->lock);
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-     fence_init(&nv_fence->base, &nvidia_drm_gem_prime_fence_ops,
-+#else
-+    dma_fence_init(&nv_fence->base, &nvidia_drm_gem_prime_fence_ops,
-+#endif
-                &nv_fence->lock, nv_gem->fenceContext.context,
-                p->sem_thresh);
- 
-@@ -680,7 +749,11 @@
- 
-     reservation_object_add_excl_fence(&nv_gem->fenceContext.resv,
-                                       &nv_fence->base);
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-     fence_put(&nv_fence->base); /* Reservation object has reference */
-+#else
-+    dma_fence_put(&nv_fence->base); /* Reservation object has reference */
-+#endif
- 
-     ret = 0;
- 
---- a/nvidia-drm/nvidia-drm-gem.h
-+++ b/nvidia-drm/nvidia-drm-gem.h
-@@ -98,7 +98,11 @@
-         /* Software signaling structures */
-         struct NvKmsKapiChannelEvent *cb;
-         struct nvidia_drm_gem_prime_soft_fence_event_args *cbArgs;
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0)
-         struct fence *softFence; /* Fence for software signaling */
-+#else
-+        struct dma_fence *softFence; /* Fence for software signaling */
-+#endif
-     } fenceContext;
- #endif
- };
diff -Nru --exclude '*.run' nvidia-graphics-drivers-375.39/debian/module/debian/patches/series.in nvidia-graphics-drivers-375.66/debian/module/debian/patches/series.in
--- nvidia-graphics-drivers-375.39/debian/module/debian/patches/series.in	2017-02-23 15:36:38.000000000 +0000
+++ nvidia-graphics-drivers-375.66/debian/module/debian/patches/series.in	2017-05-28 11:35:38.000000000 +0100
@@ -1,9 +1,6 @@
 # kernel support
 do-div-cast.patch
 nvidia-drm-master-dev.patch
-deprecated-cpu-events.patch
-dma-fence-rename.patch
-vmf-address.patch
 
 # build system updates
 use-kbuild-compiler.patch
diff -Nru --exclude '*.run' nvidia-graphics-drivers-375.39/debian/module/debian/patches/vmf-address.patch nvidia-graphics-drivers-375.66/debian/module/debian/patches/vmf-address.patch
--- nvidia-graphics-drivers-375.39/debian/module/debian/patches/vmf-address.patch	2017-02-23 15:36:38.000000000 +0000
+++ nvidia-graphics-drivers-375.66/debian/module/debian/patches/vmf-address.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,16 +0,0 @@
-Author: Luca Boccassi <luca.bocca...@gmail.com>
-Description: Fix kernel module build on 4.10 and greater
- From kernel 4.10 and newer (commit 1a29d85eb0f19) virtual_address is no longer
- available as a member of struct vm_fault. Given it's in a header it causes a
- build failure in all modules, but upstream's conftest.sh only does the check
- when building the nvidia-uvm module. Add the check for the main module too.
---- a/nvidia/nvidia.Kbuild
-+++ b/nvidia/nvidia.Kbuild
-@@ -162,6 +162,7 @@
- NV_CONFTEST_TYPE_COMPILE_TESTS += dma_map_ops
- NV_CONFTEST_TYPE_COMPILE_TESTS += noncoherent_swiotlb_dma_ops
- NV_CONFTEST_TYPE_COMPILE_TESTS += vm_fault_present
-+NV_CONFTEST_TYPE_COMPILE_TESTS += vm_fault_has_address
- 
- NV_CONFTEST_GENERIC_COMPILE_TESTS += dom0_kernel_present
- NV_CONFTEST_GENERIC_COMPILE_TESTS += nvidia_vgpu_kvm_build
diff -Nru --exclude '*.run' nvidia-graphics-drivers-375.39/debian/nv-readme.ids nvidia-graphics-drivers-375.66/debian/nv-readme.ids
--- nvidia-graphics-drivers-375.39/debian/nv-readme.ids	2017-02-23 15:36:38.000000000 +0000
+++ nvidia-graphics-drivers-375.66/debian/nv-readme.ids	2017-05-28 11:35:38.000000000 +0100
@@ -158,6 +158,7 @@
 10DE1187
 10DE1188
 10DE1189
+10DE118A
 10DE118E
 10DE118F
 10DE1193
@@ -250,6 +251,7 @@
 10DE134E
 10DE134F
 10DE137A
+10DE137B
 10DE137D
 10DE1380
 10DE1381
@@ -312,6 +314,8 @@
 10DE17F1
 10DE17FD
 10DE1B00
+10DE1B02
+10DE1B06
 10DE1B30
 10DE1B38
 10DE1B80
@@ -322,6 +326,9 @@
 10DE1BB0
 10DE1BB1
 10DE1BB3
+10DE1BB6
+10DE1BB7
+10DE1BB8
 10DE1BE0
 10DE1BE1
 10DE1C02
diff -Nru --exclude '*.run' nvidia-graphics-drivers-375.39/debian/rules.defs nvidia-graphics-drivers-375.66/debian/rules.defs
--- nvidia-graphics-drivers-375.39/debian/rules.defs	2017-02-23 15:36:38.000000000 +0000
+++ nvidia-graphics-drivers-375.66/debian/rules.defs	2017-05-28 11:35:38.000000000 +0100
@@ -10,7 +10,7 @@
 
 NVIDIA_LEGACY_CHECK	 = nvidia-legacy-check (>= 343) [!ppc64el]
 
-LINUX_KMOD_TESTED	 = 4.9
+LINUX_KMOD_TESTED	 = 4.10
 LINUX_KMOD_TESTED_amd64	 =
 LINUX_KMOD_TESTED_i386	 =
 LINUX_KMOD_TESTED_armhf	 =

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to