Flickering and Black Screen in Steam Games after monitor change

So I installed using a 1080p monitor while I was away from home, have been gaming on that monitor for over a month, up until the day I got back home. Connected the system up to my 4K LG C2 OLED, noticed there was screen flickering to black for less than a second in whatever title I launched. As soon as I load into actual gameplay though, the screen goes completely black, and the only way to see the game is to have it lose focus, by bringing up the application launcher or yakuake over the screen so I can quit out.

Here’s my neofetch:

                      ./o.                  slgshark@shane-arch 
                   ./sssso-                ------------------- 
                 `:osssssss+-              OS: EndeavourOS Linux x86_64 
               `:+sssssssssso/.            Kernel: 6.6.10-arch1-1 
             `-/ossssssssssssso/.          Uptime: 41 mins 
           `-/+sssssssssssssssso+:`        Packages: 1182 (pacman) 
         `-:/+sssssssssssssssssso+/.       Shell: fish 3.7.0 
       `.://osssssssssssssssssssso++-      Resolution: 3840x2160 
      .://+ssssssssssssssssssssssso++:     DE: Plasma 5.27.10 
    .:///ossssssssssssssssssssssssso++:    WM: KWin 
  `:////ssssssssssssssssssssssssssso+++.   WM Theme: Lightly 
`-////+ssssssssssssssssssssssssssso++++-   Theme: Breeze Dark [Plasma], Breeze [GTK2/3] 
 `..-+oosssssssssssssssssssssssso+++++/`   Icons: Win11-black-dark [Plasma], Win11-black-dark [GTK2/3] 
   ./++++++++++++++++++++++++++++++/:.     Terminal: yakuake 
  `:::::::::::::::::::::::::------``       CPU: AMD Ryzen 9 5900X (24) @ 3.700GHz 
                                           GPU: NVIDIA GeForce RTX 3090 
                                           Memory: 8195MiB / 32003MiB 

The only the sys logs show when I start a game and flickering happens up until I close it is this:

Jan 14 10:15:55 shane-arch pressure-vessel-wrap[18506]: x86_64-linux-gnu-capsule-capture-libs: warning: Dependencies of libnvidia-pkcs11.so.545.29.06 not found, ignoring: Missing dependencies: Could not find "libcrypto.so.1.1" in LD_LIBRARY_PATH "/home/slgshark/.local/share/Steam/ubuntu12_32:/home/slgshark/.local/share/Steam/ubuntu12_32/panorama:/usr/lib/libfakeroot:/usr/lib32:/usr/lib", ld.so.cache, DT_RUNPATH or fallback /lib:/usr/lib
Jan 14 10:15:55 shane-arch plasmashell[18606]: fsync: up and running.
Jan 14 10:15:55 shane-arch plasmashell[18606]: wine: RLIMIT_NICE is <= 20, unable to use setpriority safely
Jan 14 10:15:58 shane-arch plasmashell[12865]: /bin/sh\0-c\0/home/slgshark/.local/share/Steam/ubuntu12_32/reaper SteamLaunch AppId=1583230 -- /home/slgshark/.local/share/Steam/ubuntu12_32/steam-launch-wrapper -- '/home/slgshark/.local/share/Steam/steamapps/common/SteamLinuxRuntime_sniper'/_v2-entry-point --verb=waitforexitandrun -- '/mnt/Shared/Games/Steam/steamapps/common/Proton 8.0'/proton waitforexitandrun  '/mnt/Shared/Games/Steam/steamapps/common/HighOnLife/Oregon.exe'\0
Jan 14 10:15:58 shane-arch plasmashell[18687]: ERROR: ld.so: object '/home/slgshark/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
Jan 14 10:15:58 shane-arch plasmashell[18687]: ERROR: ld.so: object '/home/slgshark/.local/share/Steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
Jan 14 10:15:58 shane-arch plasmashell[18688]: ERROR: ld.so: object '/home/slgshark/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
Jan 14 10:15:58 shane-arch plasmashell[18688]: ERROR: ld.so: object '/home/slgshark/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
Jan 14 10:15:58 shane-arch plasmashell[18689]: ERROR: ld.so: object '/home/slgshark/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
Jan 14 10:15:59 shane-arch pressure-vessel-wrap[18688]: x86_64-linux-gnu-capsule-capture-libs: warning: Dependencies of libnvidia-pkcs11.so.545.29.06 not found, ignoring: Missing dependencies: Could not find "libcrypto.so.1.1" in LD_LIBRARY_PATH "/usr/lib/libfakeroot:/usr/lib32:/usr/lib:/mnt/Shared/Games/Steam/steamapps/common/HighOnLife", ld.so.cache, DT_RUNPATH or fallback /lib:/usr/lib
Jan 14 10:15:59 shane-arch plasmashell[18789]: fsync: up and running.
Jan 14 10:15:59 shane-arch plasmashell[18789]: wine: RLIMIT_NICE is <= 20, unable to use setpriority safely
Jan 14 10:16:01 shane-arch plasmashell[18787]: Setting breakpad minidump AppID = 1583230
Jan 14 10:16:01 shane-arch plasmashell[18787]: Steam_SetMinidumpSteamID:  Caching Steam ID:  76561198158948548 [API loaded no]
Jan 14 10:16:03 shane-arch plasmashell[18860]: Setting breakpad minidump AppID = 1583230
Jan 14 10:16:03 shane-arch plasmashell[18860]: SteamInternal_SetMinidumpSteamID:  Caching Steam ID:  76561198158948548 [API loaded no]
Jan 14 10:16:03 shane-arch plasmashell[18860]: Fossilize INFO: Overriding serialization path: "/mnt/Shared/Games/Steam/steamapps/shadercache/1583230/fozpipelinesv6/steamapprun_pipeline_cache".
Jan 14 10:16:04 shane-arch plasmashell[18860]: Fossilize INFO: Overriding serialization path: "/mnt/Shared/Games/Steam/steamapps/shadercache/1583230/fozpipelinesv6/steamapprun_pipeline_cache".
Jan 14 10:16:04 shane-arch plasmashell[12865]: GameOverlay: started '/home/slgshark/.local/share/Steam/ubuntu12_32/gameoverlayui' (pid 19037) for game process 18860
Jan 14 10:16:04 shane-arch plasmashell[19037]: 01/14 10:16:04 Init: Installing breakpad exception handler for appid(gameoverlayui)/version(20240113005205)/tid(19037)
Jan 14 10:16:04 shane-arch plasmashell[19037]: 01/14 10:16:04 Init: Installing breakpad exception handler for appid(gameoverlayui)/version(1.0)/tid(19037)
Jan 14 10:16:04 shane-arch plasmashell[19037]: tid(19037) burning pthread_key_t == 0 so we never use it
Jan 14 10:16:04 shane-arch kded5[1351]: Registering ":1.178/StatusNotifierItem" to system tray
Jan 14 10:16:04 shane-arch kded5[1351]: Service  ":1.178" unregistered
Jan 14 10:16:04 shane-arch kded5[1351]: Registering ":1.179/StatusNotifierItem" to system tray
Jan 14 10:16:04 shane-arch kded5[1351]: Service  ":1.179" unregistered
Jan 14 10:16:04 shane-arch kded5[1351]: Registering ":1.180/StatusNotifierItem" to system tray
Jan 14 10:16:04 shane-arch kded5[1351]: Service  ":1.180" unregistered
Jan 14 10:16:04 shane-arch kded5[1351]: Registering ":1.181/StatusNotifierItem" to system tray
Jan 14 10:16:04 shane-arch kded5[1351]: Service  ":1.181" unregistered
Jan 14 10:16:04 shane-arch kded5[1351]: Registering ":1.182/StatusNotifierItem" to system tray
Jan 14 10:16:04 shane-arch kded5[1351]: Service  ":1.182" unregistered
Jan 14 10:16:49 shane-arch kwin_x11[1352]: OpenGL vendor string:                   NVIDIA Corporation
Jan 14 10:16:49 shane-arch kwin_x11[1352]: OpenGL renderer string:                 NVIDIA GeForce RTX 3090/PCIe/SSE2
Jan 14 10:16:49 shane-arch kwin_x11[1352]: OpenGL version string:                  3.1.0 NVIDIA 545.29.06
Jan 14 10:16:49 shane-arch kwin_x11[1352]: OpenGL shading language version string: 1.40 NVIDIA via Cg compiler
Jan 14 10:16:49 shane-arch kwin_x11[1352]: Driver:                                 NVIDIA
Jan 14 10:16:49 shane-arch kwin_x11[1352]: Driver version:                         545.29.6
Jan 14 10:16:49 shane-arch kwin_x11[1352]: GPU class:                              Unknown
Jan 14 10:16:49 shane-arch kwin_x11[1352]: OpenGL version:                         3.1
Jan 14 10:16:49 shane-arch kwin_x11[1352]: GLSL version:                           1.40
Jan 14 10:16:49 shane-arch kwin_x11[1352]: X server version:                       1.21.1
Jan 14 10:16:49 shane-arch kwin_x11[1352]: Linux kernel version:                   6.6.10
Jan 14 10:16:49 shane-arch kwin_x11[1352]: Requires strict binding:                no
Jan 14 10:16:49 shane-arch kwin_x11[1352]: GLSL shaders:                           yes
Jan 14 10:16:49 shane-arch kwin_x11[1352]: Texture NPOT support:                   yes
Jan 14 10:16:49 shane-arch kwin_x11[1352]: Virtual Machine:                        no
Jan 14 10:16:49 shane-arch kwin_x11[1352]: BlurConfig::instance called after the first use - ignoring
Jan 14 10:16:49 shane-arch kwin_x11[1352]: ZoomConfig::instance called after the first use - ignoring
Jan 14 10:16:49 shane-arch kwin_x11[1352]: WindowViewConfig::instance called after the first use - ignoring
Jan 14 10:16:49 shane-arch kwin_x11[1352]: SlidingPopupsConfig::instance called after the first use - ignoring
Jan 14 10:16:49 shane-arch kwin_x11[1352]: SlideConfig::instance called after the first use - ignoring
Jan 14 10:16:49 shane-arch kwin_x11[1352]: OverviewConfig::instance called after the first use - ignoring
Jan 14 10:16:49 shane-arch kwin_x11[1352]: KscreenConfig::instance called after the first use - ignoring
Jan 14 10:16:49 shane-arch kwin_x11[1352]: DesktopGridConfig::instance called after the first use - ignoring
Jan 14 10:16:50 shane-arch plasmashell[18860]: holyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfucholyfuc
Jan 14 10:16:50 shane-arch plasmashell[18789]: pid 18789 != 18788, skipping destruction (fork without exec?)
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 created interface STEAMAPPS_INTERFACE_VERSION008 /
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 created interface STEAMREMOTESTORAGE_INTERFACE_VERSION014 /
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 created interface STEAMUSERSTATS_INTERFACE_VERSION012 /
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 created interface SteamController008 /
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 created interface SteamFriends017 /
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 created interface SteamInput002 /
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 created interface SteamMatchMaking009 /
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 created interface SteamMatchMakingServers002 /
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 created interface SteamNetworking006 /
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 created interface SteamUser021 /
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 created interface SteamUser021 / User
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 created interface SteamUtils010 /
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientNetworking::AllowP2PPacketRelay : 1
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientUserStats::UploadLeaderboardScore : 3
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientUserStats::GetLeaderboardDisplayType : 3
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientUserStats::GetLeaderboardSortMethod : 3
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientUserStats::GetLeaderboardEntryCount : 3
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientUserStats::FindOrCreateLeaderboard : 3
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientUserStats::RequestUserStats : 4
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientUserStats::GetAchievementDisplayAttribute : 132
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientUserStats::GetAchievement : 44
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientUserStats::StoreStats : 6
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientUserStats::SetStat : 3
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientUserStats::GetStat : 3
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientUserStats::RequestCurrentStats : 1
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientAppManager::GetCurrentLanguage : 3
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientAppManager::IsAppDlcInstalled : 1
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientApps::BGetDLCDataByIndex : 1
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientApps::GetDLCCount : 2
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientUtils::RecordSteamInterfaceCreation : 14
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientUtils::GetAPICallResult : 10
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientUtils::IsAPICallCompleted : 56
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientUtils::GetAppID : 17
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientFriends::GetPersonaName : 2
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientUser::BIsSubscribedApp : 1
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientUser::GetSteamID : 18
Jan 14 10:16:51 shane-arch plasmashell[12865]: Game 1583230 method call count for IClientUser::BLoggedOn : 1
Jan 14 10:16:51 shane-arch plasmashell[12865]: Uploaded AppInterfaceStats to Steam
Jan 14 10:16:51 shane-arch gameoverlayui[19037]: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
Jan 14 10:17:01 shane-arch plasmashell[12865]: reaping pid: 19037 -- gameoverlayui

Weird something like this would happen after changing a monitor, the only thing I can think of is the LG TV has freesync/gsync, versus the monitor I was using before was an old 1080p Asus LED monitor.

The log you’ve provided seems to be quite extensive, and it may require further analysis to pinpoint the exact cause of the flickering and out-of-focus issues in games on your 4K monitor. However, there are a few observations and potential areas to investigate:

  1. NVIDIA Driver Issues:

    • The log mentions warnings related to missing dependencies for libnvidia-pkcs11.so.545.29.06. Ensure that your NVIDIA drivers are up-to-date and properly installed. You might also want to check the Arch Linux forums or NVIDIA’s official forums for any reported issues or solutions related to your GPU model and driver version.
  2. Steam Overlay Errors:

    • There are errors related to Steam Overlay in the log, such as:
      ERROR: ld.so: object '/home/slgshark/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
      
      These errors might be related to Steam Overlay not working correctly with your 4K monitor. You can try disabling the Steam Overlay for the affected games in Steam settings to see if it resolves the issue.
  3. Kwin (KDE Window Manager) and Compositing:

    • The log includes information about the KDE Window Manager (Kwin). Make sure that Kwin’s compositing settings are compatible with your GPU and monitor. You can try disabling compositing temporarily to see if it affects the flickering issue.
  4. OpenGL and Driver Version:

    • Check if the OpenGL version and driver version reported by Kwin are compatible with the games you’re running. Some games may have specific requirements or issues with certain OpenGL versions.
  5. Resolution and Scaling:

    • Ensure that your monitor’s native resolution and refresh rate are correctly detected and set in your system settings. Additionally, check the display scaling settings to ensure they are appropriate for the 4K monitor.
  6. Game-Specific Settings:

    • Check if the issue is specific to certain games. Experiment with different in-game graphics settings and resolutions to see if it has an impact on the flickering issue.
  7. Monitor Configuration:

    • Verify that your 4K monitor is properly configured in your Xorg settings. You can check and adjust the settings using tools like xrandr.
  8. Kernel Version:

    • Ensure that your Linux kernel is up-to-date. Sometimes, newer kernels come with improved hardware support.

Before making any changes, it’s recommended to create backups or snapshots of your system so that you can easily revert any changes that don’t resolve the issue or introduce new problems. Additionally, check the Arch Linux forums or relevant community support channels for specific advice related to your hardware and software configuration.

If absolutely nothing (including updates) haven’t changed since monitors switch:
I have suspicion that it’s bad monitor cable, they can act like that under heavy data overload.
Try watching 8k / 60 fps video on youtube and see if it will behave like that also…

P.S. It’s best to download it with yt-dlp and watch locally with vlc or mpv, so you will actually do GPU overload…State of video-acceleration in browsers are mess :clown_face:

Thank you guys for your helpful replies:

  1. I tried the 8K 60fps video with VLC and no flickering/ blackscreen, so likely not the cable.

  2. I think it may be an issue with the nvidia 545 driver. Funny enough how I never experienced any issues on the 1080p monitor:
    https://bbs.archlinux.org/viewtopic.php?id=291416
    https://github.com/flathub/com.valvesoftware.Steam/issues/1198
    I’ll do system backup later on and try downgrading to the 535 Driver and see if that fixes it.

  3. xrandr reports the following:

Screen 0: minimum 8 x 8, current 3840 x 2160, maximum 32767 x 32767
DP-0 disconnected (normal left inverted right x axis y axis)
DP-1 disconnected (normal left inverted right x axis y axis)
HDMI-0 connected primary 3840x2160+0+0 (normal left inverted right x axis y axis) 1600mm x 900mm
   3840x2160     60.00 + 119.88*  100.00    59.94    50.00    29.97    25.00    23.98  
   4096x2160    119.88   100.00    59.94    50.00    29.97    25.00    24.00    23.98  
   2560x1440    120.00  
   1920x1080    119.88   100.00    60.00    59.94    50.00    29.97    25.00    23.98  
   1280x1024     60.02  
   1280x720      59.94    50.00  
   1152x864      60.00  
   1024x768      60.00  
   800x600       60.32  
   720x576       50.00  
   720x480       59.94  
   640x480       59.95    59.94  
DP-2 disconnected (normal left inverted right x axis y axis)
DP-3 disconnected (normal left inverted right x axis y axis)
HDMI-1 disconnected (normal left inverted right x axis y axis)
DP-4 disconnected (normal left inverted right x axis y axis)
DP-5 disconnected (normal left inverted right x axis y axis)

Uhhhh why is the refresh rate for 4k set to 119.88hz, even thought the KDE UI says its 120hz. I don’t know if this would be the issue.

I’ll let you guys know how it goes after some more testing.

1 Like

Unlikely, most monitors have slight offset in actual frequency

I bet it’s just to trigger people with OCD or perfectionism :rofl:

Have you managed to set your new native resolution in game settings?

I have tried setting different resolutions and refresh rates, including native in Ark SA, High On Life, etc. At first I thought it was just Ark being problematic, even deleted my config to see if it fixed it. Tried windowed, fullscreen, windowed-fullscreen, all the same result.

Just tested windowed-fullscreen in High On Life, there was still flickering during loading, but no blackscreen after load. Ark it made no difference what setting just now.

Funny observation if I do a screen-share or record my screen, there is no flickering/ black screen.

Could it be the compositor causing issues then?

Plasmashell is out of it’s mind :rofl:

Yes.

I think during my testing last night I tried turning it off with qdbus org.kde.KWin /Compositor suspend but that didn’t seem to make a difference.

Just to make sure, check if you’re not in partial update or something…

do your

sudo pacman -Syu

and

yay -Sua

reboot, and see what’s what.

image

1 Like

Steam (top left menu) → Check for Steam Client Updates

image

1 Like

Yeah…That seems fine.
For now i’m out of quick and stupid solutions :man_shrugging:

Only other thing for me to try is downgrading the driver and maybe look into if it’s steam overlay issue. Even though I have the overlay disabled in steam.

Edit:
Oh and I just tried resetting the display scaling in KDE to 100%, was the only other thing I touched besides the resolution when I swapped monitors. Didn’t help.

I suggest against it…usually it will cause you even more problems :upside_down_face:

Unlikely, if it’s disabled…but it won’t hurt i guess.

I wonder, since i don’t have this hispter g-sync stuff in my monitors…could you force it off?
At least to make sure it’s not the cause.

I disabled G-Sync and freesync just now but it didnt change the result. Which is weird because I have noticed the screen goes black when the FPS drops below a certain threshold, like 60, which explains why I get flickering navigating menus in ark and then full black screen in gameplay, but if my character is moved inside a building where I get around 70fps vs the normal 30-40fps, then the picture comes back. Also found this post:

https://www.reddit.com/r/linux_gaming/comments/mvi3fg/black_screen_with_gsync/

Edit:
And yes I have tried turning my computer on and off again, multiple times.

For now I guess I’ll game on windows again and live with experiencing a crash to desktop with Ark every 5 - 10 minutes. (Didn’t experience a single crash with any games on linux)