Using a driver from git, last commit: 6e0e1a821accc6ca95f4134e49b66a6b168c1934 (Tue Oct 25 17:39:57 2011 +0200).
My card from `lspci`:
01:00.0 VGA compatible controller: ATI Technologies Inc RV770 [Radeon HD 4870]
My xorg.conf: http://wklej.org/id/614424/
It's a standard ZaphodHeads configuration, isn't it?
*Weird* things happen after X starts.
No matter if Xinerama is on or off.
Front monitor is stretched. It should be 1920x1200 but it looks like it was 3840x1200 and the only first part of it was visible. The image is distorted, texts are unreadable. Right monitor is almost OK. There are some artifacts and it looks like they "come" from the first monitor. See the video: http://dl.dropbox.com/u/30795953/VIDEO0035.3gp
After CTRL+ALT+F1 is pressed... I get a *perfect* image on the front monitor. If only it was perfect when I'm in X session. :P
Does my xorg.conf contain some error? I don't think so.
I guess something really *trivial* is broken in the source code. For example, first monitor's width is set to virtual 3840 instead of 1920? I was today analyzing some code in drmmode_display.c and comparing it to Nouveau. Without a result so far.
Something similar (but a bit different) happened to me when using Nouveau and two NVidia graphic cards. One of the monitor was 3840x1200 too, but it was being scrolled. You may take a look at the video and two bugs issued by me. http://upload.nowaker.net/nwkr/xinerama-fail.3gp.
More about my system:
Using a xorg-edgers PPA so X packages are rather new.
P.S. From xorg.conf you may notice that I also have an NVidia graphic card. ZaphodHeads for ATI fail regardless of the existence of second GPU.
P.S.2. Don't suggest setting Virtual and using xrandr. What I finally want to achieve is a three or four monitor mode with Xinerama. Therefore, ZaphodHeads is the only way to do that. (Proved with nouveau+nouveau and nouveau+intel)
Please attach your xorg log and config and dmesg output. Note that output names are global across all GPUs. Make sure they match the output names on each card.
Also, you might need to specify the coordinates of the first head. E.g.,
Screen 0 "Screen0" 0 0
Screen 1 "Screen1" RightOf "Screen0"
Screen 2 "Screen2" RightOf "Screen1"
# Screen 3 "Screen3" RightOf "Screen2"
Option "Xinerama" "On"
Does it work if you remove the nvidia card?
I will attach those files shortly.
I will try your suggestion and let you know.
Regarding your question, ZaphodHeads for ATI fail regardless of the existence of NVidia card.
Closing since I am no longer able to provide any details on the topic.