[ubuntu-x] Default behaviour for dual head with different resolutions

Kai Jauch ubuntu-lists at kaijauch.de
Thu Aug 20 18:06:59 BST 2009


Am Dienstag, den 11.08.2009, 11:14 -0400 schrieb Geir Ove Myhr:

> With KMS the current behaviour is even more unfortunate, since one of
> its advantages is fewer mode changes. Currently, the monitors are
> assigned their native resolution on boot and then changes to the lower
> resolution once gdm starts. If the monitors are set up to be used with
> an extended desktop the mode changes again when the user logs in.
> 
> 1. In which xorg component did this change occur?
> 2. Is there any record of the rationale behind this change?
> 3. What do you think would be the proper behaviour?

I found the commit that implemented this behaviour in
hw/xfree86/modes/xf86Crtc.c:

http://lists.freedesktop.org/archives/xorg-commit/2008-March/015045.html

| commit 27e7dacbf7ef17712be31ff90f98ee3a5c5cf909
| Author: Adam Jackson <ajax at redhat.com>
| Date:   Tue Mar 4 11:38:34 2008 -0500
|
| Make xf86InitialConfiguration slightly smarter.
|
| Old heuristic was to find the first monitor that expressed a
| preference, then attempt to get all other monitors to agree.  This
| doesn't work particularly well when the two sets of modes don't
| precisely intersect, you get overlapping-but-not-identical output
| geometry and things go wrong.
|   
| New heuristic is:
| - Exact user preference, if given
| - Exact output preference, if the same for all outputs
| - Best (largest) mode of modes common to all outputs:
|   - with the same aspect ratio as all outputs (may be NULL)
|   - with 4:3 aspect ratio
| - Then the old heuristic to try to get something lit
|
| Note that it is simply not doable to have a reliable initial output
| guess if you insist on trying to clone all outputs together.  It's far
| too easy to end up with displays that simply don't have modes in
| common.  We need to switch to right-of placement someday, once we're
| not limited to CRTC size limits and we have working multi-GPU in
| RANDR.





More information about the Ubuntu-x mailing list