Bug 1745055

Summary: Duplicate dead mouse cursor after locking
Product: [Fedora] Fedora Reporter: rdecker
Component: mutterAssignee: Ray Strode [halfline] <rstrode>
Status: CLOSED EOL QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 32CC: andjons, caillon+fedoraproject, chhudson, chris.zwilling, dane.elwell, fmuellner, gjm, gnome-sig, jadahl, jforbes, john.j5live, mclasen, normand, otaylor, philip.wyett, rhughes, rstrode, sgtsnookums, singedrabbit, walters
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-05-25 15:04:10 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
image of corrupted dead cursor
none
Video of stuck cursor none

Description rdecker 2019-08-23 14:18:22 UTC
Description of problem: Locking and unlocking session leave dead duplicate mouse cursor


Version-Release number of selected component (if applicable): 30


How reproducible: Use Gnome on Wayland


Steps to Reproduce:
1. Login to Gnome on Wayland using GDM
2. Lock the screen
3. Wait until monitors power off
4. Wake the screens using mouse or keyboard.
5. An extra dead mouse is now visible that will not disappear until logging off. The mouse appears as soon as your see the GDM unlock screen and stays after unlocking.

Actual results:
A duplicate dead mouse is left on the screen after the monitors wake up from power savings mode. The position of the dead cursor appears to relate to where the mouse was before the session was locked. 

Expected results:
Only one mouse cursor is present. 

Additional info:
I am running Fedora 30 on an AMD radeon RX550 using dual monitors. This only happens in a Gnome Wayland session. I am using Gnome on Xorg as a work around.

Comment 1 rdecker 2019-08-23 14:35:09 UTC
I see this message in the systemd journal after i unlock:

Aug 23 10:25:58 woodhouse.siena.edu gnome-shell[2010]: drmModeSetCursor2 failed with (Invalid argument), drawing cursor with OpenGL from now on

Please let me know what other information i can provide.

Comment 2 rdecker 2019-08-23 14:39:11 UTC
I tried to grab a screen capture to show the duplicate cursor but it does not appear visible after grabbing the whole screen in the screenshot utility. Also the duplicate cursor turns into an area of corruption after a while. I will upload a photo.

Comment 3 rdecker 2019-08-23 14:42:41 UTC
Created attachment 1607373 [details]
image of corrupted dead cursor

Here is an image of what happens to the dead 2nd cursor after a while. The working mouse cursor is to the right of the corrupted one.

Comment 4 Andreas Jonsson 2019-09-06 19:01:52 UTC
I'm also experiencing this. Dual monitors (one rotated, portrait right) on Wayland. Happens every time when waking up from sleep. AMD Vega 56 graphics card. Seems to be affecting Ubuntu 19.04 also: https://bugs.launchpad.net/ubuntu/+source/mutter/+bug/1841894

Comment 5 rdecker 2019-09-09 17:29:49 UTC
I'm going to move this over to mutter as that seems more applicable.

Comment 6 Chris Zwilling 2019-11-24 16:12:35 UTC
Fedora 31 here. I am also experiencing this. I have an AMD RX580 based graphics card with three monitors attached - two via display port and one via HDMI. All three monitors are in landscape mode.

Comment 7 AKhare 2019-12-29 06:01:42 UTC
Fedora 31 as well.  Threadripper, 64Gig of ram, 128G Nvme for primary drive, and Vega 56.  
had one crash, walked to kitchen for drink.  upon return screens were frozen with last thing being done.  ctrl-alt-fn keys were not responsive, keyboard Numlock light would not respond. I can see HD light blik from time to time.  Waited 10 minutes, then Power cycled. Upon restart "warning something happened", but nothing to report.  I would rather be able to archive this than delete the message.  my dnf installs that where were only half done downloading had complete and installed while screen was frozen. 

Consistently, and I have two old monitors an cintic.  When the monitors go to sleep.  Upon wake I have a ghost 2nd mouse cursor that just sits on the screen.    One time it did progress to corrupt memory blob.  You know the big fuzzy square.   Otherwise no new issues.   

Plan to check on OpenCL and try to get DaVinci Resolve to run.  Contact me if you have something you want me to gather.  

Rob

Comment 8 Dane 2020-04-06 11:27:32 UTC
Created attachment 1676571 [details]
Video of stuck cursor

I'm having the same issue on Fedora 32 Beta 1 (after also having the issue on Fedora 31). I have two DP monitors and one HDMI monitor in landscape mode on an AMD RX590 with standard open source drivers, using Gnome on Wayland.

Attached is a video showing the working cursor and stuck cursor.

I have not been able to find a way to clear the stuck cursor without rebooting.

Comment 9 Chris Zwilling 2020-04-18 20:56:36 UTC
I did a bit of digging today.

I can make it fail in Fedora 30. Fedora 29 *appears* to work fine.

Somewhere I read that this may be a problem with 'mutter'. 'Fedora 29 live' uses mutter version 3.30.1. 'Fedora 30 live' uses mutter 3.32.1.

Looking through the NEWS (changelog) for mutter between those two versions reveals the following on 3.32.1:
* Improve power-saving handling

I could be way off here but the problem does only seem to happen after the screens have gone to sleep.

Chris

Comment 10 Ben Cotton 2020-04-30 20:12:38 UTC
This message is a reminder that Fedora 30 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora 30 on 2020-05-26.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
Fedora 'version' of '30'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 30 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 11 rdecker 2020-05-05 16:10:29 UTC
This is still happening in Fedora 32. I will gladly provide whatever information is necessary to help resolve this. Is everyone affected using the AMDGPU driver?

Comment 12 Justin M. Forbes 2020-05-05 20:05:46 UTC
Adding myself to the cc list. Dual monitor amdgpu Radeon 560. Same message in the journal 'gnome-shell[28988]: Failed to set hardware cursor (drmModeSetCursor failed: Invalid argument), using OpenGL from now on'  I am happy to test any patches.

Comment 13 Andreas Jonsson 2020-05-09 19:27:44 UTC
Still the same issue on Fedora 32 for me aswell. I think that the common factors here are Gnome on Wayland, dual/multiple screens, AMDGPU and waking up from sleep. I haven't tried reproducing this without screen rotation. But installed Pop!_OS 20.04 last week on the same setup and with Wayland the double mouse cursor was there to. I wonder with three screens connected, would that end up with two dead mouse cursors?

Comment 14 sgtsnookums 2020-06-02 12:57:29 UTC
I'm also seeing this issue. I've got two screens (no rotation), AMDGPU, and it happens when unblanking my screens, but unlike previous reports, I'm seeing it on KDE in Fedora 32 instead of Gnome.

Comment 15 Chris Hudson 2020-07-28 14:00:30 UTC
Same issue here in Fedora 32:

---
$ xrandr --listmonitors
Monitors: 2
 0: +XWAYLAND9 1920/520x1080/290+3072+343  XWAYLAND9
 1: +XWAYLAND11 3072/600x1728/340+0+0  XWAYLAND11
---

NOTE: Monitor 1 is using wayland fractional scaling and is set to 125%.

---
$ gsettings get org.gnome.mutter experimental-features
['scale-monitor-framebuffer']
---

Same error as reported by others shown in the journal
---
$ sudo journalctl | grep "Failed to set hardware cursor"
Journal file /var/log/journal/079ec77be0b642d494da8ae3d48984f9/user-83400008~ is truncated, ignoring file.
Jun 22 11:35:55 paddys gnome-shell[4723]: Failed to set hardware cursor (drmModeSetCursor failed: Invalid argument), using OpenGL from now on
Jun 22 21:02:44 paddys gnome-shell[2156]: Failed to set hardware cursor (drmModeSetCursor failed: Invalid argument), using OpenGL from now on
Jun 25 15:56:10 paddys gnome-shell[142626]: Failed to set hardware cursor (drmModeSetCursor failed: Invalid argument), using OpenGL from now on
Jul 22 11:40:11 paddys gnome-shell[2300753]: Failed to set hardware cursor (drmModeSetCursor failed: Invalid argument), using OpenGL from now on
Jul 26 14:54:58 paddys gnome-shell[2205]: Failed to set hardware cursor (drmModeSetCursor failed: Invalid argument), using OpenGL from now on
Jul 27 09:26:02 paddys gnome-shell[2223]: Failed to set hardware cursor (drmModeSetCursor failed: Invalid argument), using OpenGL from now on
---

NOTE: This typically happens to me when unlocking - this workstation stays on most of the time and I lock it when not in use via super+L

AMD GPU here as well:
---
$ lspci
00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) Root Complex
00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) I/O Memory Management Unit
00:01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-1fh) PCIe Dummy Host Bridge
00:01.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) PCIe GPP Bridge
00:01.3 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) PCIe GPP Bridge
00:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-1fh) PCIe Dummy Host Bridge
00:03.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-1fh) PCIe Dummy Host Bridge
00:03.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) PCIe GPP Bridge
00:03.3 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) PCIe GPP Bridge
00:04.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-1fh) PCIe Dummy Host Bridge
00:07.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-1fh) PCIe Dummy Host Bridge
00:07.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) Internal PCIe GPP Bridge 0 to Bus B
00:08.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-1fh) PCIe Dummy Host Bridge
00:08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) Internal PCIe GPP Bridge 0 to Bus B
00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev 59)
00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev 51)
00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) Data Fabric: Device 18h; Function 0
00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) Data Fabric: Device 18h; Function 1
00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) Data Fabric: Device 18h; Function 2
00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) Data Fabric: Device 18h; Function 3
00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) Data Fabric: Device 18h; Function 4
00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) Data Fabric: Device 18h; Function 5
00:18.6 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) Data Fabric: Device 18h; Function 6
00:18.7 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) Data Fabric: Device 18h; Function 7
01:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM951/PM951 (rev 01)
02:00.0 USB controller: Advanced Micro Devices, Inc. [AMD] 400 Series Chipset USB 3.1 XHCI Controller (rev 01)
02:00.1 SATA controller: Advanced Micro Devices, Inc. [AMD] 400 Series Chipset SATA Controller (rev 01)
02:00.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] 400 Series Chipset PCIe Bridge (rev 01)
03:00.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] 400 Series Chipset PCIe Port (rev 01)
03:01.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] 400 Series Chipset PCIe Port (rev 01)
03:04.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] 400 Series Chipset PCIe Port (rev 01)
03:06.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] 400 Series Chipset PCIe Port (rev 01)
03:07.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] 400 Series Chipset PCIe Port (rev 01)
04:00.0 Ethernet controller: Intel Corporation I211 Gigabit Network Connection (rev 03)
08:00.0 Network controller: Broadcom Inc. and subsidiaries BCM4360 802.11ac Wireless Network Adapter (rev 03)
09:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon RX 470/480/570/570X/580/580X/590] (rev e7)
09:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere HDMI Audio [Radeon RX 470/480 / 570/580/590]
0a:00.0 Non-Volatile memory controller: Silicon Motion, Inc. Device 2262 (rev 03)
0b:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc. [AMD] Zeppelin/Raven/Raven2 PCIe Dummy Function
0b:00.2 Encryption controller: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) Platform Security Processor
0b:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) USB 3.0 Host Controller
0c:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc. [AMD] Zeppelin/Renoir PCIe Dummy Function
0c:00.2 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] (rev 51)
0c:00.3 Audio device: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) HD Audio Controller
---

Glad to provide more info where needed.

Comment 16 Fedora Program Management 2021-04-29 15:56:55 UTC
This message is a reminder that Fedora 32 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora 32 on 2021-05-25.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
Fedora 'version' of '32'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 32 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 17 Ben Cotton 2021-05-25 15:04:10 UTC
Fedora 32 changed to end-of-life (EOL) status on 2021-05-25. Fedora 32 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.