After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 746078 - invisible mouse cursor in wayland login-screen when in VM
invisible mouse cursor in wayland login-screen when in VM
Status: RESOLVED NOTGNOME
Product: gnome-shell
Classification: Core
Component: login-screen
3.15.x
Other Linux
: Normal normal
: ---
Assigned To: Ray Strode [halfline]
gnome-shell-maint
Depends on:
Blocks:
 
 
Reported: 2015-03-12 09:17 UTC by Lukas Brabec
Modified: 2015-05-12 18:39 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Force cursor update after applying configuration (8.88 KB, patch)
2015-05-11 21:06 UTC, Ray Strode [halfline]
reviewed Details | Review

Description Lukas Brabec 2015-03-12 09:17:41 UTC
GDM in virtual machine (virt-manager) doesn't show mouse cursor (but works and can blindly click). This is dependent on virtual machine configuration. If tablet hardware (EvTouch USB Graphics Tablet) is present cursor is not shown. If tablet hw is removed from virtual machine, GDM and mouse works as expected.
Virt-manager adds tablet if Linux and Fedora is selected when creating new virtual machine. If generic is used, no tablet hw is added.


gdm-3.15.91.2-1.fc22.x86_64

virt-manager-1.1.0-4.git310f6527.fc21.noarch
libvirt-*-1.2.9.2-1.fc21.x86_64


Steps to Reproduce:
1. create virtual machine (explicitly select Linux and Fedora) with Fedora
2. boot/logout to see GDM
3. no mouse cursor is shown
Comment 1 Lukas Brabec 2015-03-12 09:18:44 UTC
Fedora downstream report: https://bugzilla.redhat.com/show_bug.cgi?id=1200901
Comment 2 Ray Strode [halfline] 2015-03-24 18:21:04 UTC
if you set WaylandEnable=false in [daemon] section of /etc/gdm/custom.conf does the problem go away?

I assume this is a side-effect of mutter not supporting tablets in wayland yet.
Comment 3 Lukas Brabec 2015-03-25 09:20:43 UTC
yep, with WaylandEnable=false set in /etc/gdm/custom.conf the problem goes away, cursor is shown and works.
Comment 4 Ray Strode [halfline] 2015-03-25 13:31:11 UTC
cursor visibility handling was moved from g-s-d to mutter in 3.15.92 so it's behavior may have changed. do you still see this problem with the latest updates?
Comment 5 Lukas Brabec 2015-03-26 13:53:39 UTC
Yep, the problem is still there.

gnome-settings-daemon-3.15.92-1.fc22.x86_64
mutter-3.15.92-2.fc22.x86_64
gdm-3.15.92-1.fc22.x86_64
Comment 6 Kamil Páral 2015-03-26 14:50:33 UTC
> I assume this is a side-effect of mutter not supporting tablets in wayland yet.

This might not be absolutely clear from the description, but the mouse cursor actually *works*, it's just invisible. You can still click on buttons. So the tablet device seems to work fine, but the cursor is simply not rendered.

This might be not relevant, but I wanted to highlight it, just in case.
Comment 7 Kamil Páral 2015-03-30 08:07:30 UTC
Ray, it seems neither I nor Lukas are able to unset the NEEDINFO status. Not sure if that's intentional or a misconfiguration in the new version of gnome bugzilla.
Comment 8 Ray Strode [halfline] 2015-03-30 13:41:49 UTC
dunno, i'll fix status
Comment 9 Rui Matos 2015-03-31 15:05:08 UTC
Unsure what's going on here. Even just running a plain X server doesn't show the cursor. Can anyone else confirm this? Here's what I did:

0) systemctl stop gdm.service

1) create a ~/.xinitrc with

xterm &
exec twm

2) run 'startx -- -retro'

which should show a cursor but doesn't.
Comment 10 Lukas Brabec 2015-04-01 13:27:33 UTC
(In reply to Rui Matos from comment #9)

I cannot confirm this, mouse is shown as expected.
Comment 11 Jasper St. Pierre (not reading bugmail) 2015-04-01 19:11:11 UTC
What system are you using for video in the VM? qxl? VGA? Cirrus?
Comment 12 Lukas Brabec 2015-04-02 07:32:48 UTC
I'm using qxl with spice.
Comment 13 Lukas Brabec 2015-04-02 09:18:34 UTC
I tried this with VGA with the same result as QXL - no mouse cursor shown. However, VM with VMVGA shows mouse cursor.
Comment 14 Kamil Páral 2015-05-11 11:34:02 UTC
Please note that this is going to affect Fedora 22 release unless it is fixed really soon. Users won't be able to interact with GDM using a mouse at all, if they run Fedora 22 in a VM.
Comment 15 Ray Strode [halfline] 2015-05-11 21:06:07 UTC
Created attachment 303235 [details] [review]
Force cursor update after applying configuration

The qxl kms driver has a bug where the cursor gets hidden
implicitly after a drmModeSetCrtc call.

This commit works around the bug by forcing a drmModeSetCursor2
call after the drmModeSetCrtc call.
Comment 16 Rui Matos 2015-05-12 11:08:39 UTC
Review of attachment 303235 [details] [review]:

This looks ok as a downstream work around but I don't think we should take it upstream, particularly since the driver is open source and so we can fix it. Even downstream it would be best to fix the driver if possible IMO.

::: src/backends/native/meta-monitor-manager-kms.c
@@ +770,3 @@
+  meta_cursor_renderer_native_force_update (META_CURSOR_RENDERER_NATIVE (renderer));
+
+  cogl_onscreen = COGL_ONSCREEN (cogl_get_draw_framebuffer ());

isn't this the same as the onscreen argument we get above?
Comment 17 Ray Strode [halfline] 2015-05-12 13:01:15 UTC
it is indeed.  fall out from moving code around, will update the patch (though actually do we want this to go in, or just get qxl fixed instead?)
Comment 18 Ray Strode [halfline] 2015-05-12 13:03:19 UTC
oh i just realized you answered my comment 17 in comment 16 before i asked it
Comment 19 Ray Strode [halfline] 2015-05-12 13:04:11 UTC
i think I agree with, lets close this NOTGNOME
Comment 20 Ray Strode [halfline] 2015-05-12 18:39:46 UTC
for papertrail, downstream bug report is here:

https://bugzilla.redhat.com/show_bug.cgi?id=1200901

it has a qxl patch