dmx-2 branch

David Reveman davidr at novell.com
Thu Oct 30 13:35:28 PDT 2008


Hey,

I pushed out some DMX server work I've been doing on the dmx-2 branch. 

The work started out as a set of modifications to the existing DMX
server but is today closer to a rewrite. The purpose of this new DMX
server is slightly different from that of the original and the
functionality in the dmx-2 branch is not a superset of the DMX server in
master. The reason for this was simply to reduce the complexity of the
new functionality I've working on. 

Here's a list of significant differences between dmx-2 branch and
master:

- Use dbus for configuration instead of config files and DMX extension.
- New back-end server only input implementation that leverage MPX.
- Cursor handling on back-end server side.
- Proper handling of pointer and keyboard grabs.
- Use of XCB for back-end server request/reply handling to avoid any
unnecessary blocking and round-trips.
- Composite support.
- XVideo support.
- MIT-SHM support.
- Connection breakage support.
- RANDR 1.2 support.
- Map/configure request forwarding.
- Window property forwarding.
- Selection sharing.
- XDND support.
- Avahi support (not sure that this is a good idea though)

All together I find the dmx-2 implementation less complex and much more
maintainable.

The purpose of all this work is to use Xdmx as a proxy X server on
virtual machines and remote desktops. Xvnc/X11rdp can be dynamically
attached to Xdmx when VNC/RDP support is desired but simply attaching a
local display directly to a remote Xdmx instance can provide unmatchable
performance and all the nice features (like seamless selection sharing,
XDND support and local compositing) that Xdmx provides.

Most changes in the dmx-2 branch are in the dmx DDX but there are some
DIX changes too. Most of them are xinerama improvements or bug fixes and
should be straight forward to get into master. They are not many so I'm
gonna post each one of them with an explanation to the list asap.

For the DDX part I'm not sure if we want to replace the existing dmx
implementation or keep them separated.

- david




More information about the xorg mailing list