Nvidia prime stopped to work, help please

Hi everyone, I don’t know why and when, but at one time nvidia prime stopped to work. So when I run prime-run glxinfo I get

name of display: :0
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

Maybe it was because of some upgrade, but some day it worked.

Some hardware and system info:

kernel: Linux 6.6.19-1-MANJARO

 ~  inxi -G                                              
Graphics:
  Device-1: Intel TigerLake-LP GT2 [Iris Xe Graphics] driver: i915 v: kernel
  Device-2: NVIDIA TU117M [GeForce MX450] driver: nvidia v: 550.54.14
  Device-3: Syntek Integrated Camera driver: uvcvideo type: USB
  Display: x11 server: X.org v: 1.21.1.11 with: Xwayland v: 23.2.4 driver:
    X: loaded: modesetting unloaded: nvidia dri: iris gpu: i915
    resolution: 1920x1080~60Hz
  API: EGL v: 1.5 drivers: iris,nvidia,swrast
    platforms: gbm,x11,surfaceless,device
  API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: intel mesa v: 24.0.2-manjaro1.1
    renderer: Mesa Intel Xe Graphics (TGL GT2)
  API: Vulkan v: 1.3.279 drivers: intel,nvidia surfaces: xcb,xlib
 ~ > mhwd --list                                          
> 0000:01:00.0 (0302:10de:1f97) 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:9a49) 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

I don’t know what to do and in what direction to dig, so please help me

post the output of

echo $XDG_SESSION_TYPE && glxinfo | grep server
 ~  echo $XDG_SESSION_TYPE && glxinfo | grep server                                               
x11
server glx vendor string: SGI
server glx version string: 1.4
server glx extensions:

and now the output of

prime-run  glxinfo | grep server

Also I have that
~  sudo journalctl -b0 | grep 'nvidia'

бер 18 18:35:10 IdeaPad15ITL05 kernel: nvidia: loading out-of-tree module taints kernel.
бер 18 18:35:10 IdeaPad15ITL05 kernel: nvidia: module license 'NVIDIA' taints kernel.
бер 18 18:35:10 IdeaPad15ITL05 kernel: nvidia: module verification failed: signature and/or required key missing - tainting kernel
бер 18 18:35:10 IdeaPad15ITL05 kernel: nvidia: module license taints kernel.
бер 18 18:35:10 IdeaPad15ITL05 kernel: nvidia-nvlink: Nvlink Core is being initialized, major device number 508
бер 18 18:35:10 IdeaPad15ITL05 kernel: nvidia 0000:01:00.0: enabling device (0006 -> 0007)
бер 18 18:35:10 IdeaPad15ITL05 systemd-modules-load[250]: Inserted module 'nvidia'
бер 18 18:35:10 IdeaPad15ITL05 kernel: nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms  550.54.14  Thu Feb 22 01:25:25 UTC 2024
бер 18 18:35:10 IdeaPad15ITL05 kernel: [drm] [nvidia-drm] [GPU ID 0x00000100] Loading driver
бер 18 18:35:10 IdeaPad15ITL05 kernel: nvidia_uvm: module uses symbols nvUvmInterfaceDisableAccessCntr from proprietary module nvidia, inheriting taint.
бер 18 18:35:11 IdeaPad15ITL05 kernel: nvidia-uvm: Loaded the UVM driver, major device number 506.
бер 18 18:35:11 IdeaPad15ITL05 kernel: [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:01:00.0 on minor 1
бер 18 18:35:11 IdeaPad15ITL05 systemd-modules-load[250]: Inserted module 'nvidia_drm'
бер 18 18:35:15 IdeaPad15ITL05 /usr/lib/gdm-x-session[4003]: (**) OutputClass "nvidia" ModulePath extended to "/usr/lib/nvidia/xorg,/usr/lib/xorg/modules,/usr/lib/xorg/modules"
бер 18 18:35:15 IdeaPad15ITL05 /usr/lib/gdm-x-session[4003]: (**) OutputClass "nvidia" ModulePath extended to "/usr/lib/nvidia/xorg,/usr/lib/xorg/modules,/usr/lib/nvidia/xorg,/usr/lib/xorg/modules,/usr/lib/xorg/modules"
бер 18 18:35:15 IdeaPad15ITL05 /usr/lib/gdm-x-session[4003]: (II) Applying OutputClass "nvidia" to /dev/dri/card1
бер 18 18:35:15 IdeaPad15ITL05 /usr/lib/gdm-x-session[4003]:         loading driver: nvidia
бер 18 18:35:15 IdeaPad15ITL05 /usr/lib/gdm-x-session[4003]: (II) Applying OutputClass "nvidia" to /dev/dri/card1
бер 18 18:35:15 IdeaPad15ITL05 /usr/lib/gdm-x-session[4003]:         loading driver: nvidia
бер 18 18:35:15 IdeaPad15ITL05 /usr/lib/gdm-x-session[4003]: (==) Matched nvidia as autoconfigured driver 1
бер 18 18:35:15 IdeaPad15ITL05 /usr/lib/gdm-x-session[4003]: (II) LoadModule: "nvidia"
бер 18 18:35:15 IdeaPad15ITL05 /usr/lib/gdm-x-session[4003]: (II) Loading /usr/lib/xorg/modules/drivers/nvidia_drv.so
бер 18 18:35:15 IdeaPad15ITL05 /usr/lib/gdm-x-session[4003]: (II) Module nvidia: vendor="NVIDIA Corporation"
бер 18 18:35:16 IdeaPad15ITL05 /usr/lib/gdm-x-session[4003]: (II) Applying OutputClass "nvidia" options to /dev/dri/card1
бер 18 18:35:16 IdeaPad15ITL05 /usr/lib/gdm-x-session[4003]: (II) Applying OutputClass "nvidia" options to /dev/dri/card1
бер 18 18:35:16 IdeaPad15ITL05 /usr/lib/gdm-x-session[4003]: (II) UnloadModule: "nvidia"
бер 18 18:35:16 IdeaPad15ITL05 /usr/lib/gdm-x-session[4003]: (II) Unloading nvidia
 ~  prime-run  glxinfo | grep server
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

As I understand this BadAlloc becomes on anything nvidia or prime related

only the intel-graphics is active by now. is envycontrol installed, if not

pamac install envycontrol

run

sudo envycontrol -s nvidia

reboot and repost the output of

echo $XDG_SESSION_TYPE && glxinfo | grep server

also check

systemctl status optimus-manager

So good news, I installed envycontrol, and now:

~  prime-run  glxinfo | grep server               
server glx vendor string: NVIDIA Corporation
server glx version string: 1.4
server glx extensions:
 ~  echo $XDG_SESSION_TYPE && glxinfo | grep server 
x11
server glx vendor string: NVIDIA Corporation
server glx version string: 1.4
server glx extensions:

And more importantly, nvidia-related apps now work well

But

 ~  systemctl status optimus-manager         
Unit optimus-manager.service could not be found.

Seems like I need somehow to enable it to have abiliti use intel for just desktop purposes?

no, everything is perfect. you don’t want optimus-manager in your case. case closed

Ok, will use EnvyControl to switch graphics

Thank You!