Linux: Rendering problems on nvidia drivers when resuming after sleep

On Linux using the newest Nvidia drivers, on Obsidian 0.12.19 the whole view gets corrupted after sleep. This is a pretty common problem with chromium and electron applications under Linux. I personally seen it in VSCode, Chromium and others.

Here is a few examples:

However, its been fixed in all other apps at this point, at least its gone away on my machine and it only persists in Obsidian. Could you please have a look?

Steps to reproduce

  1. start obsidian
  2. sleep computer
  3. wake computer

Expected result

Obsidian wakes with the rest of the computer

Actual result

Obsidian explodes :wink: Or rather, its rendered useless as the entire view is corrupted, see the link aboves, it looks exactly the same as the multicolored noise in those screenshots

Environment

  • Operating system: ArchLinux
  • Obsidian version: 0.12.19

This is an upstream problem of either electron, or nvidia or both. You should be able to disabling hardware acceleration within Obsidian. You can also try to call obsidian with some of electron/chrome custom switches from the command line.
We are not going to change anything specifically for this. This is an upstream problem and it should be fixed upstream. Eventually, we will get the updates.

Hi there,

Calling the appimage with --disable-gpu fixes the problem by avoiding disabling hardware acceleration full stop. But, to my knowledge (i’d be happy to be corrected here), there is no way of passing a command line flag to enable vulkan, which will fix the problem, as opposed to avoiding it.

But, IMHO, if there is a fix available, and/or an workaround that can be applied programmatically, which seems to be the case, as other electron apps which suffered from this problem in the past, seems to have solved it (without having to turn off hardware acceleration), then I don’t feel its inappropriate to report this as a bug at this stage, as, without laboring the point too much, the upstream bug seems to have gone a long time ago for other apps, which insinuates the upstream component isn’t being used right on this particular platform?

Dont get me wrong, I appreciate it might not be considered a critical bug :laughing: , considering Linux is quite niche and all that. I do, however, feel it should be acknowledged as a problem, as the fact that, for example, VSCode works swimmingly, implies there is a bug (how ever low priority it is considered)

This is a problem. Just not Obsidian’s problem. This is most likely an nvidia’s problem. Then it trickles down to Chrome, Electron and us. Disable gpu accelleration (there is a toggle in Obsidian’s settings) and “enable_vulkan” are workarounds not solutions.
Electron hasn’t adopted these workarounds. VScode has adopted a more drastic workaround (force redraw the scene on wakeup) that doesn’t even work in all cases (the BR is still open).

I suppose we wont completely agree on this one. As i stated in the previous posts, if workarounds exist, I don’t understand why you wouldn’t apply them and try and make a better product, as others are doing. OK, fair enough, you say they have various levels of success and you seem to be more initiated to the problem than me . But keep in mind, these other product have made the problem so transparent, that I personally thought it had been fixed all together at this stage. As for me, they simply just work out of the box at this stage.

So, as a user of an application, regardless of who’s fault it is and who should fix it, applying an workaround feels like an infinitely better solution than just stating “not our problem”.