ValveSoftware / steam-for-linux

Issue tracking for the Steam for Linux beta client
4.25k stars 175 forks source link

Steam client fails to redraw(?) after suspending #3507

Open timss opened 10 years ago

timss commented 10 years ago

After suspending, the Steam client fails to redraw(?) the window even though it is still responsive and running. The window is transparent/inherits rendering from background/other applications that are drawn at the same position. It catches clicks and can exit normally. Tray icon is also working fine.

Running the process through gdb (DEBUGGER=gdb steam) does unfortunately not seem to give any valuable information as the process itself never crashes. There are no relevant dumps to be found in /tmp/dumps either.

I'm running Debian testing (jessie) using KDE 4.14.0 and KWin 4 (kde-window-manager 4:4.11.11-2). Note that my setup also uses Systemd, which may be relevant in how the suspend/resume works. @volca02 reports the same issue in #2742, and is running a different desktop environment/window manager, so it may not be KDE specific. I don't believe that issue linked is the same as mine (or his).

Debugging and output:

System Information (disregard the failure reports, as they are related to #3503)

DEBUGGER=gdb steam

$HOME/.steam/error.log

tail -f /var/log/{messages,kernel,dmesg,syslog} (very long)

A gif illustrating the behaviour:

Steam window fails to redraw (recorded using byzanz-record-region)

As seen in the end of the gif, right-clicking on the tray icon as it is exiting also leads to a KDE Plasma crash. I'm not sure if this is related to the suspending bug, but here's the crash report:

Plasma Desktop Shell - Crash report

More information?

Please notify if more information is needed!

volca02 commented 10 years ago

As @timss mentions, I suffer with the same issue. I use tiling wm (i3) without any compositing, but am also using systemd, being on recent Arch linux. I also have nvidia card with 340.32 drivers.

My system info: https://gist.github.com/volca02/472e40d3f7332430b0a7#file-steam-system-info

timss commented 10 years ago

@volca02 I'm inclined to believe that systemd may be the key factor here. I changed to systemd not too long ago, and the timing match with when I started experiencing this issue. Not really sure how to move forward with this issue as I have limited experience with systemd. Any ideas?

volca02 commented 10 years ago

I had one idea to try - suspend the pc without the actual suspend (pm-suspend does numerous things besides calling the kernel call, like suspending modules, spindown of hard drives, etc). I think graphics deinit/reinit may be the problematic part here, we could maybe isolate that one.

Also, I tried this just now on a machine that only has intel GPU inside, and this one time steam didn't freeze.

Edit: This machine is also a recent arch linux install with systemd.

volca02 commented 10 years ago

Changing screen configuration for my dual screen system (switching off the secondary display via arandr) freezes the steam UI as well.

copywrong commented 10 years ago

@timss This issue has nothing to do with systemd. This problem appeared with the latest Steam update.

This is the same bug as #3528.

timss commented 10 years ago

Interesting. My issue has been triaged, but yours got a valve employee assigned to it so maybe we'll see some progress on this, thanks.

dehorsley commented 9 years ago

I had this bug on Arch Linux running dwm on a nvidia card without compositing. I fixed it by enabling compositing in xorg.conf and running 'xcompmgr -n' before starting my window manager.

volca02 commented 9 years ago

This is not an option for me, unfortunately. I ran compton and it fixed the problem, but it caused hard freezes at about 10% of the time after switching from TF2 or ending it (probably nvidia driver bug).

volca02 commented 9 years ago

Anyone, please confirm - I do not have this issue now on latest steam beta. The window redraws fine after suspend-resume. From my point of view this seems fixed.

imba3r commented 9 years ago

Can confirm, issue is gone for me as well (latest steam beta).

timss commented 9 years ago

It sounds like you're all onto something when it comes to compositing.

If I suspend with compositing disabled, I am still able to reproduce the bug. However, if I then enable it again everything seems to work just fine (for now). At the same time, suspending with compositing works just fine aswell.

@volca02 I'm participating in the Steam beta update, but can you check if we're running the same version? Not sure if all the users get updates at the same time.

Steam version

As far as I can tell, the bug seems to be still present. In my case atleast I've experienced it as quite evasive because I didn't think about testing compositing before @widdma mentioned it again.

imba3r commented 9 years ago

@timss I'm using the exact same steam version and on my machine it works with and without compositing enabled (compton-git).

timss commented 9 years ago

@vimbaer That's odd. I'm able to effectively reproduce the problem still.

I use drop shadows for my windows, and just noticed that Steam does not respect/get effected by these shadows. Maybe that's a clue?

My original motivation for disabling compositing was that Dota 2 ran horribly with it enabled. Don't really play too much anymore, so I now use compositing most of the time. Still would be nice to find out why it would happen though, and why it is seemingly fixed for you and not me.

dehorsley commented 9 years ago

I'm still getting this bug when running without compositing in the latest beta (Jan 23 build).

@vimbaer out of curiosity, which window manager are you using? And are you running a nvidia card?

imba3r commented 9 years ago

@widdma I'm using a nvidia card (660, 346.35) and bspwm.

dehorsley commented 9 years ago

Ah, I was a release behind on the nvidia driver. Now I've updated to 346.35, steam (beta) is redrawing fine after suspend on without compositing. Thanks vimbaer.

timss commented 9 years ago

I'm a couple of versions behind on my machine since I'm following the Debian testing channel, currently at 340.65 from 8th of December. For reference the release history of the Linux drivers can be found here:

http://www.nvidia.com/object/linux-display-archive.html

I'll check again when the next version comes out, and close the issue if it then seems to be resolved for me aswell as you.

FauxFaux commented 8 years ago

Ubuntu Yakkety (16.10)'s release has pushed me onto the 340 nVidia driver, and I have also developed this problem. The default driver for Yakkety is 367, though, so maybe others won't hit this. (367 doesn't work with my 750 Ti, for some reason I am unable to determine.)

Derpford commented 6 years ago

Same issue, same fix. Nvidia driver, steam doesn't redraw after suspend unless I have a compositor running. Fixed with Compton.