Bug 206313

Summary: Paravirt VNC server renders a server side cursor in top-corner
Product: [Fedora] Fedora Reporter: Daniel Berrangé <berrange>
Component: xenAssignee: Xen Maintainance List <xen-maint>
Status: CLOSED RAWHIDE QA Contact: Brian Brock <bbrock>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: bstein, katzj
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-09-28 21:53:38 UTC Type: ---
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
Patch to disble VNC cursor none

Description Daniel Berrangé 2006-09-13 16:19:30 UTC
Description of problem:
With VNC there are usually two cursors, the (physical) local client side cursor
, and the remote cursor (which tracks the local cursor). The VNC protocol also
allow for the remote cursor to be rendered locally to reduce effects of latency. 

The Xen Paravirt framebuffer is even more complicated than this though, adding a
third cursor - the one rendered by the guest OS into the virtual framebuffer. If
the VNC client supports the RichCursor RFB extension the user will still only
see two of the cursors -the guest rendererd one & the local cursor - the server
side one is not shown with RichCursor extension.

The problem is that not all clients support RichCursor, and in those cases
you'll actually see 3 cursors for a single display. The server-rendererd one in
this case is actually locked, stuck at 0,0 so you only see the bottom-right
quarter of it.

The issue is really that the intermediate VNC server cursor is totally pointless
since all you care about is the guest cursor & the real local one. This
intermedia cursor should simply be disabled altogether - which also fixes the
problem of it being rendered stuck at 0,0 in non-RichCursor clients.

Version-Release number of selected component (if applicable):
xen-3.0.2-33, virt-manager-0.2.1-3

How reproducible:
Always

Steps to Reproduce:
1. Run a paravirt guest with VNC server
2. Connect to guest console with virt-manager
3.
  
Actual results:
Notice bottom-right quarter of server-generated cross-hair cursor

Expected results:
Server generated cursor is hidden - only guest & local cursors visible.

Additional info:

Comment 1 Daniel Berrangé 2006-09-13 16:19:31 UTC
Created attachment 136179 [details]
Patch to disble VNC cursor

Comment 2 Daniel Berrangé 2006-09-28 21:53:38 UTC
Pushed to rawhide in xen-3.0.2-39