All of my games are running poorly after NVIDIA driver update

I updated my NVIDIA drivers yesterday, and now my games are running poorly. I tried on multiple games, and both are either lagging or stuttering. I tried using a different version of Proton, and that didn’t work either. I tried restoring to a different btrfs snapshot and updating it again, to see if it didn’t update correctly. That didn’t work either. Can someone help?

Inxi --graphics output:

Graphics:
  Device-1: Intel CoffeeLake-H GT2 [UHD Graphics 630] driver: i915 v: kernel
  Device-2: NVIDIA GP106M [GeForce GTX 1060 Mobile] driver: nvidia
    v: 525.89.02
  Device-3: Microdia Integrated_Webcam_HD type: USB driver: uvcvideo
  Display: wayland server: X.org v: 1.21.1.7 with: Xwayland v: 22.1.8
    compositor: kwin_wayland driver: X: loaded: intel,nvidia
    unloaded: modesetting dri: i965 gpu: i915,nvidia resolution: 1920x1080
  API: OpenGL v: 4.6 Mesa 22.3.4 renderer: Mesa Intel UHD Graphics 630 (CFL
    GT2)

This is rendering on Intel currently. Is this a hybrid laptop? Do you switch graphics? Do you run Nvidia graphics on games?

It’s a gaming laptop. It has a dedicated GPU and an integrated one. I have no use for the integrated one so I don’t use it.

If it’s running on the integrated GPU, that shouldn’t be happening. How would I switch to the NVIDIA GPU?

Is there settings in the UEFI (Bios) Firmware to set it to Dedicated, Integrated or Hybrid and use optimus-manager to switch back & forth?

I honestly don’t know. I don’t see a setting that shows where I can change it. And I don’t think I have optimus

Did you check the UEFI Firware (Bios) settings for graphics settings?

If you have package xf86-video-intel installed, you can try uninstalling it.
And, if you don’t want to use the Intel GPU, you can blacklist the i915 Intel driver with a kernel parameter or a suitable file in /etc/modprobe.d.

Sorry for the late response. I looked all over the UEFI settings menu, and I didn’t see anything

I’m not sure how to do that. I read that you have to add blacklist i915 to some file called /etc/modprobe.d/blacklist, but I can’t find that file

You’re almost there!
Simply create (or use existing) file /etc/modprobe.d/blacklist.conf and write the blacklist line there. For example, use command

sudo nano /etc/modprobe.d/blacklist.conf

More info: https://wiki.archlinux.org/title/Kernel_module#Blacklisting

I just tried this, and my inxi --graphics output is still the same:

Graphics:
  Device-1: Intel CoffeeLake-H GT2 [UHD Graphics 630] driver: i915 v: kernel
  Device-2: NVIDIA GP106M [GeForce GTX 1060 Mobile] driver: nvidia
    v: 525.89.02
  Device-3: Microdia Integrated_Webcam_HD type: USB driver: uvcvideo
  Display: wayland server: X.org v: 1.21.1.7 with: Xwayland v: 22.1.8
    compositor: kwin_wayland driver: X: loaded: modesetting dri: iris
    gpu: i915,nvidia resolution: 1920x1080
  API: OpenGL v: 4.6 Mesa 22.3.5 renderer: Mesa Intel UHD Graphics 630 (CFL
    GT2)

Lets check it.

cat /etc/modprobe.d/blacklist.conf

So, great news(sarcasm), I was told by the arch wiki that you can blacklist it from grub, and my idiotic ass tried doing that. Now my system is stuck on this

I think I might have to reinstall…

So, I can’t access my system right now to type that, but I can tell you what I remember typing:

blacklist i915

Just switch to a tty and you should be able to get back into the grub command line or what ever you need to do?

Edit: Just remember if you change something in /etc/default/grub you have to update grub with
sudo grub-mkconfig -o /boot/grub/grub.cfg

That’s what I did. I added something to /etc/default/grub, ran the mkconfig command, rebooted, and my system was just like that.

Would switching to a TTY be possible at this point?

Should be able to try it.

What did you add?

Edit: Should be this i think?

module_blacklist=i915

I read something on the arch wiki saying you were supposed to add module_blacklist=<module> to that file. So I did that with the i915 module.

Reading it again, it says you’re supposed to type that into the grub command line.

Oh wait, did I actually do that correctly?

It has to be in the grub command line in /etc/default/grub and in the line that has everything already there.

Edit: This is the line you have to add it to with space between other entries. You may have other entries also. This is an example:

GRUB_CMDLINE_LINUX_DEFAULT='nowatchdog nvme_load=YES amd_pstate=passive loglevel=3'