-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathNVIDIA_Changelog
More file actions
6799 lines (4673 loc) · 252 KB
/
Copy pathNVIDIA_Changelog
File metadata and controls
6799 lines (4673 loc) · 252 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
======== Release 384 Entries ========
* Fixed a bug that prevented changes to stereo eye assignment from
getting applied from the nvidia-settings control panel.
* Fixed a bug that caused S4 suspend (also known as "hibernate") to hang
during suspend when SLI was enabled.
* Fixed a bug where devices would not be properly enumerated by
the Vulkan driver. See the "Known Issues" section of the README
for more details.
2017-06-29 version 384.47
* Fixed a bug that could cause OpenGL applications to crash after
calling glDeleteBuffers on VBOs that have been remapped with
ARB_vertex_attrib_binding.
* Fixed a bug that could sometimes cause OpenGL applications to
lock up until the X server receives input.
* Fixed a bug that caused nvidia-settings to drop device BusID
values when making changes to an existing X configuration file.
* Fixed a regression that prevented nvidia-xconfig from querying
some GPUs, e.g. when running `nvidia-xconfig -a`.
* Fixed a bug that caused VDPAU playback to be corrupted when
extended to coordinates beyond 16384 pixels.
* Updated nvidia-persistenced to initialize nvidia-modeset.ko in
addition to nvidia.ko when setting persistence mode.
* Restored several sanity checks that were inadvertently removed from
the kernel module build process in the 355.06 driver.
* Added support for a "Nearest" transform filter in the X driver.
This causes the X driver to use nearest neighbor filtering when
performing screen transformations. The filter can be requested
through the 'filter' argument to RandR's RRSetCrtcTransform,
or through the 'ResamplingMethod' MetaMode token.
* Fixed a bug where nvidia-installer would install a wrong version
of the Vulkan ICD configuration file when GLVND is disabled for
the GLX client.
======== Release 381 Entries ========
2017-05-09 version 381.22
* Fixed a bug that caused the GLX_EXT_buffer_age buffer age extension to
return incorrect values for stereo drawables when using passive stereo
modes 5 through 9.
* Fixed a bug in Vulkan direct to display where DP1.2 monitors were not
being enumerated.
2017-04-06 version 381.09
* Improved compatibility with recent kernels.
* Fixed a bug that caused "nvidia-settings --query all" to print many
duplicate entries.
* Fixed a bug that caused applications to crash in some situations when
calling glXMakeCurrent while OpenGL threaded optimizations were enabled.
This frequently occurred when Steam was attempting to make a video appear
full-screen.
* Fixed a bug that caused VDPAU applications to use the blit presentation
queue when a previous VDPAU application didn't shut down cleanly.
* Fixed hangs and crashes that could occur when an OpenGL context is created
while the system is out of available memory.
* Fixed a bug that caused corruption when OpenGL windows were moved or
resized.
* Fixed a bug that caused X screens that use Option "UseDisplayDevice"
"none" to be resized to 640x480 when using "xrandr -s" to change the
screen configuration.
* Fixed a kernel crash that occurred when attempting to map large user
memory allocations into CUDA.
* Disabled OpenGL threaded optimizations by default, initially
enabled in 378.09, due to various reports of instability.
* Added support for the following Vulkan extensions:
* VK_EXT_acquire_xlib_display
* VK_EXT_display_control
* VK_EXT_display_surface_counter
* VK_EXT_direct_mode_display
* VK_KHX_external_memory
* VK_KHX_external_memory_fd
* VK_KHX_external_semaphore
* VK_KHX_external_semaphore_fd
These extensions require a Vulkan loader version >= 1.0.42.
* Removed the X driver's logo splash screen and the corresponding NoLogo
and LogoPath xorg.conf options.
* Added the "ResamplingMethod" MetaMode option, adding support for
bicubic resampling methods when scaling screen transformations
are in use. See the README for more details.
======== Release 378 Entries ========
2017-02-14 version 378.13
* Disabled OpenGL threaded optimizations by default under Xinerama.
2017-01-18 version 378.09
* Added support for the ARB_parallel_shader_compile extension to allow
multi-threaded compilation of GLSL shaders.
* Updated the X driver to ignore any Virtual Reality Head Mounted
Displays (HMDs). See the "AllowHMD" X configuration option in the
README for details.
* The driver will now advertise GLX FBConfigs with no depth bits on depth 30
X screens.
* Added support in nvidia-settings to view configured PRIME displays. To
enable PRIME displays, see "Offloading Graphics Display with RandR 1.4"
in the README.
* Added infrastructure which enables the NVIDIA EGL driver to load EGL external
platform libraries that add client-side support for new window systems, beyond
the existing libnvidia-egl-wayland.so.1. For more details, see:
- https://github.com/NVIDIA/eglexternalplatform
- https://github.com/NVIDIA/egl-wayland
* Added support for the following Vulkan extensions:
* VK_KHR_display
* VK_KHR_display_swapchain
* Enabled OpenGL threaded optimizations by default in the driver. Refer to
the "Threaded Optimizations" section in the "Specifying OpenGL Environment
Variable Settings" chapter of the README for details. These optimizations
will self-disable when they are degrading performance. As a result,
performance should be unchanged for many applications, and increased for
those that benefit from threaded optimizations and were not already
forcing them enabled.
======== Release 375 Entries ========
* Added support for the following GPU:
* P106-100
* Fix a bug with GLX_EXT_buffer_age where incorrect buffer age values
would be reported for SLI AFR configurations. In such configurations
buffer age may now be greater than 3, the previous maximum buffer age.
* Fixed a bug that could cause hanging and Xids when performing RandR
transforms with Overlay and SLI enabled.
* Extended the information reported by the NVIDIA Xinerama X extension to
report PRIME displays in addition to directly-connected displays.
* Fixed a bug that caused HDMI audio devices to appear or disappear
inconsistently when HDMI devices were hotplugged or unplugged.
* Fixed a bug that could cause driver errors when setting modes on X
screens running at Depth 8 or Depth 15.
* Added support for the following GPUs:
* GeForce GTX 1080 with Max-Q Design
* GeForce GTX 1070 with Max-Q Design
* GeForce GTX 1060 with Max-Q Design
* GeForce GT 1030
* GeForce MX150
* P106-100
* Fixed a bug that could cause intermittent kernel panics when running with
PRIME Sync.
* Fixed a bug that caused a kernel panic when hotplugging HDMI displays
on some Zotac mini PCs.
2017-05-04 version 375.66
* 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.
* Added support for the following GPUs:
* GeForce GTX 1080 Ti
* Quadro M520
* TITAN Xp
* 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.
* Added support for the following GPU:
* Quadro P3000
* 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.
2017-02-14 version 375.39
* Fixed a bug that caused system hangs when resuming from suspend with
some GPUs.
* Fixed a regression that could cause corruption when hot-plugging
displays.
* Fixed a regression that prevented systems with multiple DisplayPort
monitors from resuming correctly from suspend.
* Added support for the following GPU(s):
* Quadro GP100
* Quadro P4000
* Quadro P2000
* Quadro P1000
* Quadro P600
* Quadro P400
* Quadro M1200
* Quadro M2200
2016-12-14 version 375.26
* Fixed a regression that prevented the backlight on some notebook
computer displays from turning back on after being shut off.
* Fixed a regression that prevented the console from being restored
properly when using SLI.
* Fixed a bug that caused installer manifest entries for some 32-bit
compatibility libraries to be duplicated in the installer package.
These entries led nvidia-installer to issue warning messages when
installing the 32-bit compatibility libraries, for example:
'Cannot create symlink /usr/lib/libEGL.so (File exists)'.
* Fixed a regression that could cause the nvidia-settings control panel
to crash on startup with certain GPU configurations.
* Fixed a regression that prevented the GLX_NV_swap_group extension from
working when using SLI or Quadro Sync.
* Fixed a long-standing bug that caused the NVIDIA X driver to not
correctly detect AC/battery hotplug events on notebooks.
* Added support for the following GPU(s):
* Quadro M3000 SE
* Fixed an interaction problem between the Linux kernel's
CONFIG_HARDENED_USERCOPY feature (new in Linux kernel 4.8)
and nvidia-drm.ko with modeset=1 enabled. This problem caused
CONFIG_HARDENED_USERCOPY to erroneously halt the system, issuing
reports of the form:
usercopy: kernel memory overwrite attempt detected to ffff8803e8ec7ce0 (<process stack>) (8 bytes)
2016-11-18 version 375.20
* Fixed a bug that could cause displays in SLI Mosaic to blank when
applying a transformation matrix.
* Added EGL support to the GL Vendor Neutral Dispatch Library (libGLVND).
The installer package now includes both GLVND and non-GLVND versions of
the EGL libraries: the --glvnd-egl-client and --no-glvnd-egl-client
options in nvidia-installer can be used to select which to install.
* Added support for the following GPUs:
* GeForce GTX 1050
* GeForce GTX 1050 Ti
* Quadro M620
* Quadro M5000 SE
* Tesla P100-PCIE-12GB
* Tesla P100-PCIE-16GB
* Tesla P100-SXM2-16GB
* Tesla P4
* Fixed a bug that prevented G-SYNC from working on notebook displays.
* Fixed a bug that caused DisplayPort multistream devices to go blank after
the console is restored.
* Fixed a bug that caused a kernel crash when starting X for the second time
when more than one DisplayPort multistream device is connected to a single
DisplayPort connector via a branch device.
* Updated nvidia-settings to not have a build-time dependence on
an external nvml development package (a regression introduced in
375.10).
* Fixed a crash in nvidia-settings when adding Application Profile Rule and
Profile entries.
* Removed the "Enable Tooltip" option in nvidia-settings for the GTK 2
interface.
2016-10-20 version 375.10
* Added new X configuration options:
ForceCompositionPipeline
ForceFullCompositionPipeline
which override the MetaMode tokens with the same names.
* Fixed a bug that caused issues with panning and cursor constraining when
mixing PRIME-driven displays with natively driven displays.
* Fixed a bug that caused long delays when leaving the VT or disabling a
display device while an OpenGL application is running.
* Improved console restore behavior on systems that use the UEFI Graphics
Output Protocol, and most vesafb modes.
* Added support for the RandR TILE property added in RandR 1.5.
* Raised the on-disk OpenGL shader cache size from 64MB to 128MB. Refer to
the "Specifying OpenGL Environment Variable Settings" section of the
driver README for details on how to select its location or disable it.
======== Release 370 Entries ========
2016-09-08 version 370.28
* Improved compatibility with recent Linux kernels.
* Fixed undefined symbol references in libnvidia-glcore.so.
* Fixed a potential hang in Vulkan applications such as vkQuake and DOTA2
that use vkFences for present synchronization.
* Fixed a bug that caused the driver to not set HDMI YUV 420 4K
modes correctly on some TVs, such as the VIZIO D40u-D1.
* Updated CurrentMetaMode reporting via the NV-CONTROL API to reflect
whether ForceCompositionPipeline or ForceFullCompositionPipeline are
set in the current MetaMode.
2016-08-15 version 370.23
* Added the ability to over- and under-clock certain GeForce
GPUs in the GeForce GTX 1000 series and later. For GPUs that allow it,
an offset can be applied to clock values in some clock domains of
all performance levels. This clock manipulation is done at the
user's own risk. See the README documentation of the "CoolBits"
X configuration option for more details.
* Implemented initial support for PRIME Synchronization to synchronize
flipping between an NVIDIA PRIME display source and a separate PRIME
display sink. This support is experimental and currently requires a
prerelease X.org X server.
* Fixed a bug that prevented Vulkan applications from presenting from
multiple queues to the same X11 swapchain.
* Added the "PixelShiftMode" MetaMode option, enabling support for 4K and
8K pixel shift displays. See the README for details.
======== Release 367 Entries ========
* Fixed a bug in synchronization primitives shared between X and OpenGL.
2016-10-10 version 367.57
* Fixed a bug that could prevent systems with GPUs configured in SLI from
resuming correctly from ACPI S3/S4 sleep/hibernate states.
* Added support for the following GPUs:
* Quadro P6000
* Tesla P40
* Quadro P5000
* Added support for NVIDIA 3D Vision 2 Stereo on Linux. This IR emitter can
be used with stereo mode "10" set in the X configuration file.
* Fixed a bug in nvidia-persistenced that caused it to incorrectly delete
the PID file if a second instance of the daemon is started.
2016-08-23 version 367.44
* Fixed a regression that caused applications using indirect GLX
to crash.
* Added support for the following GPUs:
* TITAN X (Pascal)
* GeForce GTX 1060 6GB
* GeForce GTX 1060 3GB
* Fixed a regression introduced in 367.35 that caused the first
modeset of the X server to display blank if the features requested
in the X configuration file enabled the X driver's composition
pipeline. This would be triggered, e.g., by MetaMode tokens
such as ForceCompositionPipeline, ForceFullCompositionPipeline,
Rotation, Reflection, and Transform.
2016-07-15 version 367.35
* Fixed a regression that could cause console corruption when resuming
from suspend.
* Improved buffer write performance of the nvidia-drm DRM KMS driver by
using write-combined DRM Dumb Buffers where available.
* Fixed a bug that caused X to crash when applying changes to the RandR
CscMatrix property while VT-switched away from X.
* Fixed a bug that caused a crash when exiting nvidia-settings on displays
with 8 or 15 bit color depths.
2016-06-13 version 367.27
* Added support for VDPAU Feature Set H to the NVIDIA VDPAU driver.
GPUs with VDPAU Feature Set H are capable of hardware-accelerated
decoding of 8192x8192 (8k) H.265/HEVC video streams.
* Added support for the following GPUs:
* GeForce GTX 1080
* GeForce GTX 1070
* Fixed a bug that caused the X server to sometimes skip displaying Vulkan
frames when the Composite extension is enabled.
2016-05-19 version 367.18
* Fixed a bug that would cause OpenGL applications to crash when creating
a context on one X display connection, then making it current with no
associated drawable on another X display connection. This fixes a crash
when starting some versions of Matlab.
* Fixed OpenGL presentation to SDI through the GLX_NV_video_out and
GLX_NV_present_video extensions, which was broken by the introduction
of the nvidia-modeset kernel module in 358.09.
* Fixed a bug that caused an incorrect offset to be applied when using
the full composition pipeline on a display whose image has both a
rotation and a ViewportOut offset applied.
* Fixed a bug that could cause nvidia-settings to crash on some systems
when responding to events such as hotplugging DisplayPort devices.
* Fixed a bug that could cause crashes in OpenGL applications which use
glTextureView() with a non-zero minlevel.
* Enhanced the Display Device information page in nvidia-settings with
additional information for DisplayPort devices to reflect attributes
which are specific to DisplayPort connections.
* Fixed a bug which could cause deleted application profiles to appear
when editing rules in the nvidia-settings control panel.
* Fixed a bug that caused hangs when a G-SYNC monitor is unplugged and a
non-G-SYNC monitor is connected while G-SYNC is active.
* Fixed a bug that caused "nvidia-modeset: ERROR: GPU:0: Activating G-SYNC
failed" to be printed to the system log if a G-SYNC monitor is connected
and stereo is enabled in xorg.conf on a configuration that doesn't support
it.
* Added the NV_robustness_video_memory_purge OpenGL extension, which
allows applications to know when a mode switching or power event
purged the contents of FBOs and BOs residing in video memory.
* Fixed a bug that prevented HDMI 2.0 4K monitors from waking up
from sleep or hot-replug.
======== Release 364 Entries ========
2016-04-22 version 364.19
* Fixed some locking issues in libnvidia-egl-wayland.so.
* Fixed several libnvidia-egl-wayland.so interaction problems with
buffer management Wayland protocols.
2016-04-06 version 364.15
* Fixed several EGL driver interaction problems with resizing windows
in Wayland.
* Fixed a bug that caused some DRM PRIME configurations to fail when
DRM KMS was enabled (i.e., nvidia-drm.ko's modeset kernel module
parameter was set to "1").
* Fixed a bug that could cause a kernel crash when VDPAU was used
while DRM KMS was enabled.
2016-03-21 version 364.12
* Changed the default OpenGL installation type to use the GLVND GLX
client libraries rather than the legacy non-GLVND libraries.
* Added initial support for Direct Rendering Manager Kernel
Modesetting (DRM KMS). See the DRM KMS section of the README for
details.
* Added a new kernel module, nvidia-drm.ko, which registers as a DRM
driver with both PRIME and DRM KMS support.
* Added support for the following EGL extensions:
EGL_EXT_platform_wayland
to enable Wayland applications to run on NVIDIA's EGL implementation,
EGL_WL_bind_wayland_display
to enable Wayland compositors to run on NVIDIA's EGL implementation, and
EGL_EXT_device_drm
EGL_EXT_output_drm
EGL_EXT_stream_consumer_egloutput
to enable Mir and Wayland compositors to display their content
through EGLDevice, EGLOutput, and EGLstreams.
* Added a Wayland platform library, libnvidia-egl-wayland.so, to allow
Wayland compositors that support EGLDevice, EGLOutput, and EGLstreams
to share EGL buffers with Wayland applications.
* Fixed a bug that could cause incorrect frame rate reporting on Quadro
Sync configurations with multiple GPUs.
* Added support for the Vulkan API version 1.0.
* Improved X colormap precision from 8 significant bits to 11 on GeForce
GPUs. Quadro GPUs already used 11 bits of precision.
* Added a new RandR property, CscMatrix, which specifies a 3x4 color-space
conversion matrix. The matrix is applied after the X colormap and before
the gamma ramp. This property is available on GF119 and newer GPUs.
* Improved handling of the X gamma ramp on GF119 and newer GPUs. On these
GPUs, the RandR gamma ramp is always 1024 entries and now applies to the
cursor and VDPAU or workstation overlays in addition to the X root window.
* Reworked how the NVIDIA driver registers with the Linux
kernel's DRM subsystem for PRIME support. As a result, PRIME
support requires Linux kernel version 3.13 or newer (previously,
PRIME support required Linux kernel version 3.10 or newer).
* Improved the interactivity of applications that use a hardware cursor
while G-SYNC is active.
======== Release 361 Entries ========
* Fixed a bug that could cause OpenGL applications to leak open file
descriptors under some circumstances.
* Fixed a crash in the OpenGL and OpenGL ES drivers in situations where
some of the NVIDIA device nodes were not accessible.
* Fixed a crash when querying the CUDA device handle of an EGLDevice in
a system with multiple GPUs when the NVIDIA UVM device node or kernel
module was not accessible.
* Changed the behavior of nvidia-persistenced to enable persistence mode
by default for all GPUs when the daemon is started.
* Added support for querying clock values on Pascal GPUs.
* Removed the Base Mosaic configuration option from nvidia-settings on
systems where the feature is not actually supported.
* Fixed a bug that caused nvidia-smi to report an inaccurate version
number.
* Fixed a bug that could lead to a system crash if there was a peer-to-peer
mapping still active during CUDA context teardown.
2016-05-24 version 361.45.11
* Fixed a bug that sometimes prevented flipping from being enabled on
systems with multiple displays.
* Fixed a bug that could cause applications to crash when using the
EGL_EXT_platform_device extension on a system with multiple GPUs.
* Fixed a bug that could cause nvidia-installer's runtime loader test
to fail spuriously on some systems.
* The NVIDIA Unified Virtual Memory kernel module, nvidia-uvm.ko, now
has a minimum kernel requirement of Linux 2.6.32. On older kernel
versions, nvidia-uvm.ko will be compiled as a stub kernel module
which does not provide any functionality.
* Added support for the following GPUs:
* Tesla M40 24GB
* Quadro M5500
* Quadro M2000
* Updated the libglvnd snapshot included in the NVIDIA driver
package to libglvnd commit b7d75429677eecc00c3701aaa4deac1304bc51ff.
This contains a new revision of the libglvnd ABI. The driver is not
compatible with a libglvnd older than commit
c5bcda3b848fe52d6ae6ef25c917431c06d62d27.
2016-03-30 version 361.42
* Limited the default concurrency level in nvidia-settings to 32, to
avoid hitting the maximum tasks limit on systems with many CPUs.
* Added support for the following GPUs:
* GeForce 920MX
* GeForce 930MX
* Quadro M6000 24GB
* Fixed a regression that caused GPU exceptions and incorrect rendering
when using pbuffers with EGLDevice.
* Fixed a bug that caused nvidia-settings to crash when pairing glasses
with the 3D Vision Pro transmitter on some systems.
* Fixed a bug that caused installer manifest entries for some 32-bit
compatibility libraries to be duplicated in the installer package.
* Fixed a regression that caused the HSync and VSync mode timing polarity
flags to be inverted.
2016-02-09 version 361.28
* Added support for the following GPU:
* GeForce 945A
* Added a legacy, non-GLVND libGL.so GLX client library to the NVIDIA
Linux driver installer package, and the ability to select between a
GLVND or non-GLVND GLX client library at installation time. This
allows users to install the legacy non-GLVND GLX client library in
order to work around compatibility issues which may arise due to GLX
applications which depend upon behaviors of the NVIDIA GLX client
driver which are not defined by the Linux OpenGL ABI version 1.0.
By default, nvidia-installer will install the legacy, non-GLVND GLX
client libraries. The --glvnd-glx-client command line option can be
used to override the default, and install the GLVND GLX client
libraries instead. Please contact the vendors of any applications
that are not compatible with GLVND to ensure that their applications
be updated for compatibility with GLVND.
The presence of multiple GLX client libraries in the package has
implications for repackagers of the NVIDIA driver; see the libGL.so
entry in the "Installed Components" chapter of the README for details.
2016-01-13 version 361.18
2016-01-05 version 361.16
* The OpenGL Vendor-Neutral Driver (GLVND) infrastructure is now included
and supported by the NVIDIA GLX and OpenGL drivers. This should not
cause any visible changes in behavior for end users, but some internal
driver component libraries have been renamed and/or moved as a result.
These changes may affect scripts that rely on the presence of NVIDIA
OpenGL driver components other than those specified in the Linux OpenGL
ABI version 1.0, maintainers of alternative NVIDIA driver installation
packages, and applications which rely on the presence of any non-
OpenGL/GLX symbols in the libGL.so.1 library and its dependencies in
any way.
Please see:
https://github.com/NVIDIA/libglvnd
For more information on the GLVND project.
The Linux OpenGL ABI version 1.0 specification is available at:
https://www.opengl.org/registry/ABI
* Updated nvidia-installer to run ldconfig(8) and depmod(8) after
uninstalling an existing driver, instead of only running these two
commands when installing a new driver.
* Removed the VDPAU wrapper and trace libraries libvdpau.so.1 and
libvdpau_trace.so.1 from the driver package. These libraries may be
available via your distribution's package management system, or can be
compiled from the sources available at:
http://people.freedesktop.org/~aplattner/vdpau/
Please see
http://freedesktop.org/wiki/Software/VDPAU/
for more information.
======== Release 358 Entries ========
* Fixed a regression, introduced in 358.09, that caused incorrect
rendering of OpenGL stereo applications in combination with
Quadro Sync on certain GPUs.
* Fixed a regression, introduced in 358.09, that caused OpenGL
stereo applications to hang when SLI AFR, SFR, or SLIAA modes
were enabled.
* Fixed a regression, introduced in 358.09, that caused the
system to hang while launching OpenGL applications when some SLI
Mosaic topologies were in use.
* Fixed a bug that could cause some G-SYNC monitors to flicker on
Kepler-based GPUs when running at low frame rates.
* Fixed a regression that could cause OpenGL or VDPAU applications to
hang in Xinerama layouts which include multiple X screens that are
driven by the same GPU.
* Fixed a bug that could cause nvidia-installer to crash when installing
from a driver package that has had precompiled kernel interfaces added
to it (e.g., by using the "--add-this-kernel" option).
* Fixed a regression from 358.09 that caused G-SYNC monitors configured to
use 3D Vision stereo to go blank and report an unsupported signal.
* Fixed a regression from 358.09 that caused OpenGL applications that failed
to negotiate permission to perform glXSwapBuffers via flipping to stop
updating the screen. This was triggered on Fedora 22 where the SELinux
system policy prevents gnome-shell from communicating with the X server.
Now, OpenGL applications that fail to negotiate flipping will fall back to
glXSwapBuffers via blitting.
See https://bugzilla.redhat.com/show_bug.cgi?id=1271401 for more details.
2015-10-12 version 358.09
* Fixed a regression that reduced OpenGL performance on headless X
server configurations.
* Fixed a memory leak that occurred after destroying a GLXWindow which
still has the current context attached to it.
* Fixed a bug which caused EGL pbuffers to be created with both a front
and back buffer, instead of a back buffer only, as is required for EGL.
* Added a new kernel module, nvidia-modeset.ko. This new driver
component works in conjunction with the nvidia.ko kernel module
to program the display engine of the GPU.
nvidia-modeset.ko does not provide any new user-visible
functionality or interfaces to third party applications. However,
in a later release, nvidia-modeset.ko will be used as a basis for
the modesetting interface provided by the kernel's direct rendering
manager (DRM).
* Reduced flickering and delays when transitioning into or out of G-SYNC
mode. As part of this change, monitors that have G-SYNC indicators in
their on-screen displays will now always report that they are in G-SYNC
mode. The OpenGL G-SYNC visual indicator can be enabled in
nvidia-settings to determine when G-SYNC is actually being used.
* GLX protocol for the following OpenGL
extension from OpenGL 3.0 has been promoted from
unofficial to ARB approved official status:
GL_EXT_draw_buffers2
* GLX protocol for the following OpenGL 3.0 commands:
BindBufferRangeNV
BindBufferBaseNV
BeginTransformFeedbackNV
EndTransformFeedbackNV
GetTransformFeedbackVaryingEXT
TransformFeedbackVaryingsEXT
which are part of the following extensions:
GL_NV_transform_feedback
GL_EXT_transform_feedback
has been promoted from unofficial to ARB approved
official status.
With the above changes, GLX protocol for
OpenGL 3.0 has been promoted from unofficial
to ARB approved official status.
* Added a new system memory allocation mechanism for large
allocations in the OpenGL driver. This mechanism allows unmapping
the allocation from the process when it is not in use, making more
virtual address space available to the application. It is enabled
by default on 32 bit OpenGL applications with Linux 3.11+ and glibc
2.19+. Memory allocated this way will consume space in /dev/shm.
Setting the environment variable __GL_DevShmPageableAllocations
to 2 will disable this feature
======== Release 355 Entries ========
2015-08-31 version 355.11
* Fixed a bug that could cause GPU exceptions when using glReadPixels()
on the depth or stencil buffers of multisample windows while resizing
or moving the windows.
2015-08-03 version 355.06
* Fixed a bug that could cause data from one texture level to overwrite
data from the next lowest level, when creating a texture view that
did not include the higher of the two levels.
* Fixed a bug that could cause the nvidia-settings control panel to
crash when updating the display layout.
* Corrected some erroneous reporting of support for GLX extensions:
several extensions were being reported as supported for indirect
GLX, which were in fact only supported under direct rendering.
* Added support for the following EGL extensions:
EGL_KHR_swap_buffers_with_damage
EGL_NV_stream_consumer_gltexture_yuv
* Replaced the build system for the NVIDIA kernel modules and updated
the installer package and nvidia-installer to use the new build
system and kernel module source code layout. For more information
about the new build system and layout, see the README document at:
ftp://download.nvidia.com/XFree86/packaging/linux/new-kbuild-for-355/
* Added experimental full OpenGL support to EGL.
* Marked the DeleteUnusedDP12Displays option as deprecated.
Version 1.5.0 of the X Resize and Rotate specification added a note that
dynamically-created outputs will not be destroyed, so this option is
deprecated and will be removed in a future driver release.
* Added support for VDPAU profiles added in VDPAU 0.9:
VDP_DECODER_PROFILE_H264_BASELINE
VDP_DECODER_PROFILE_H264_CONSTRAINED_BASELINE
VDP_DECODER_PROFILE_H264_EXTENDED
VDP_DECODER_PROFILE_H264_PROGRESSIVE_HIGH
VDP_DECODER_PROFILE_H264_CONSTRAINED_HIGH
* Fixed a bug that prevented more than one RandR output from sharing
user-added modes.
* Fixed a bug that caused application-specified swap intervals to be
ignored on some screens when using Xinerama.
* Fixed a bug that caused user-supplied RandR modes with nonsensical
combinations of the +HSync, -HSync, +VSync, and -VSync flags to corrupt
the mode list.
* Added support to make an OpenGL 3.0 and above context current without
making current to any drawable.
======== Release 352 Entries ========
* Fixed a bug that prevented nvidia-bug-report.sh from finding
relevant messages in kernel log files.
2016-01-25 version 352.79
* Added support for the following GPUs:
* Quadro M500M
* Tesla M4
* Fixed a bug in the EGL driver where a mutex was unlocked more than
once. This triggers undefined behavior, and in particular, if
lock elision is enabled in glibc, may result in a segmentation
fault.
2015-11-16 version 352.63
* Added support for the following GPUs:
* GeForce 940MX
* GeForce 945M
* Quadro M5000M
* Quadro M4000M
* Quadro M3000M
* Quadro M2000M
* Quadro M1000M
* Quadro M600M
* NVS 810
* Tesla M40
* Fixed a regression that prevented DPMS from working correctly on
some DisplayPort displays.
* Fixed a bug that could prevent X from starting when configured with
multiple X screens, some of which scan out to display devices, and
some of which do not.
2015-10-14 version 352.55
* Added support for the following GPUs:
* GeForce 805A
* GeForce GTX 960A
* Fixed a bug that caused applications using OpenCL or CUDA with OpenGL
interopability to crash when using GLX indirect rendering.
2015-08-28 version 352.41
* Added support for the following GPUs:
* GeForce GTX 950
* Quadro M4000
* Quadro M5000
* Fixed a bug that caused VDPAU to only display the top half of a video
frame when decoding and displaying H.265/HEVC encoded video streams.
2015-07-28 version 352.30
* Fixed a bug that caused poor video post-processing performance
in VDPAU when operating on a large number of video streams
simultaneously.
2015-06-15 version 352.21
* Fixed a bug that caused the Display Configuration page of the
nvidia-settings control panel to automatically generate layouts
with multiple displays occupying the same position when enabling
or disabling Base Mosaic.
* Updated nvidia-settings to allow the use of the standard Display
Configuration page when SLI Mosaic is enabled.
* Fixed a bug that caused the kernel to report errors when unmapping
DMA allocations on kernels with CONFIG_DEBUG_DMA_API enabled.
* Added GLX Protocol support for the following OpenGL extensions:
GL_ARB_copy_buffer
GL_ARB_texture_buffer_object
* Fixed a bug that caused a kernel crash if SLI Mosaic and G-SYNC were used
at the same time on a configuration with more display devices connected to
one GPU than another.
2015-05-18 version 352.09
* Added the ability to configure the swapping behavior for quad-buffered
stereo visuals. The driver can be configured to independently swap
each eye as it becomes ready, to wait for both eyes to complete
rendering before swapping, or to allow applications to specify which
of these two behaviors is preferred by setting the swap interval.
This setting can be adjusted in the nvidia-settings control panel, or
via the NV-CONTROL API.
* Fixed a regression which caused the GPU fan status display to disappear
from the nvidia-settings control panel.
* Added reporting of ECC error counts to the nvidia-settings control panel.
* Fixed a bug that sometimes prevented OpenGL sampler objects from
being properly deallocated when destroying OpenGL contexts.
* Fixed a bug that caused GLX_EXT_framebuffer_sRGB to incorrectly report
sRGB support in 30 bit-per-pixel framebuffer configurations.
* Added support for G-SYNC with sync-to-vblank disabled. This allows
applications to use G-SYNC to eliminate tearing for frame rates below the
monitor's maximum refresh rate but allow tearing above the maximum refresh
rate in order to minimize latency.
When G-SYNC is active and sync-to-vblank is enabled, the frame rate is