pop-os / system76-power

Power profile management for Linux
GNU General Public License v3.0
597 stars 74 forks source link

steam game will only launch to external screens with nvidia, built in screen only with intel. #295

Open kylebakerio opened 2 years ago

kylebakerio commented 2 years ago

On a thinkpad X1 extreme gen 4 with rtx 3080, 4k~ 16:10 screen.

Distribution (run cat /etc/os-release): 21.04 (just ran full update from pop store)

Related Application and/or Package Version (run apt policy $PACKAGE NAME): Steam (just installed from pop store)

Issue/Bug Description: see description on reddit also: https://www.reddit.com/r/linux_gaming/comments/rari1o/steam_game_will_only_launch_to_external_screens/

when I try to launch red dead redemption 2 (only game I've tried, but I expect this to be constant because of clues), it was able to launch first time, but was anchored to external screen. Game would therefore only do fullscreen on that external screen, and only show resolutions available to that external screen. Thing is, my external screens are generally vertical, so 1080x1920, and for work, not play (built in laptop screen is much nicer).

I tried to turn it off, unplug external monitors, and relaunch, but now the game always fails with a warning to "update intel drivers". :/

Seems to associated built-in screen with intel, external monitors with nvidia.

I'm in Nvidia mode. Changing franctional scaling settings does not affect the error message I get.

Steps to reproduce (if you know):

Other Notes:

external monitors only work when in nvidia-only mode on pop OS, even when trying to run them over usb-c MST. That's annoying but separate, and likely a hardware limitation I am assuming (though I am surprised by that and not so sure...), but anyways, it's a valuable clue in understanding the nature of this problem, I think.

also, haven't been able to get game to launch again. As a workaround, I have been trying to have external monitors set as rotated horizontally just to get game to launch with those resolutions available. Then I can drag it over and at least run it windowed at 1920x1080, is the theory. Haven't gotten game to launch again after first launch, though.

kylebakerio commented 2 years ago

somewhat more confusing, it looks like it is trying to launch with nvidia:

@pop-os:~$ nvidia-smi
Tue Dec  7 06:45:31 2021       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 470.86       Driver Version: 470.86       CUDA Version: 11.4     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  NVIDIA GeForce ...  Off  | 00000000:01:00.0  On |                  N/A |
| N/A   54C    P5    23W /  N/A |   2494MiB / 16125MiB |     31%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A      1060      G   /usr/lib/xorg/Xorg                913MiB |
|    0   N/A  N/A      1261      G   /usr/bin/gnome-shell               89MiB |
|    0   N/A  N/A      1667      G   telegram-desktop                   39MiB |
|    0   N/A  N/A    148189      G   ...AAAAAAAAA= --shared-files       62MiB |
|    0   N/A  N/A    153275      G   ...AAAAAAAAA= --shared-files       14MiB |
|    0   N/A  N/A    161859      G   gnome-control-center               39MiB |
|    0   N/A  N/A    165125      G   ...AAAAAAAAA= --shared-files      120MiB |
|    0   N/A  N/A    169965      G   ...llation/ubuntu12_32/steam       38MiB |
|    0   N/A  N/A    169972      G   ./steamwebhelper                    3MiB |
|    0   N/A  N/A    170026      G   ...ef_log.txt --shared-files       96MiB |
|    0   N/A  N/A    173595    C+G   ...mes\Launcher\Launcher.exe      533MiB |
|    0   N/A  N/A    173726    C+G   ...Club\SocialClubHelper.exe      533MiB |
+-----------------------------------------------------------------------------+

At the bottom there, 99% sure that Launcher.exe is the game trying to launch, and SocialClubHelper.exe is Rockstar's launcher-in-steam that runs.

kylebakerio commented 2 years ago

Also, blindly tried throwing these launch params into steam for the game: __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME="nvidia" __VK_LAYER_NV_optimus="NVIDIA_only"

they didn't seem to do anything.

kylebakerio commented 2 years ago

Note: I was able to get the game to run by switching the mux switch in the bios. after that I had game-specific crashing issues, but those are not linux (or pop, or my machine) specific, and I finished resolving those by following an online guide that mentioned deleting some files and replacing them with empty versions with same name.

Would prefer to not have to have mux switch flipped, I think, and this still seems like an issue, but luckily I have a workaround.