Bug 17013 - Xinerama + XCopyArea/Xdamage
Summary: Xinerama + XCopyArea/Xdamage
Alias: None
Product: xorg
Classification: Unclassified
Component: Protocol/Core (show other bugs)
Version: 7.3 (2007.09)
Hardware: Other All
: medium normal
Assignee: Aaron Plattner
QA Contact: Xorg Project Team
Whiteboard: 2012BRB_Reviewed
Depends on:
Blocks: xserver-1.13
  Show dependency treegraph
Reported: 2008-08-06 09:37 UTC by Anton Fedorov
Modified: 2018-08-10 19:55 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Description Anton Fedorov 2008-08-06 09:37:39 UTC
XCopyArea copies blank from second monitor.
Also, seems that Xdamage doesn't produce messages for changes on second monitor.

As result, correctly working in single-screen setups applications fail to work on xinerama setups.

F.e., vino ( http://bugzilla.gnome.org/show_bug.cgi?id=346258 ) shows completely blank second screen, and if disable XCoypArea, it shows no changes on second screen (seems, with no Xdamage information on it).
Comment 1 Anton Fedorov 2008-08-06 10:26:05 UTC
as i see in code, difference is XCopyArea uses (*pGC->ops->CopyArea), while XGetSubImage uses (*pDraw->pScreen->GetImage)

so, problem in CopyArea, and have no problem in GetImage
Comment 2 Aaron Plattner 2011-09-23 12:15:08 UTC
This is a two-part bug, but the damage half of it affects composite managers on X servers that recently re-allowed Xinerama and Composite at the same time.
Comment 3 Aaron Plattner 2011-09-26 15:16:52 UTC
Assigning.  Fix for the Damage extension is out for review: http://lists.x.org/archives/xorg-devel/2011-September/025701.html
Comment 4 Jeremy Huddleston Sequoia 2011-10-03 00:47:56 UTC
Adding to the 1.11 tracker.
Comment 5 Aaron Plattner 2011-11-01 13:51:45 UTC
Since this is on the 1.11 tracker, I should probably post a status update.  My change sent to the list was never reviewed, but I think it also probably doesn't work for damage listeners attached to windows, which my short-sighted test app doesn't catch.  I'll need to fix up the test app and extend the patch before sending it out for re-review.  The current change should be enough to fix Vino, since I think it only watches for damage on the root, so I'll leave it up to Jeremy whether to take the current patch as-is or wait for my limited free time in my schedule to allow me to fix it.

As for the XCopyArea part of this bug, I think that's a duplicate of bug 25113.
Comment 6 Jeremy Huddleston Sequoia 2011-11-01 14:17:47 UTC
Yeah, I'd rather wait for a complete fix.  Do you have an ETA?
Comment 7 Adam Jackson 2014-04-07 17:56:50 UTC
The Damage half of this should be fixed in 1.15 and later by:

commit f10f36d91db1b21c2ce5a531b4fa5f96fcbdc2f0
Author: Adam Jackson <ajax@redhat.com>
Date:   Mon Sep 16 15:17:26 2013 -0400

    damageext: Xineramify (v7)

What's the CopyArea part of the problem?  PanoramiXCopyArea definitely includes code to handle MIT-SHM pixmaps already, I don't see anything obviously wrong with it.
Comment 8 GitLab Migration User 2018-08-10 19:55:10 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/xorg/proto/xorgproto/issues/2.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.