Similar to bug 204401 that is now fixed, I somehow reproduce this bug easily with G45x4 (also called G450 quad).
This bug also confirms bug 194515 .
In short: second head got garbage, or is disabled compleetely, and X does not even say it disables it. More coming when I can attachfiles.
NB: unlike G400 that manages two heads in the same chipset G450 quad is a PCI brige; the layout of the daughter card is very explanatory: in front of PCI connector, you got a PCI expander, then, 4 identical zones, each having a video chipset and some RAM around.
Here is revealant lspci parts:
00:09.0 PCI bridge: Hint Corp HiNT HB4 PCI-PCI Bridge (PCI6150) (rev 02)
02:00.0 VGA compatible controller: Matrox Graphics, Inc. MGA G400/G450 (rev 85)
02:04.0 Display controller: Matrox Graphics, Inc. MGA G400/G450 (rev 85)
02:08.0 Display controller: Matrox Graphics, Inc. MGA G400/G450 (rev 85)
02:0c.0 Display controller: Matrox Graphics, Inc. MGA G400/G450 (rev 85)
So, when G400 was having the two heads at the same PCI adress, the G450 MMS introduces a new PCI bus, so that each head will be using a dedicated PCI address. Finaly, this also means that accessing a head in a G450MMS is independant of the position of the card in the machine; but, it can be altered when introducing in the computer other cards using PCI Expander.
Note that even when actual report is written whith other cards inserted and in use in the machine, the bug happen even when only the G450 is in => this bug is not happening due to incompatibility with other cards !!!
Created attachment 143964 [details]
Created attachment 143972 [details]
This /etc/X11/xorg.conf has to be readed carefully about one point. You will have to focus on head called Screen_1_-1_scr that is using the device MGA_450_s2.
You will read that I am using driver vesa for the second head; this will lead to the first coming Xlog. In this configuration, you will see that X does not report anything about the VESA head. That's the point making the bug close to bug 194515 . Since the card is a simple PCI brige, the card SHOULD be usable with vesa driver; and it fact, using the vesa driver works perfectly well with head 1; but not at all with heads 2, 3 and 4.
- no message about why it's not used at all
NB: this is the 6th (4th I report) bug I meet with X-1.4 where a feature is broken and it does not say why, and not even the fact that the feature is disabled.
I still ask for hard mask against X 1.4:
- too easy to crash
- does not respect conf file (video layut, keyboard and mouse config: see for example bug 204128 that is easily met with X 1.4, and not with 1.3)
- never say or warn it will behave a different wat than asked in the conf
- breaks back compatibility, and does not say it
- breaks many things in xinerama
- breaks many things in DRI/DRM (even on single head)
Created attachment 143973 [details]
log when using vesa driver
Created attachment 143974 [details]
When using tis section:
Identifier "MGA_450_s2" # head 2 is VGA
instead of vesa, the problem is différent: X loads the 5 heads asked for; second MGA45x get loaded, and is part of the desktop. When I specify 1280x1024 as desktop, the monitor claims the frequency is out of range (using the same monitor and conf on any other card produce a nice result) (happens the same wat on any monitor I will put on any heads 2, 3 or 4 when I activate them). With lower resulotion, the screen starts, and shows light gray image, with vertical dark lines. In the best case I can get the cursor on it, and the mouse appears as a very big black square: image does not reflect at all the desktop background, does not vary when trying to put windows in ...
So, in the best cas, I can get monitor show garbage, not related in any way with what should be on (it's not a shuffled image based on any things it should show as happen on old box mixing several video cards, or AGP NV driver bugs of the old time).
And, I remind that this happens exactly the same whay even when the G45x4 is the only video card in the machine: this is NOT an interaction with other cards.
I complain against 2 points:
- feature broken
- X not reporting that feature is to be broken (missing error message)