[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xense-devel] [PATCH 0/3] Enhance VNC mouse/video handling


  • To: xense-devel@xxxxxxxxxxxxxxxxxxx
  • From: "Donald D. Dugger" <donald.d.dugger@xxxxxxxxx>
  • Date: Wed, 15 Mar 2006 12:24:34 -0800
  • Delivery-date: Wed, 15 Mar 2006 20:25:27 +0000
  • List-id: "A discussion list for those developing security enhancements for Xen." <xense-devel.lists.xensource.com>

The following 3 patches enhance the VMX device model by adding the following
features:

1)  Add Summagraphics Tablet emulation for VNC users.  The current PS/2
emulation is unusable under VNC since PS/2 provides mouse deltas while
VNC only provides absolute coordinates.  Note that the guest must be
configured properly, for example the `gpm' demon should be started with
the command:

        gpm -t summa -m /dev/ttyS0

and the X-Windows mouse stanza should look something like:

    Section "InputDevice"
        Identifier   "Summa Mouse"
        Driver       "summa"
        Option       "CorePointer"
        Option       "Device"             "/dev/ttyS0"
        Option       "Protocol"           "Auto"
        Option       "InputFashion"       "Tablet"
        Option       "Mode"               "Absolute"
        Option       "Compatible"         "True"
        Option       "SendCoreEvents"     "on"
        Option       "Vendor"             "GENIUS"
    EndSection

Also note that the Summagraphics emulation will NOT work when using SDL, make
sure your guest is configured for a PS/2 mouse if you are using SDL.

2)  Change the VNC main input loop delay from 1 second down to 10 msec.  The
1 second delay was causing significant latency problems with the mouse while
there is no measurable overhead in lowering the delay down to 10 msec.

3)  Add a shadow VRAM to track changes to the real VRAM.  When the guest
OS was given write access to the VRAM the device model tracked all VRAM
changes by updating the entire screen on every output loop, causing
significant overhead (a CPU bound loop in a guest slows down by about 35%)
and significant mouse latency (VNC uses the same data path for mouse events
and video updates).  With the shadow VRAM only modified pages need to be
updated and the comparison of the shadow VRAM to the real VRAM only adds
~4% overhead while eliminating the mouse latencies.

-- 
Don Dugger
"Censeo Toto nos in Kansa esse decisse." - D. Gale
Donald.D.Dugger@xxxxxxxxx
Ph: (303)440-1368

_______________________________________________
Xense-devel mailing list
Xense-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xense-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.