Using x11-base/xorg-x11-6.8.0-r4 on a Matrox Millennium G450 card, 32 MB RAM. Running the x11perf program, the antialiased trapezoid tests work correctly under color depths > 8 bits (I tested 24 and 16 bits IIRC). At 8 bits, these things happen: 1. The test window that all the graphics operations are displayed in is created a few pixels indented, both horizontally and vertically, from the upper left corner of the screen. Normally all tests should paint their graphics within the provided window. These tests, however, are offset up and to the left from where they should be, so that they leak out of the window and onto the desktop. The graphics operations are being painted relative to the screen, not to the window, as they should be. 2. The performance is abysmal: Instead of a few hundred operations per second, it can take up to several minutes to perform one operation, depending on the test. It's as if hardware acceleration isn't being used, and those X operations are using (badly written) software routines. Symptom 1 is easily manifest with the aatrap1 test. Both symptoms are manifest by running a range from aatrap1 to addatrapezoid300. The ways to work around this problem are: o Change to a higher color depth o Use the VESA or fbdev drivers instead of "mga" o Turn off acceleration to make "mga" work (Section "Device" -> Option "NoAccel" "true") Recompiling x.org multiple times, I found no change by varying the MMX, SSE, or 3D-Now related USE flags. I'm assuming this is an upstream problem, but wanted to report it here first, just in case. I've got a distro-neutral testcase to pass to upstream, which I will attach momentarily.
Created attachment 51566 [details] Stripped-down xorg.conf file to demonostrate bug and workarounds
Created attachment 51567 [details] shell script to exercise buggy X operations
If the Gentoo devs are swamped, I'm willing to take this upstream for them. Just let me know.
definitely a bug for upstream. bugs.freedesktop.org, product Xorg, component Driver/mga. if you could figure out which accel op is at fault that would be great. see the various "XaaNo..." options in the Screen section in the xorg.conf manpage. thanks!
Created attachment 51855 [details] Stripped-down xorg.conf file to demonostrate bug and workarounds Aha... if either XaaNoScreenToScreenCopy *or* XaaNoOffscreenPixmaps (or I guess both) is set to true, everything works. Updated xorg.conf attached. Will also take this upstream for you.
Filed upstream: https://bugs.freedesktop.org/show_bug.cgi?id=2591
watching this one upstream.