Skip to content

modesetting driver with TearFree breaks alongside the nvidia proprietary DDX driver #1588

Open

Description

@stefan11111

Select the version

Git master branch

Describe your issue

Title says it all.
Here's my xorg.conf:

# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig:  version 525.147.05

Section "ServerLayout"
    Identifier     "Layout0"
#intel gpu
    Screen      0  "Screen0"
#nvidia gpu
    Screen      1  "Screen1"
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/input/mice"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Unknown"
    Option         "DPMS"
    Option         "Primary" "TRUE"
    Option         "Position" "0 0"
EndSection

Section "Monitor"
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "Unknown"
    Option         "DPMS"
    Option         "Position" "0 0"
#    Option         "Primary" "FALSE"
#    Option         "Rightof" "Monitor0"
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "modesetting"

#    Option         "GlxVendorLibrary" "nvidia"
    Option         "kmsdev" "/dev/dri/card0"

    Option         "AccelMethod" "glamor"
    Option         "SWcursor" "false"
#    Option         "CursorSize" "64x32"
#    Option         "ShadowFB" "false"
#    Option         "DoubleShadow" "true"
#    Option         "PageFlip" "true"
    Option         "Atomic" "true"
    Option         "TearFree" "true"

    VendorName     "Intel"
EndSection

Section "Device"
    Identifier     "Device1"
    Driver         "nvidia"
#    Driver         "modesetting"

    Option         "GlxVendorLibrary" "nvidia"
    Option         "kmsdev" "/dev/dri/card1"

    Option         "AccelMethod" "glamor"
    Option         "SWcursor" "false"
#   Option         "ShadowFB" "false"
#   Option         "DoubleShadow" "true"
    Option         "Atomic" "true"
    Option         "TearFree" "false"

    VendorName     "NVIDIA Corporation"
    BusID          "PCI:1:0:0"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
EndSection

Section "Screen"
    Identifier     "Screen1"
    Device         "Device1"
    Monitor        "Monitor1"
EndSection

If I use it like this and start an accelerated proton game like Genshin Impact, everything freezes.
If I change the config above so that both cards are driven by the modesetting driver, everything works.

This a a bug that has been happening since TearFree was added to Xorg.

Does anyone have any idea why this breaks is this way?
@metux @ONykyf @cepelinas9000 @notbabaisyou @X11Libre/dev ping

Steps to reproduce

.

What did you expect?

.

Additional Information

.

Extra fields

Activity

  1. added
    bugSomething isn't working
    needs-triageThis needs to be reviewed and categorized.
    on Dec 6, 2025
  2. self-assigned this
    on Dec 6, 2025
  3. Frontrider commented on Dec 9, 2025

    @Frontrider

    I get 17fps in factorio now, before it was a solid 60 with the same set of mods.
    Deep rock galactic with steam+proton has occasional lagspikes when changing screens. (going from one menu to another, going down to 6 from 4-500+)
    Steam is also very slow to process shaders, that may also provide insight.

    I swapped xorg to xlibre on a manjaro system and that is the single thing that changed between it working fine and it not working with proprietary drivers. I would consider testing xlibre with that as well, because it was very easy to swap the two, and the driver manager is one of the best ones out there.

    I have a 4090, so this freeze might be the same symptom as my loss in fps if the other card is weaker. IF there is nothing I can check to debug it then I'll have to change back, because I am recording on this pc and that framerate won't work.

    I also use 2 of the exact same brand of monitors so I can't have any framerate issues from varying rates.

  4. Frontrider commented on Dec 9, 2025

    @Frontrider

    I have a second older pc with a gtx 1600, if I know what to put on it then I could set up a "relative benchmark" on it for performance.

  5. stefan11111 commented on Dec 9, 2025

    @stefan11111
    ContributorAuthor

    @Frontrider I doubt you are hitting this bug.
    This is about the nvidia proprietary DDX not playing nicely with the modesetting driver if that one is driving a, integrated gpu on a laptop, and TearFree is used.
    This bug is here since the TearFree option was added to Xorg.

    Still, the bug you are describing should be investigated.
    Can you post your config and logs?
    Are you using Xlibre master, or a release?
    Is the performance regression you encountered reproducible?
    When you switch back to Xorg, it disappears, and when you switch back to Xlibre, it reappears?
    What drivers are you using, and most importantly, what ddx driver? modesetting? nvidia?
    Did you use the Xlibre modules when using Xlibre, compiled against the Xlibre headers?

    I have a gtx 1050 on my desktop and a gtx 1660 on my laptop, and I experienced no such regressions.
    I think @cepelinas9000 has a newer nvidia card. @cepelinas9000, have you experienced anything like this?

  6. cepelinas9000 commented on Dec 9, 2025

    @cepelinas9000
    Contributor

    @Frontrider it sounds like you uninstalled nvidia drivers and use software rendering (probably you uninstalled nvidia xorg driver - which in turn uninstalls kernel module). Please provide config and logs.

    I'm am on xlibre master: I experienced stutters on moving vulkan drivers, but it was nvidia driver fault

    @Frontrider could you post glxinfo -B

  7. Frontrider commented on Dec 10, 2025

    @Frontrider

    @Frontrider it sounds like you uninstalled nvidia drivers and use software rendering (probably you uninstalled nvidia xorg driver - which in turn uninstalls kernel module). Please provide config and logs.

    I'm am on xlibre master: I experienced stutters on moving vulkan drivers, but it was nvidia driver fault

    @Frontrider could you post glxinfo -B

    After more digging, I think mine is this. Switching back to xorg until it is fixed, and I'll also provide more details on my setup there. I may have a setup xlibre did not encountere yet.
    #938

  8. stefan11111 commented on Dec 10, 2025

    @stefan11111
    ContributorAuthor

    After more digging, I think mine is this. Switching back to xorg until it is fixed, and I'll also provide more details on my setup there. I may have a setup xlibre did not encountere yet. #938

    Are you using a virtual machine?

  9. Frontrider commented on Dec 10, 2025

    @Frontrider

    After more digging, I think mine is this. Switching back to xorg until it is fixed, and I'll also provide more details on my setup there. I may have a setup xlibre did not encountere yet. #938

    Are you using a virtual machine?

    I'm on manjaro, and I just ran the install script baremetal.
    Going to be the driver as cepelinas9000 stated. I feel like I'm trolling this thread because I misread something on my system, and I don't want that.

  10. andersrh commented on Apr 30, 2026

    @andersrh

    What if tearfree is disabled on the GPU using the modesetting driver, does it then work?

  11. moved this to In progress in Bug Fixingon Jun 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

  • Status
    In progress

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions