Bug#864477: nvidia_icd.json does not refer to correct library when non-GLVND driver variant is installed

Alex Smith asmith at feralinteractive.com
Fri Jun 9 08:21:39 UTC 2017


Package: nvidia-vulkan-common
Version: 375.66-1

The nvidia_icd.json file provided by nvidia-vulkan-common does not
refer to the correct ICD library when the non-GLVND version of the
driver (libgl1-nvidia-glx) is installed, as opposed to the GLVND
version (libgl1-nvidia-glvnd-glx).

When the non-GLVND driver is installed, the library_path in this file
should refer to libGL.so.1, instead of libGLX_nvidia.so.0 for the
GLVND driver.

The use of the incorrect library here when using the non-GLVND driver
means that applications which attempt to use both GL and Vulkan can
crash, since it effectively results in two copies of the NVIDIA driver
library being loaded which conflict.

This issue causes crashes on startup when the non-GLVND driver is
installed in our (Feral Interactive) games which support Vulkan,
specifically the Mad Max Vulkan beta branch and the just-released Dawn
of War III, even when not launching the game with Vulkan enabled.

When the NVIDIA driver is installed through their own installer,
nvidia_icd.json will have the correct library path for whichever
variant is installed. We have also confirmed with NVIDIA that this is
needed, and that the current behaviour of the Debian packages is at
fault.



More information about the pkg-nvidia-devel mailing list