Tearing with nvidia free/nouveau driver

Hi,

this is my first post here, so I am trying to do it right.

Introstory: Please correct me if I forgot something. I´ve got a nvidia 340xx and the update killed my non-free driven manjaro. After three days of tinkering I installed the newest KDE Manjaro with free drivers now.

Problem: I experience constant tearing and would like to know if I could do something a against it.

   System:
  Kernel: 5.9.16-1-MANJARO x86_64 bits: 64 compiler: gcc v: 10.2.0 
  parameters: BOOT_IMAGE=/boot/vmlinuz-5.9-x86_64 
  root=UUID=76df27f9-68a5-4e17-9d4e-34c050b610db ro quiet apparmor=1 
  security=apparmor resume=UUID=50da7c9d-0642-4098-9062-047fc4a3307a 
  udev.log_priority=3 
  Desktop: KDE Plasma 5.20.4 tk: Qt 5.15.2 wm: kwin_x11 dm: SDDM 
  Distro: Manjaro Linux 
Machine:
  Type: Laptop System: Hewlett-Packard product: HP EliteBook 8540w v: N/A 
  serial: <filter> Chassis: type: 10 serial: <filter> 
  Mobo: Hewlett-Packard model: 1521 v: KBC Version 32.2E serial: <filter> 
  BIOS: Hewlett-Packard v: 68CVD Ver. F.07 date: 03/26/2010 
CPU:
  Info: Quad Core model: Intel Core i7 Q 720 bits: 64 type: MT MCP 
  arch: Nehalem family: 6 model-id: 1E (30) stepping: 5 microcode: A 
  L2 cache: 6 MiB 
  flags: lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 bogomips: 25545 
  Speed: 931 MHz min/max: 933/1600 MHz boost: enabled Core speeds (MHz): 
  1: 931 2: 931 3: 931 4: 931 5: 931 6: 931 7: 931 8: 931 
  Vulnerabilities: Type: itlb_multihit status: KVM: VMX unsupported 
  Type: l1tf mitigation: PTE Inversion 
  Type: mds 
  status: Vulnerable: Clear CPU buffers attempted, no microcode; SMT vulnerable 
  Type: meltdown mitigation: PTI 
  Type: spec_store_bypass 
  mitigation: Speculative Store Bypass disabled via prctl and seccomp 
  Type: spectre_v1 
  mitigation: usercopy/swapgs barriers and __user pointer sanitization 
  Type: spectre_v2 mitigation: Full generic retpoline, IBPB: conditional, 
  IBRS_FW, STIBP: conditional, RSB filling 
  Type: srbds status: Not affected 
  Type: tsx_async_abort status: Not affected 
Graphics:
  Device-1: NVIDIA GT215GLM [Quadro FX 1800M] vendor: Hewlett-Packard 
  driver: nouveau v: kernel bus ID: 01:00.0 chip ID: 10de:0cbc 
  Device-2: Chicony HP Webcam [2 MP Macro] type: USB driver: uvcvideo 
  bus ID: 1-1.5:5 chip ID: 04f2:b15e 
  Display: x11 server: X.Org 1.20.10 compositor: kwin_x11 driver: nouveau 
  unloaded: modesetting alternate: fbdev,nv,vesa display ID: :0 screens: 1 
  Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x285mm (20.0x11.2") 
  s-diag: 582mm (22.9") 
  Monitor-1: LVDS-1 res: 1920x1080 hz: 60 dpi: 142 size: 344x193mm (13.5x7.6") 
  diag: 394mm (15.5") 
  OpenGL: renderer: NVA3 v: 3.3 Mesa 20.3.1 direct render: Yes 
Audio:
  Device-1: Intel 5 Series/3400 Series High Definition Audio 
  vendor: Hewlett-Packard driver: snd_hda_intel v: kernel bus ID: 00:1b.0 
  chip ID: 8086:3b56 
  Device-2: NVIDIA High Definition Audio vendor: Hewlett-Packard 
  driver: snd_hda_intel v: kernel bus ID: 01:00.1 chip ID: 10de:0be4 
  Sound Server: ALSA v: k5.9.16-1-MANJARO 
Network:
  Device-1: Intel 82577LM Gigabit Network vendor: Hewlett-Packard 
  driver: e1000e v: kernel port: 6000 bus ID: 00:19.0 chip ID: 8086:10ea 
  IF: enp0s25 state: down mac: <filter> 
  Device-2: Intel Centrino Ultimate-N 6300 driver: iwlwifi v: kernel 
  port: 5000 bus ID: 44:00.0 chip ID: 8086:4238 
  IF: wlo1 state: up mac: <filter> 
Drives:
  Local Storage: total: 465.76 GiB used: 8.26 GiB (1.8%) 
  SMART Message: Unable to run smartctl. Root privileges required. 
  ID-1: /dev/sda maj-min: 8:0 vendor: Seagate model: ST9500420AS 
  size: 465.76 GiB block size: physical: 512 B logical: 512 B speed: 3.0 Gb/s 
  serial: <filter> rev: HPM1 
Partition:
  ID-1: / raw size: 457.45 GiB size: 449.27 GiB (98.21%) used: 8.26 GiB (1.8%) 
  fs: ext4 dev: /dev/sda1 maj-min: 8:1 
Swap:
  Kernel: swappiness: 60 (default) cache pressure: 100 (default) 
  ID-1: swap-1 type: partition size: 8.31 GiB used: 0 KiB (0.0%) priority: -2 
  dev: /dev/sda2 maj-min: 8:2 
Sensors:
  System Temperatures: cpu: 42.0 C mobo: 0.0 C gpu: nouveau temp: 47.0 C 
  Fan Speeds (RPM): N/A 
Info:
  Processes: 217 Uptime: 15m wakeups: 2 Memory: 3.78 GiB 
  used: 1.29 GiB (34.2%) Init: systemd v: 247 Compilers: gcc: N/A Packages: 
  pacman: 1249 lib: 397 flatpak: 0 Shell: Bash v: 5.1.0 running in: konsole 
  inxi: 3.2.01 

Thank you for the help.

Hello @ratatosk :wink:

Since you use KDE, i would guess the the issue are the desktop effects. Try to disable them.

There is not much you can change on the nouveau driver through xorg options, but you can try to enable and disable different Options and see if it get solved.

Create file called 20-nouveau.conf in /etc/X11/xorg.conf.d/:

sudo nano /etc/X11/xorg.conf.d/20-nouveau.conf

The put this into it:

Section "Device"
    Identifier "Device0"
    Driver "nouveau"
    Option "HWCursor" "true"
    Option "AccelMethod" "exa"
    Option "NoAccel" "false"
    Option "ShadowFB" "false"
    Option "WrappedFB" "false"
    Option "GLXVBlank" "true"
    #Option "ZaphodHeads" "VGA-0"
    Option "PageFlip" "true"
    Option "SwapLimit" "1"
    Option "DRI" "2"
EndSection

:arrow_up: These are the default options.

Change them and test which works for you. Possible that you will be greeted with a black screen, so have a manjaro boot disk ready to fix this, if TTY also not works.

man nouveau will show you a manual and explanations of the options.

Beside that… reclocking does not work with nouveau mostly. There is a patch for kepler for reclocking, but thats all. Anything above kepler, has no reclocking feature and therefore it will be always run on the base clock and not clock up. This is because NVIDIA signed their firmware since then…

Sometimes it is possible to set the p-states for reclocking manually, but it will all the time then on “performence” until you changed it manually and not to forget… it is buggy. You are on you own there.

https://nouveau.freedesktop.org/PowerManagement.html

https://nouveau.freedesktop.org/CodeNames.html

Thank you very much for your informative answer. Disabling desktop effects didn´t work. As a non-techie with spare time resources, I will not try this on my own. I know that there would be many people who probably need a working solution and benefit from my possible success, but I spend the last three days haggling with the current drop of nvidia 340xx drivers. I even had to install manjaro anew and will try out phillims solution posted here:

or downgrade to an older kernel,
or install a different Distro like Kubuntu. (Even considering this, is hurting myself as much as it is probably hurting any reader here :disappointed_relieved:)

Just a thought:
Is this AUR (en) - nvidia-340xx the packed Version of this?

As a non-techie, I ask my self why phillims proposal of adding the 340x drivers isn´t implemented as a simple one-cklick-solution somewhere. I think that would benefit many people.

Try if changing in System Settings → Display to XRender makes a difference.
Restarting system may be necessary for the changes to take real effect.

You can also change “tearing prevention (VSync)” to automatic.

Thanks. It did help a little, but I.e. stellaris freezes when loading the game by 75%.

I´ve upgraded my 4 GB Ram to 8 GB Ram. I also bootet into an older kernel and after that the tearing is gone and now the game runs (it crashes in some parts though). I am not sure what exactly was the cause for it working now, for I, unbeknownst to me, automatically bootet into the newer kernel an everything worked ok as well. So if someone has a same problem try booting into an older kernel, and then booting back, or upgrade your ram if possible. Something of these could work.

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.