Black screen with only mouse cursor on Steam with Nvidia card

So something is wrong with prime or the nvidia.

Did you remove and disable all the bumblebee stuff?

Did you do some other configurations at any point?

In BIOS, or maybe something in /etc/X11/*, or a boot option ?

See for example these other threads…

Nvidia Optimus doesn’t work with 545 driver

Second XServer (for dual monitor) doesn't start: Insufficient permissions

I am not sure how to remove bumblebee safely. I don’t think I did any other configurations. Will check this topics, thank you.

To check for packages:

pacman -Qs bumble
pacman -Qs bumble
local/bumblebee 3.2.1-23
    NVIDIA Optimus support for Linux through Primus/VirtualGL
local/lib32-primus 20151110-5
    Faster OpenGL offloading for Bumblebee (32-bit)
local/primus 20151110-9
    Faster OpenGL offloading for Bumblebee

Then

sudo pacman -Rns bumblebee primus lib32-primus

This should also disable/remove the associated services, but we can check as well

systemctl list-units --all | grep -i bumble

Give it a reboot and recheck PRIME/glxinfo.

Thanks, this is what I get:

~ ❯ glxinfo | grep 'renderer string'
glx: failed to create dri3 screen
failed to load driver: nouveau
OpenGL renderer string: Mesa Intel(R) UHD Graphics 620 (WHL GT2)

~ ❯ prime-run glxinfo | grep 'renderer string'
X Error of failed request:  BadAlloc (insufficient resources for operation)
  Major opcode of failed request:  152 (GLX)
  Minor opcode of failed request:  5 (X_GLXMakeCurrent)
  Serial number of failed request:  0
  Current serial number in output stream:  31

Still something wrong, obviously.

Please check for errant config files;

ls /etc/X11/{mhwd,xorg.conf}.d/

Also realized there may be more bumblebee under ‘bb’;

pacman -Qs bb

And please also show mhwd as it is now;

mhwd -li -l

And might as well get a current inxi;

inxi -Fazy
ls /etc/X11/{mhwd,xorg.conf}.d/
/etc/X11/mhwd.d/:
intel.conf  nvidia.conf  nvidia.conf.nvidia-xconfig-original

/etc/X11/xorg.conf.d/:
00-keyboard.conf  20-intel.conf  40-libinput.conf  90-mhwd.conf@
mhwd -li -l
> Installed PCI configs:
--------------------------------------------------------------------------------
                  NAME               VERSION          FREEDRIVER           TYPE
--------------------------------------------------------------------------------
           video-linux            2018.05.04                true            PCI
video-hybrid-intel-nvidia-prime            2023.03.23               false            PCI
     video-modesetting            2020.01.13                true            PCI


Warning: No installed USB configs!
> 0000:01:00.0 (0302:10de:1d11) Display controller nVidia Corporation:
--------------------------------------------------------------------------------
                  NAME               VERSION          FREEDRIVER           TYPE
--------------------------------------------------------------------------------
video-hybrid-intel-nvidia-prime            2023.03.23               false            PCI
video-hybrid-intel-nvidia-470xx-prime            2023.03.23               false            PCI
          video-nvidia            2023.03.23               false            PCI
    video-nvidia-470xx            2023.03.23               false            PCI
           video-linux            2018.05.04                true            PCI


> 0000:00:02.0 (0300:8086:3ea0) Display controller Intel Corporation:
--------------------------------------------------------------------------------
                  NAME               VERSION          FREEDRIVER           TYPE
--------------------------------------------------------------------------------
video-hybrid-intel-nvidia-prime            2023.03.23               false            PCI
video-hybrid-intel-nvidia-470xx-prime            2023.03.23               false            PCI
           video-linux            2018.05.04                true            PCI
     video-modesetting            2020.01.13                true            PCI
            video-vesa            2017.03.12                true            PCI
inxi -Fazy
System:
  Kernel: 6.7.4-2-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 13.2.1
    clocksource: tsc avail: acpi_pm
    parameters: BOOT_IMAGE=/boot/vmlinuz-6.7-x86_64
    root=UUID=8a4121af-3d0b-415e-af8d-eada59f0f37a rw quiet apparmor=1
    security=apparmor resume=UUID=fe9298f7-cef3-4d54-bf25-dfee493000ac
    udev.log_priority=3
  Desktop: Xfce v: 4.18.1 tk: Gtk v: 3.24.36 wm: xfwm4 v: 4.18.0
    with: xfce4-panel tools: light-locker vt: 7 dm: LightDM v: 1.32.0
    Distro: Manjaro base: Arch Linux
Machine:
  Type: Laptop System: LENOVO product: 81N8 v: Lenovo IdeaPad S340-15IWL
    serial: <superuser required> Chassis: type: 10 v: Lenovo IdeaPad S340-15IWL
    serial: <superuser required>
  Mobo: LENOVO model: LNVNB161216 v: No DPK serial: <superuser required>
    part-nu: LENOVO_MT_81N8_BU_idea_FM_IdeaPad S340-15IWL
    uuid: <superuser required> UEFI: LENOVO v: ALCN24WW(V2.01) date: 03/29/2019
Battery:
  ID-1: BAT1 charge: 37.9 Wh (90.7%) condition: 41.8/52.5 Wh (79.5%)
    power: 14.4 W volts: 12.1 min: 11.2 model: Celxpert L18C3PF7 type: Li-ion
    serial: <filter> status: discharging cycles: 978
  Device-1: hidpp_battery_0 model: Logitech M585/M590 Multi-Device Mouse
    serial: <filter> charge: 100% (should be ignored) rechargeable: yes
    status: discharging
CPU:
  Info: model: Intel Core i5-8265U bits: 64 type: MT MCP
    arch: Comet/Whiskey Lake note: check gen: core 8 level: v3 note: check
    built: 2018 process: Intel 14nm family: 6 model-id: 0x8E (142)
    stepping: 0xC (12) microcode: 0xF8
  Topology: cpus: 1x cores: 4 tpc: 2 threads: 8 smt: enabled cache:
    L1: 256 KiB desc: d-4x32 KiB; i-4x32 KiB L2: 1024 KiB desc: 4x256 KiB
    L3: 6 MiB desc: 1x6 MiB
  Speed (MHz): avg: 1800 min/max: 400/3900 scaling: driver: intel_pstate
    governor: powersave cores: 1: 1800 2: 1800 3: 1800 4: 1800 5: 1800 6: 1800
    7: 1800 8: 1800 bogomips: 28808
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
  Vulnerabilities:
  Type: gather_data_sampling mitigation: Microcode
  Type: itlb_multihit status: KVM: VMX disabled
  Type: l1tf status: Not affected
  Type: mds status: Not affected
  Type: meltdown status: Not affected
  Type: mmio_stale_data mitigation: Clear CPU buffers; SMT vulnerable
  Type: retbleed mitigation: Enhanced IBRS
  Type: spec_rstack_overflow status: Not affected
  Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
    prctl
  Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
    sanitization
  Type: spectre_v2 mitigation: Enhanced / Automatic IBRS, IBPB: conditional,
    RSB filling, PBRSB-eIBRS: SW sequence
  Type: srbds mitigation: Microcode
  Type: tsx_async_abort status: Not affected
Graphics:
  Device-1: Intel WhiskeyLake-U GT2 [UHD Graphics 620] vendor: Lenovo
    driver: i915 v: kernel arch: Gen-9.5 process: Intel 14nm built: 2016-20
    ports: active: eDP-1 empty: DP-1,HDMI-A-1,HDMI-A-2 bus-ID: 00:02.0
    chip-ID: 8086:3ea0 class-ID: 0300
  Device-2: NVIDIA GP108M [GeForce MX230] vendor: Lenovo driver: nvidia
    v: 545.29.06 alternate: nouveau,nvidia_drm non-free: 545.xx+ status: current
    (as of 2024-02; EOL~2026-12-xx) arch: Pascal code: GP10x process: TSMC 16nm
    built: 2016-2021 pcie: gen: 1 speed: 2.5 GT/s lanes: 4 link-max: gen: 3
    speed: 8 GT/s bus-ID: 01:00.0 chip-ID: 10de:1d11 class-ID: 0302
  Device-3: Syntek Integrated Camera driver: uvcvideo type: USB rev: 2.0
    speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-6:3 chip-ID: 174f:2426
    class-ID: 0e02 serial: <filter>
  Display: x11 server: X.Org v: 21.1.11 with: Xwayland v: 23.2.4
    compositor: xfwm4 v: 4.18.0 driver: X: loaded: intel dri: i965 gpu: i915
    display-ID: :0.0 screens: 1
  Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x285mm (20.00x11.22")
    s-diag: 582mm (22.93")
  Monitor-1: eDP-1 mapped: eDP1 model: LG Display 0x05e5 built: 2018
    res: 1920x1080 hz: 60 dpi: 143 gamma: 1.2 size: 340x190mm (13.39x7.48")
    diag: 395mm (15.5") ratio: 16:9 modes: 1920x1080
  API: EGL v: 1.5 hw: drv: intel iris drv: nvidia platforms: device: 0
    drv: nvidia device: 1 drv: iris device: 3 drv: swrast surfaceless:
    drv: nvidia x11: drv: iris inactive: gbm,wayland,device-2
  API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: intel mesa v: 23.3.5-manjaro1.1
    glx-v: 1.4 direct-render: yes renderer: Mesa Intel UHD Graphics 620 (WHL GT2)
    device-ID: 8086:3ea0 memory: 11.14 GiB unified: yes
  API: Vulkan v: 1.3.276 layers: 5 device: 0 type: discrete-gpu
    name: NVIDIA GeForce MX230 driver: nvidia v: 545.29.06 device-ID: 10de:1d11
    surfaces: xcb,xlib device: 1 type: integrated-gpu name: Intel UHD Graphics
    620 (WHL GT2) driver: mesa intel v: 23.3.5-manjaro1.1 device-ID: 8086:3ea0
    surfaces: xcb,xlib
Audio:
  Device-1: Intel Cannon Point-LP High Definition Audio vendor: Lenovo
    driver: snd_hda_intel v: kernel alternate: snd_soc_skl,snd_sof_pci_intel_cnl
    bus-ID: 00:1f.3 chip-ID: 8086:9dc8 class-ID: 0403
  API: ALSA v: k6.7.4-2-MANJARO status: kernel-api with: aoss
    type: oss-emulator tools: alsactl,alsamixer,amixer
  Server-1: JACK v: 1.9.22 status: off tools: N/A
  Server-2: PipeWire v: 1.0.3 status: off tools: pw-cli
  Server-3: PulseAudio v: 17.0 status: active with: 1: pulseaudio-alsa
    type: plugin 2: pulseaudio-jack type: module tools: pacat,pactl,pavucontrol
Network:
  Device-1: Qualcomm Atheros QCA9377 802.11ac Wireless Network Adapter
    vendor: Lenovo driver: ath10k_pci v: kernel pcie: gen: 1 speed: 2.5 GT/s
    lanes: 1 bus-ID: 03:00.0 chip-ID: 168c:0042 class-ID: 0280
  IF: wlp3s0 state: up mac: <filter>
  Info: services: NetworkManager, systemd-timesyncd, wpa_supplicant
Bluetooth:
  Device-1: Qualcomm Atheros driver: btusb v: 0.8 type: USB rev: 2.0
    speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-10:4 chip-ID: 0cf3:e500
    class-ID: e001
  Report: btmgmt ID: hci0 rfk-id: 2 state: up address: <filter> bt-v: 4.2
    lmp-v: 8 status: discoverable: no pairing: no class-ID: 6c010c
Drives:
  Local Storage: total: 476.94 GiB used: 421.54 GiB (88.4%)
  SMART Message: Required tool smartctl not installed. Check --recommends
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Western Digital model: PC SN520
    SDAPMUW-512G-1101 size: 476.94 GiB block-size: physical: 512 B
    logical: 512 B speed: 15.8 Gb/s lanes: 2 tech: SSD serial: <filter>
    fw-rev: 20210001 temp: 44.9 C scheme: GPT
Partition:
  ID-1: / raw-size: 59.96 GiB size: 58.72 GiB (97.93%) used: 54.46 GiB (92.7%)
    fs: ext4 dev: /dev/nvme0n1p2 maj-min: 259:2
  ID-2: /boot/efi raw-size: 512 MiB size: 511 MiB (99.80%)
    used: 288 KiB (0.1%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1
  ID-3: /home raw-size: 414.47 GiB size: 406.9 GiB (98.17%)
    used: 366.92 GiB (90.2%) fs: ext4 dev: /dev/nvme0n1p3 maj-min: 259:3
Swap:
  Kernel: swappiness: 60 (default) cache-pressure: 100 (default) zswap: yes
    compressor: zstd max-pool: 20%
  ID-1: swap-1 type: partition size: 2 GiB used: 168.5 MiB (8.2%)
    priority: -2 dev: /dev/nvme0n1p4 maj-min: 259:4
Sensors:
  System Temperatures: cpu: 51.0 C pch: 47.0 C mobo: N/A
  Fan Speeds (rpm): N/A
Info:
  Memory: total: 12 GiB note: est. available: 11.41 GiB used: 7.72 GiB (67.6%)
  Processes: 304 Power: uptime: 13m states: freeze,mem,disk suspend: deep
    avail: s2idle wakeups: 0 hibernate: platform avail: shutdown, reboot,
    suspend, test_resume image: 4.56 GiB services: upowerd,xfce4-power-manager
    Init: systemd v: 255 default: graphical tool: systemctl
  Packages: 2237 pm: pacman pkgs: 2204 libs: 582 tools: pamac,yay pm: flatpak
    pkgs: 24 pm: snap pkgs: 9 Compilers: clang: 16.0.6 gcc: 13.2.1 Shell: fish
    v: 3.7.0 running-in: alacritty inxi: 3.3.33

Sorry, I added one more thing probably as you were posting.
Can we see also

pacman -Qs bb

Absolutely, thanks again.

pacman -Qs bb
local/aribb24 1.0.3-3
    Library for ARIB STD-B24, decoding JIS 8 bit characters and parsing MPEG-TS stream
local/bluez-libs 5.72-2
    Deprecated libraries for the bluetooth protocol stack
local/boost-libs 1.83.0-5
    Free peer-reviewed portable C++ source libraries (runtime libraries)
local/brotli 1.1.0-1
    Generic-purpose lossless compression algorithm
local/bubblewrap 0.8.0-1
    Unprivileged sandboxing tool
local/bzip2 1.0.8-5
    A high-quality data compression program
local/lib32-brotli 1.1.0-1
    Generic-purpose lossless compression algorithm (32-bit)
local/lib32-util-linux 2.39.3-1
    Miscellaneous system utilities for Linux (32-bit)
local/libb2 0.98.1-2
    C library providing BLAKE2b, BLAKE2s, BLAKE2bp, BLAKE2sp hash functions
local/libblockdev 3.0.4-1
    A library for manipulating block devices
local/libbluray 1.3.4-1
    Library to access Blu-Ray disks for video playback
local/libbpf 1.3.0-1
    Library for loading eBPF programs and reading and manipulating eBPF objects from user-space
local/libbs2b 3.1.0-8
    Bauer stereophonic-to-binaural DSP effect library
local/libbsd 0.11.8-1
    Provides useful functions commonly found on BSD systems like strlcpy()
local/libburn 1.5.6-1
    Library for reading, mastering and writing optical discs
local/libbytesize 2.8-2
    A tiny library providing a C "class" for working with arbitrary big sizes in bytes
local/libdispatch 5.5.0-1
    Comprehensive support for concurrent code execution on multicore hardware
local/librabbitmq-c 0.11.0-2
    RabbitMQ(amqp) library written in C-language
local/linux66-bbswitch 0.8-41 (linux66-extramodules)
    kernel module allowing to switch dedicated graphics card on Optimus laptops
local/linux67-bbswitch 0.8-8 (linux67-extramodules)
    kernel module allowing to switch dedicated graphics card on Optimus laptops
local/onetbb 2021.11.0-1
    High level abstract threading library (oneAPI Threading Building Blocks)
local/perl 5.38.2-1
    A highly capable, feature-rich programming language
local/qpdfview 0.5.0-2
    A tabbed PDF viewer using the poppler library
local/rabbitmq 3.12.10-1
    Highly reliable and performant enterprise messaging implementation of AMQP written in Erlang/OTP
local/rubberband 3.3.0-1
    Time-stretching and pitch-shifting audio library and utility
local/ruby-abbrev 0.1.0-4
    Calculates a set of unique abbreviations for a given set of strings
local/sbc 2.0-1
    Bluetooth Subband Codec (SBC) library
local/util-linux-libs 2.39.3-1
    util-linux runtime libraries
local/xfburn 0.7.0-1 (xfce4-goodies)
    A simple CD/DVD burning tool based on libburnia libraries

Aha, found more.

Please remove these as well.

sudo pacman -Rns linux66-bbswitch linux67-bbswitch

With that done we might want to ‘refresh’ your configs.

I would suggest removing or backing up these files.
ex:

mkdir -p ./x11backups/{mhwd,xorg.conf}.d
sudo mv /etc/X11/xorg.conf.d/{20-intel.conf,90-mhwd.conf@} ./x11backups/xorg.conf.d/
sudo mv /etc/X11/mhwd.d/* ./x11backups/mhwd.d/

With those out of the way we can force reinstall the PRIME profile which should repopulate any necessary configs.

sudo mhwd -f -i pci video-hybrid-intel-nvidia-prime

Finally, I will also mention your BIOS.

I believe this is out of date. Its possible this could impact performance.
Its also generally just a good idea to do your BIOS updates.
But I know its something some folks avoid, and its not necessarily related to this issue.
But mentioning nonetheless. :slight_smile:

PS. whoops, I had a typo in there. be advised of the edit.
(accidentally wrote to move the libinput file when the intention was the mhwd conf)

PPS. Break time. Be back in a little bit.

I think I followed the steps correctly, but maybe not much change.

~ ❯ glxinfo | grep 'renderer string'
OpenGL renderer string: Mesa Intel(R) UHD Graphics 620 (WHL GT2)

~ ❯ prime-run glxinfo | grep 'renderer string'
X Error of failed request:  BadAlloc (insufficient resources for operation)
  Major opcode of failed request:  152 (GLX)
  Minor opcode of failed request:  5 (X_GLXMakeCurrent)
  Serial number of failed request:  0
  Current serial number in output stream:  31

Well, at least the original run doesnt complain about something with nouveau (os nvidia) any more.

You also have video-linux which should not be needed.
Please remove it.

sudo mhwd -r pci video-linux

When done, please double-check for the unwanted older intel driver

pacman -Qs xf86-video-intel

If its there, please remove it.

sudo pacman -Rns xf86-video-intel

After that and a reboot please check glxinfo/prime-run again.

I’m ready

~ ❯ glxinfo | grep 'renderer string'
OpenGL renderer string: Mesa Intel(R) UHD Graphics 620 (WHL GT2)

~ ❯ prime-run glxinfo | grep 'renderer string'
X Error of failed request:  BadAlloc (insufficient resources for operation)
  Major opcode of failed request:  152 (GLX)
  Minor opcode of failed request:  5 (X_GLXMakeCurrent)
  Serial number of failed request:  0
  Current serial number in output stream:  31

We are more or less in the same spot still.

There may be some other config I am not thinking of.

Or maybe its the BIOS.

But I think I am out of ideas now.

I suppose I might suggest trying kernel 6.6 as well.

Oh. One more thought. Do you have the compositor running? If not, please try starting it.

Hi again, so it’s the same thing with kernel 6.6.
This is the xfce compositor:

Maybe the last think is the BIOS. What is the proper way to do that, Lenovo provide me only .exe - fwupd?

A small number of games on Steam use the Nvidia card, but most do not. Can anyone think of anything else? Is a fresh install of Manjaro a good idea? Thanks.

prime-run glxinfo | grep 'renderer string'

If that is not working (should show Nvidia gpu) then yes, something is badly broken on your system and a re-install may be the easiest fix.

Hi,
I tried qtile with Wayland and my video card seems to be working.

~ ❯ prime-run glxinfo | grep 'renderer string'
OpenGL renderer string: NVIDIA GeForce MX230/PCIe/SSE2

Any idea how to get it to run under X11? Thanks.

Hi guys,
After the last Nvidia update (550.67) everything is working correctly on X11. Thank you for all your effort.

1 Like