KDE Plasma freeze when I use Screen Edges (KWin hang regression)

exactly. And with video-linux there is no problem as well. I already tried optimus-manager one again but with nvidia the freeze happens. I am stuck. =(

tried without success.

edit 1: it looks a regression envolving KWin. If I turn off compositor (ALt + Shift F12), the problem gone.

edit 2: look at comment #28. A guy has already patched. Should I talk with him (ask permittion) and with @philm to include it on Manjaro?

1 Like

that definitely looks like the issue, and it seems to only effect optimus systems.

you could create a new post including all relevant info and see if @philm or someone else can implement the patch. im not exactly sure how that process works but alerting the manjaro team seems like a good first step. nice job finding that. :+1:

1 Like

@FVGuilherme In the meantime, you can use kwin-lowlatency https://aur.archlinux.org/packages/kwin-lowlatency
https://github.com/tildearrow/kwin-lowlatency

it fixes the issues for me (intel iGPU & Nvidia PCIe)

1 Like

thank you. I already has asked permission to send the patch to @philm. I am waiting an answer.

that doesn't fix to me. :confused:

Just so you can have a look at the configuration which resolved it for me:

kernel 5.0.x with Nvidia 418/430, plasma fw 5.58, kwin-lowlatency 5.15.6

With settings:

Display > Compositor > Vsync = Never, rest is default

nvidia-settings > OpenGL > Sync to Vblank = Off, Allow flipping = On

Force composition pipeline in Xorg. (NOT FULL)

No tripple buffering, no exports, no glitches. Better than it ever has been.

mine nvidia-settings doesn't shows that options...

It's under Advanced in X server settings but you need it written in your xorg.conf

$ nvidia-settings --assign CurrentMetaMode="nvidia-auto-select +0+0 { ForceCompositionPipeline = On }"

/etc/X11/xorg.conf.d/nvidia.conf

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    Option         "metamodes" "nvidia-auto-select +0+0 {ForceCompositionPipeline=On}"

looks like my dGPU (MX150) doesn't has VDPAU support or something like that.

I tried this, but no success.

I have test this and I can confirm that disable nvidia_drm modeset has made the freeze stop. My machine still looks faster, by the way. What I have done:

Open sudo nano /etc/modprobe.d/nvidia-drm.conf and changed options nvidia_drm modeset=1 from options nvidia_drm modeset=0.

edit 1: I can't tell if it works with kwin because I am using kwin-lowlatency.

im curious to see how thats working with a prime setup. can you post some output after having nvidia drm modeset disabled
inxi -Gxxxz
glxinfo | grep -i vendor

1 Like

I have just noticed you're using kernel 5.1.4. I was getting hangs with it as well, regardless of drm.config. If you switch to 5.0.x it should work. kwin-lowlatency is written and observed on kernel 5.0.x. It doesn't mean it won't work on other kernels, but it will work best as intended.

1 Like

$ inxi -Gxxxz
Graphics: Device-1: Intel UHD Graphics 620 vendor: Lenovo driver: i915 v: kernel bus ID: 00:02.0 chip ID: 8086:5917
Device-2: NVIDIA GP108M [GeForce MX150] vendor: Lenovo driver: nvidia v: 418.74 bus ID: 01:00.0 chip ID: 10de:1d10
Display: x11 server: X.Org 1.20.4 driver: modesetting,nvidia compositor: kwin_x11 resolution: 1366x768~60Hz
OpenGL: renderer: GeForce MX150/PCIe/SSE2 v: 4.6.0 NVIDIA 418.74 direct render: Yes

$ glxinfo | grep -i vendor
server glx vendor string: NVIDIA Corporation
client glx vendor string: NVIDIA Corporation
OpenGL vendor string: NVIDIA Corporation

I have tried with 4.19.x-LTS, 5.0.x and 5.1.x. I faced the problem with all of them.

I will try with this, after disable nvidia drm.

if you had tried already and it didn't work, don't try again :smiley:

As a rule of thumb, never fix something that works.

guess what? Freeze is gone with 5.1.x and 4.19.x-LTS but not with 5.0.x. lol

there has been an issue with Mesa with both kwin and kwin-latency that doesn't affect everyone, therefore is very difficult to pin down. It's with the driver itself but if you have found your Nirvana, stick with it :slight_smile:

1 Like

from what i understand, nvidia_drm modeset=1 is needed for proper function. in the past people had issues and instead of disabling drm modeset, adding the nvidia modules to
/etc/mkinitcpio.conf

MODULES="intel_agp i915 nvidia nvidia_modeset nvidia_uvm nvidia_drm"

and add nvidia_drm.modeset=1 to grub command line instead of an option line in /etc/modprobe.d/*.conf

edit /etc/default/grub and add this to CMDLINE_LINUX

GRUB_CMDLINE_LINUX_DEFAULT="nvidia_drm.modeset=1 <other parameters>

sudo mkinitcpio -P
sudo update-grub

if you run into issues (tearing,lockups,hangs,etc..) with it disabled as you have it now, give that a try instead.

1 Like

great tip, but still there is aliasing. I think that I can live without edges for now (I am wasting too many time trying to fix that lol). Thanks a lot for the help!

so, just to confirm, using nvidia_drm modeset=0 breaks anti-aliasing and/or vsync?

no problem.

1 Like