Trying to understand meaning of rrCheckPixmapBounding.

Michal Srb msrb at suse.com
Fri Jun 6 05:48:34 PDT 2014


Hello,

I am currectly trying to solve a bug when Xserver doesn't configure correctly 
monitor on slaved gpu if the monitor is rotated to left or right. Things get 
broken...

I found out that the problem is in rrCheckPixmapBounding - it doesn't consider 
rotation of the crtcs. So it thinks it needs some different size of screen and 
resizes it to incorrect size. Even that xrandr already resized it to perfect 
size before.

Additionally when it resizes the screen, it sets physical size to 0x0 mm. 
Which breaks other things later. (For example any following xrandr call will 
die in XRRSetScreenSize because it sends back the physical size 0x0 mm.)

Both problems could be fixed, but I currently don't understand why is 
rrCheckPixmapBounding needed at all. Any attempt to configure crtc that would 
be outside of the screen boundaries would return BadValue already in 
ProcRRSetCrtcConfig, no? That's why the xrandr resizes the screen first, if 
neccessary.

So why is there rrCheckPixmapBounding?

Thank you,
Michal Srb



More information about the xorg-devel mailing list