378.09: Steam Client crashes on making video fullscreen

I have noticed various instabilities with 378.09 driver on Kubuntu 16.10 x86_64. For example:

  1. Make sure you don’t have the __GL_THREADED_OPTIMIZATIONS environment variable set.
  2. In Steam client, go to “Deus Ex: Revision” store page.
  3. On the page, video automatically starts playing. Press the fullscreen icon.
  4. Steam client crashes.

This is not specific to “Deus Ex: Revision”, I just picked it because that’s where I first reproduced it. Basically, this happens on any video I tried.

The crash does not reproduce with either:

  • 375.26 driver
  • 378.09 driver and __GL_THREADED_OPTIMIZATIONS=1 set in /etc/environment

Other instabilities I’ve seen (on 378.09 without __GL_THREADED_OPTIMIZATIONS) include:

  • Some windows or panels occasionally stop being updated or get much less frequent updates than they should. I’m using KDE, so the problem is probably affecting kwin and/or plasmashell.
  • In QtCreator 4.2.1, I’ve occasionally seen hover-on tooltips having garbled contents (i.e. corrupted texture instead of text). This probably means Qt is affected.
  • Firefox 51 has completely hung on me once, when I pressed rightclick mouse button to display a context menu. The menu got drawn, but I couldn’t interact with it or the main Firefox window. I was able to interact with other applications at the time and had to kill Firefox.

These issues happen occasionally, I don’t have any fixed steps to reproduce them. I can tell though that I’ve not seen these problems with 375.26.

nvidia-bug-report.log.gz (260 KB)

I’ve attached nvidia-bug-report saved after the Steam client crashed.

Does the problem disappear also if you set __GL_THREADED_OPTIMIZATIONS=0?

Yes. The crash only happens when __GL_THREADED_OPTIMIZATIONS is not set.

The crash still happens with 378.13.

I can confirm this, driver 378.13
If __GL_THREADED_OPTIMIZATION is unset, steam client crashes when any shop video is switched to fullscreen. This doesn’t happen when a) a game has been started before(?) or __GL_THREADED_OPTIMIZATIONS is set to either 1 or 0.
Backtrace is rather short:

#0  0xf690f792 in ?? () from /usr/lib32/opengl/nvidia/lib/libGLX_nvidia.so.0
#1  0xf69021f9 in glXMakeCurrent ()
   from /usr/lib32/opengl/nvidia/lib/libGLX_nvidia.so.0
#2  0xf6a551b1 in ?? () from /usr/lib32/opengl/nvidia/lib/libGLX.so.0

Thanks for this info. We are tracking this issue under 200279821

Thank you for the report. We have identified the root cause and will implement a fix. Until then, you have identified a workaround.