Announcement

Collapse
No announcement yet.

Kubuntu 26.04: Black screen after screen lock or display power off (Wayland, NVIDIA RTX 3070)

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Kubuntu 26.04: Black screen after screen lock or display power off (Wayland, NVIDIA RTX 3070)

    I upgraded from Kubuntu 25.10 to Kubuntu 26.04 LTS. Since the upgrade, my graphical session becomes unusable whenever the screen locks or the display powers off.

    System
    • Kubuntu 26.04 LTS
    • KDE Plasma 6.6.5
    • Wayland session
    • Linux kernel 7.0.0-27-generic
    • NVIDIA GeForce RTX 3070
    • NVIDIA driver 580.159.03
    Problem
    The issue occurs in at least these situations:
    • The screen locks (loginctl lock-session)
    • The display powers off after inactivity
    • Suspend also appears to trigger the same behavior
    Steps to reproduce
    1. Log into a Plasma Wayland session.
    2. Run:
      loginctl lock-session

      (or wait for the screen to lock/power off automatically.)
    3. Attempt to wake the session.
    Expected behavior
    The lock screen should appear and the session should be usable after entering the password.

    Actual behavior
    • The monitor wakes up to a black screen.
    • The mouse cursor is visible and can be moved.
    • Typing the password does not restore the session.
    • Ctrl+Alt+F2 (or another TTY) still works.
    • The system itself appears to remain running.
    Additional observations
    From a TTY, I tried:
    systemctl --user restart plasma-kwin_wayland.service

    This changed the display to what looked like the graphical login screen. The clock updated, the mouse worked, and I could type my password. However, pressing Enter caused the graphical interface to freeze completely.

    From another TTY I then tried:
    systemctl restart sddm

    After this, the screen became black with only a white cursor/underscore in the upper-left corner, and even switching to another TTY no longer worked. I had to power-cycle the machine.

    #2
    can you check if this happens on X11 too ?
    If X11 works normally,then your hardware is fine,Plasma itself is probably fine then the issue is almost certainly a Wayland/NVIDIA interaction.
    ʟɨռʊӼ ʄօʀ ʟɨʄɛ

    Comment


      #3
      Thanks for replying.

      Since Kubuntu 26.04 doesn't seem to include x11 by default anymore, I install it like this:

      sudo apt install plasma-session-x11

      With that done, logging in x11 worked, and as you suggested everything worked fine. So yeah, it seems like a problem with wayland/Nvidia. Still, I would like to fix it, I was using wayland on Kubuntu 25.10 and it worked fine, I could sleep, hybernate, etc, without the computer freezing.

      Do you have any advice on how to fix this in wayland?

      Comment


        #4
        Originally posted by Yamanqui View Post
        I was using wayland on Kubuntu 15.10 and it worked fine
        Pretty sure you meant 25.10.
        Windows no longer obstruct my view.
        Using Kubuntu Linux since March 23, 2007.
        "It is a capital mistake to theorize before one has data." - Sherlock Holmes

        Comment


          #5
          Originally posted by Snowhog View Post
          Pretty sure you meant 25.10.
          Yeah, sorry about that.

          Comment


            #6
            Check whether NVIDIA's suspend/resume services are enabled
            Code:
            systemctl status nvidia-suspend.service
            Code:
            systemctl status nvidia-resume.service
            Code:
            systemctl status nvidia-hibernate.service

            if any are disabled :
            Code:
            sudo systemctl enable nvidia-suspend.service
            Code:
            sudo systemctl enable nvidia-resume.service
            Code:
            sudo systemctl enable nvidia-hibernate.service

            Verify NVIDIA DRM settings
            Code:
            cat /sys/module/nvidia_drm/parameters/modeset
            Code:
            cat /sys/module/nvidia_drm/parameters/fbdev

            Both should ideally return: Y
            also check:
            Code:
            cat /proc/cmdline
            look for nvidia-drm.modeset=1 , If it's missing, that would be suspicious.

            try these 1st and report back pls
            ʟɨռʊӼ ʄօʀ ʟɨʄɛ

            Comment


              #7
              Thanks for your help is fixing this. Having to restart every time the computer goes to sleep is really annoying.

              Code:
              $ systemctl status nvidia-suspend.service
              ○ nvidia-suspend.service - NVIDIA system suspend actions
                   Loaded: loaded (/usr/lib/systemd/system/nvidia-suspend.service; enabled; preset: enabled)
                   Active: inactive (dead)
              
              $ systemctl status nvidia-resume.service
              ○ nvidia-resume.service - NVIDIA system resume actions
                   Loaded: loaded (/usr/lib/systemd/system/nvidia-resume.service; enabled; preset: enabled)
                   Active: inactive (dead)
              
              $ systemctl status nvidia-hibernate.service
              ○ nvidia-hibernate.service - NVIDIA system hibernate actions
                   Loaded: loaded (/usr/lib/systemd/system/nvidia-hibernate.service; enabled; preset: enabled)
                   Active: inactive (dead)
              They do seem to be enabled and inactive. I did try and run the instruction to enable them again, but that made no change.

              Code:
              $ sudo cat /sys/module/nvidia_drm/parameters/modeset
              Y
              
              $ sudo cat /sys/module/nvidia_drm/parameters/fbdev
              Y
              
              $ cat /proc/cmdline
              BOOT_IMAGE=/boot/vmlinuz-7.0.0-28-generic root=UUID=d0a71bf0-ec30-4553-972d-22b3f952a78a ro quiet splash resume=UUID=c61fa2a1-96b6-46c5-a632-96ac33d94132 nvidia.NVreg_PreserveVideoMemoryAllocations=1
              So there doesn't seem to be a nvidia-drm.modeset=1 there. But then I ran:

              Code:
              $ sudo cat /etc/modprobe.d/nvidia-graphics-drivers-kms.conf
              # This file was generated by nvidia-driver-580
              # Set value to 0 to disable modesetting
              options nvidia_drm modeset=1 fbdev=1
              
              # Preserve video memory on suspend/resume
              options nvidia NVreg_PreserveVideoMemoryAllocations=1
              options nvidia NVreg_TemporaryFilePath=/var
              And there the nvidia-drm.modeset=1 does appear. Not sure if that's good or bad.

              Once more, thanks for any help.​

              Comment


                #8
                ok all looks fine so far , next please test a new user account
                create :
                Code:
                sudo adduser waylandtest
                log out , and then log into waylandtest
                run
                Code:
                loginctl lock-session
                and see if problem the same?
                ʟɨռʊӼ ʄօʀ ʟɨʄɛ

                Comment


                  #9
                  That worked!

                  Not only did loginctl lock-session didn't send me to a black screen, I could log back in without issue and even managed to put the computer to sleep and wake it up without trouble.

                  So there's something in my user account that's messing up. Is there a way to find out what it is? or should I take the work to migrate all my stuff to a new account and delete the old one?

                  Comment


                    #10
                    unless there is a more targeted approach... you can always do this

                    Code:
                    # brute force troubleshooting...
                    mv ~/.config ~/.configBORKED
                    mv ~/.local ~/.localBORKED
                    # logout and log back in again to force plasma to recreate the folders with default settings
                    # open split views of the folders for comparison and file copy
                    dolphin --split ~/.config ~/.configBORKED
                    dolphin --split ~/.local ~/.localBORKED
                    # copy back half of the BORKED folder contents at a time and relog to see if issue returns
                    # if it does, then delete the folder again, relog, and only copy half of that previous half
                    # repeat until the culprit is found, then finally, copy back everything BUT that culprit bit
                    ​
                    some stuff i did: https://github.com/droidgoo

                    Intel® Core™ i7-14700K | 64 GiB of RAM | AMD RX 6800

                    Comment


                      #11
                      try these tests in order :after each test log out and back into your normal user and see if works.
                      1.
                      Code:
                      mv ~/.local/share/kscreen ~/.local/share/kscreen.backup
                      2.
                      Code:
                      mv ~/.config/kscreenlockerrc ~/.config/kscreenlockerrc.backup
                      3.
                      Code:
                      mv ~/.config/kwinrc ~/.config/kwinrc.backup
                      4.
                      Code:
                      rm -rf ~/.cache/kscreen*
                      Code:
                      rm -rf ~/.cache/plasma*
                      Code:
                      rm -rf ~/.cache/kwin*​
                      if at either one it's fixed ,no need to run other's then
                      Last edited by die.boer; Jul 19, 2026, 11:30 AM.
                      ʟɨռʊӼ ʄօʀ ʟɨʄɛ

                      Comment

                      Users Viewing This Topic

                      Collapse

                      There are 0 users viewing this topic.

                      Working...
                      X