No icons on Geode thin client

Bug #520671 reported by Alex Moldovan
18
This bug affects 3 people
Affects Status Importance Assigned to Milestone
X.Org X server
Invalid
Medium
xserver-xorg-video-geode (Debian)
Fix Released
Unknown
xserver-xorg-video-geode (Ubuntu)
Fix Released
Medium
Unassigned

Bug Description

Binary package hint: xorg

Lucid 10.04 Alpha daily cd image

Linux 200608-21 2.6.32-13-generic #18-Ubuntu SMP Wed Feb 10 21:24:20 UTC 2010 i586 GNU/Linux

In the attached screenshots we can see that there are no icons in the menus or in nautilus and some gnome applets won't show properly (network, volume, email notifications...). It's a fresh install, no updates.

ProblemType: Bug
Architecture: i386
Date: Thu Feb 11 15:30:40 2010
DistroRelease: Ubuntu 10.04
DkmsStatus: Error: [Errno 2] No such file or directory
InstallationMedia: Ubuntu 10.04 "Lucid Lynx" - Alpha i386 (20100211.1)
Lsusb:
 Bus 002 Device 003: ID 0566:3002 Monterey International Corp.
 Bus 002 Device 002: ID 1267:0210 Logic3 / SpectraVideo plc
 Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
 Bus 001 Device 004: ID 13fe:1d00 Kingston Technology Company Inc. DataTraveler 2.0 1GB/4GB Flash Drive / Patriot Xporter 4GB Flash Drive
 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Package: xorg 1:7.5+1ubuntu2
ProcCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.32-13-generic root=UUID=d43f10f2-3a3e-444a-bb09-ba3c70705955 ro quiet splash
ProcEnviron:
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 2.6.32-13.18-generic
RelatedPackageVersions:
 xserver-xorg 1:7.5+1ubuntu2
 libgl1-mesa-glx 7.7-0ubuntu8
 libdrm2 2.4.17-0ubuntu2
 xserver-xorg-video-intel 2:2.9.1-1ubuntu4
SourcePackage: xorg
Uname: Linux 2.6.32-13-generic i586
glxinfo: Error: [Errno 2] No such file or directory
system:
 distro: Ubuntu
 architecture: i586kernel: 2.6.32-13-generic
---
Architecture: i386
DistroRelease: Ubuntu 10.04
DkmsStatus: Error: [Errno 2] No such file or directory
InstallationMedia: Ubuntu 10.04 "Lucid Lynx" - Beta i386 (20100406.1)
Lsusb:
 Bus 002 Device 003: ID 413c:2003 Dell Computer Corp. Keyboard
 Bus 002 Device 002: ID 413c:3200 Dell Computer Corp. Mouse
 Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
 Bus 001 Device 004: ID 13fe:1d00 Kingston Technology Company Inc. DataTraveler 2.0 1GB/4GB Flash Drive / Patriot Xporter 4GB Flash Drive
 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Package: xserver-xorg-video-geode 2.11.7-1
PackageArchitecture: i386
ProcCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.32-19-generic root=UUID=20b94a47-9f3b-40a0-a94a-188b712150d9 ro quiet splash
ProcEnviron:
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 2.6.32-19.28-generic 2.6.32.10+drm33.1
Tags: lucid lucid
Uname: Linux 2.6.32-19-generic i586
UnreportableReason: This is not a genuine Ubuntu package
UserGroups:

glxinfo: Error: [Errno 2] No such file or directory
system:
 distro: Ubuntu
 codename: lucid
 architecture: i586
 kernel: 2.6.32-19-generic

Revision history for this message
Alex Moldovan (alexmoldovan) wrote :
Revision history for this message
Alex Moldovan (alexmoldovan) wrote :
Revision history for this message
Alex Moldovan (alexmoldovan) wrote :
Revision history for this message
Martin-Éric Racine (q-funk) wrote :

This is a -geode specific regression. For instance, icons show as expected if booting with -vesa.

Changed in xorg (Ubuntu):
importance: Undecided → Medium
affects: xorg (Ubuntu) → xserver-xorg-video-geode (Ubuntu)
Changed in xserver-xorg-video-geode (Ubuntu):
status: New → Confirmed
Revision history for this message
frank huang (frankr-huang) wrote :

I have reproduced this issue on Fedora12.
It's also Xserver 1.7. No icons on the desktop.

Frank

Revision history for this message
In , Martin-Éric Racine (q-funk) wrote :

As reported at Debian and Ubuntu, pixmap support is broken on xf86-video-geode, whenever the driver is built and ran against X server core 1.7. The exact same driver, when built and ran against X server core up to 1.6 works fine. Someone using Fedora 12 also mentioned the same issue via private e-mail. Their findings are similar to the screenshots attached to the Ubuntu bug below.

The symptom, mostly seen on GTK2+ applications, is menus and toolbars lacking icons, even though the space for them is clearly used.

https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-geode/+bug/520671

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=568827

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=570637

Changed in xorg-server:
status: Unknown → Confirmed
Changed in xserver-xorg-video-geode (Debian):
status: Unknown → Incomplete
Revision history for this message
datenteiler (datenteiler) wrote :

Same here with Lucid Beta 1 on Hercules EC-800 with AMD Geode LX 800. This says lspci:

00:01.0 Host bridge: Advanced Micro Devices [AMD] CS5536 [Geode companion] Host Bridge (rev 33)
00:01.1 VGA compatible controller: Advanced Micro Devices [AMD] Geode LX Video
00:01.2 Entertainment encryption device: Advanced Micro Devices [AMD] Geode LX AES Security Block
00:0d.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
00:0f.0 ISA bridge: Advanced Micro Devices [AMD] CS5536 [Geode companion] ISA (rev 03)
00:0f.2 IDE interface: Advanced Micro Devices [AMD] CS5536 [Geode companion] IDE (rev 01)
00:0f.3 Multimedia audio controller: Advanced Micro Devices [AMD] CS5536 [Geode companion] Audio (rev 01)
00:0f.4 USB Controller: Advanced Micro Devices [AMD] CS5536 [Geode companion] OHC (rev 02)
00:0f.5 USB Controller: Advanced Micro Devices [AMD] CS5536 [Geode companion] EHC (rev 02)

It's definitely xserver-xorg-video-geode_2.11.7 with xserver-xorg-video-geode_2.11.6 everything is OK and icons are schown.

Revision history for this message
In , Michel Dänzer (michel-daenzer) wrote :

Does disabling RENDER acceleration work aorund the problem?

E.g.

    Option "EXANoComposite"

Revision history for this message
Alex Moldovan (alexmoldovan) wrote : BootDmesg.txt

apport information

tags: added: apport-collected
description: updated
Revision history for this message
Alex Moldovan (alexmoldovan) wrote : CurrentDmesg.txt

apport information

Revision history for this message
Alex Moldovan (alexmoldovan) wrote : Dependencies.txt

apport information

Revision history for this message
Alex Moldovan (alexmoldovan) wrote : GdmLog.txt

apport information

Revision history for this message
Alex Moldovan (alexmoldovan) wrote : GdmLog1.txt

apport information

Revision history for this message
Alex Moldovan (alexmoldovan) wrote : GdmLog2.txt

apport information

Revision history for this message
Alex Moldovan (alexmoldovan) wrote : Lspci.txt

apport information

Revision history for this message
Alex Moldovan (alexmoldovan) wrote : PciDisplay.txt

apport information

Revision history for this message
Alex Moldovan (alexmoldovan) wrote : ProcCpuinfo.txt

apport information

Revision history for this message
Alex Moldovan (alexmoldovan) wrote : ProcInterrupts.txt

apport information

Revision history for this message
Alex Moldovan (alexmoldovan) wrote : ProcModules.txt

apport information

Revision history for this message
Alex Moldovan (alexmoldovan) wrote : RelatedPackageVersions.txt

apport information

Revision history for this message
Alex Moldovan (alexmoldovan) wrote : UdevDb.txt

apport information

Revision history for this message
Alex Moldovan (alexmoldovan) wrote : UdevLog.txt

apport information

Revision history for this message
Alex Moldovan (alexmoldovan) wrote : XorgLog.txt

apport information

Revision history for this message
Alex Moldovan (alexmoldovan) wrote : XorgLogOld.txt

apport information

Revision history for this message
Alex Moldovan (alexmoldovan) wrote : Xrandr.txt

apport information

Revision history for this message
Alex Moldovan (alexmoldovan) wrote : setxkbmap.txt

apport information

Revision history for this message
Alex Moldovan (alexmoldovan) wrote : xdpyinfo.txt

apport information

Revision history for this message
Alex Moldovan (alexmoldovan) wrote : xkbcomp.txt

apport information

Revision history for this message
In , Martin-Éric Racine (q-funk) wrote :

No, EXANoComposite doesn't solve the issue.

Additionally, NoAccel flat out crashes the driver:

[...]
(**) GEODE(0): DPI set to (95, 120)
(II) Loading sub module "fb"
(II) LoadModule: "fb"
(II) Loading /usr/lib/xorg/modules/libfb.so
(II) Module fb: vendor="X.Org Foundation"
 compiled for 1.7.6, module version = 1.0.0
 ABI class: X.Org ANSI C Emulation, version 0.4
(II) GEODE(0): vgaHWGetIOBase: hwp->IOBase is 0x03d0, hwp->PIOOffset is 0x0000
(II) GEODE(0): Geode LX video memory 7e00000 bytes at 0xaf5e9000
(II) GEODE(0): LX video memory:
(II) GEODE(0): Display: 0x500000 bytes
(II) GEODE(0): Compression: 0xaa000 bytes
(II) GEODE(0): Cursor: 0x3000 bytes

Backtrace:
0: /usr/bin/X (xorg_backtrace+0x3b) [0x80e937b]
1: /usr/bin/X (0x8048000+0x61c7d) [0x80a9c7d]
2: (vdso) (__kernel_rt_sigreturn+0x0) [0x59e410]
3: /usr/lib/xorg/modules/drivers/geode_drv.so (0xd7f000+0x198cf) [0xd988cf]
4: /usr/bin/X (AddScreen+0x198) [0x806cf48]
5: /usr/bin/X (InitOutput+0x820) [0x80b9ee0]
6: /usr/bin/X (0x8048000+0x1ebbb) [0x8066bbb]
7: /lib/libc.so.6 (__libc_start_main+0xe6) [0x196bc6]
8: /usr/bin/X (0x8048000+0x1e961) [0x8066961]
Segmentation fault at address 0xc

Caught signal 11 (Segmentation fault). Server aborting

Please consult the The X.Org Foundation support
  at http://wiki.x.org
 for help.
Please also check the log file at "/var/log/Xorg.0.log" for additional information.

 ddxSigGiveUp: Closing log

Revision history for this message
In , Martin-Éric Racine (q-funk) wrote :

Wait... I'll take that back; EXANoComposite alone DOES solve the issue.

However, NoAccel still crashes the driver.

Revision history for this message
In , Leio-gentoo (leio-gentoo) wrote :

Created an attachment (id=34901)
Slightly minimal test case

Revision history for this message
In , Leio-gentoo (leio-gentoo) wrote :

Some analysis in a slightly sleep deprived state:

gdb -p `pidof X`

# Catch the start of the buggy rendering operation:

break lx_check_composite
# Our icon is 24x24, so only break on that
condition 1 pSrc->pDrawable->width == 24
continue

# Run test app, X gdb will break once we are at the buggy rendering
# Now add extra breaks for other Composite (RENDER accel) hooks:

break lx_prepare_composite
break lx_do_composite
break lx_done

First CheckComposite returns TRUE - signifying we can render from the source to destination with format RGB565 (pDst->format) (Geode driver default depth is 16bit)

EXA does pixmap migration to GPU memory (exaDoMigration)

EXA calls PrepareComposite -> lx_prepare_composite

pMsk has a format of PICT_a8r8g8b8, lx_prepare_composite bails as we know how to handle A4 and A8 only, could the mask be simpler in this common image case?), EXA software fallback after pixmap migration was already done and fallback seems to fall down its face; no image gets composited.

With xorg-server-1.6 it seems to be PICT_a8r8g8b8 as well, but it manages to fallback gracefully and draw the image.

Oh EXA masters, what could be wrong in the fallback? Why doesn't it love me anymore :(

Revision history for this message
In , Leio-gentoo (leio-gentoo) wrote :

Created an attachment (id=34903)
lx_exa: bail earlier (in CheckComposite) for non-alpha-only masks.

This seems to workaround the EXA bug and make icons appear again. However I believe the EXA fallback problem that this triggered should be investigated as well. Also a quick look by more experienced people on the patch would be greatly appreciated.

Revision history for this message
In , Michel Dänzer (michel-daenzer) wrote :

(In reply to comment #6)
> Created an attachment (id=34903) [details]
> lx_exa: bail earlier (in CheckComposite) for non-alpha-only masks.
>
> This seems to workaround the EXA bug and make icons appear again.

The patch is probably a good idea anyway[0]: It's always better to catch an unsupported composite operation in the CheckComposite hook rather than in PrepareComposite, as this avoids superfluous pixmap migration.

[0] Assuming the hardware really doesn't support this format for the mask (simply ignoring the non-alpha bits, unless it's a component alpha picture).

> However I believe the EXA fallback problem that this triggered should be
> investigated as well.

Sure, assuming it still happens with xserver 1.8. Would you like to file a new report for that or reassign this one? BTW, a bt full along with a printout of the PictureRecs involved for the failing operation should be interesting.

(In reply to comment #5)
> pMsk has a format of PICT_a8r8g8b8, lx_prepare_composite bails as we know how
> to handle A4 and A8 only, could the mask be simpler in this common image
> case?),

EXA itself will only choose a mask format other than A8 for text rendering, and only if the driver doesn't support rendering to A8. So this mask format is probably chosen by the client.

Revision history for this message
Martin-Éric Racine (q-funk) wrote :

Unless I'm mistaken, package 2.11.7-3 solves this issue (see the upstream X.org bug for details).

The fix we use is just a better trap for possible EXA Composite errors. It is not the complete solution, but it at least restores usability with the Geode driver's default settings.

Revision history for this message
In , Martin-Éric Racine (q-funk) wrote :

I pushed Mart's patch into GIT as it at least resolves the most urgent issue, which was to restore image support in GTK2+ applications. Kudos for this patch!

However, this only seems to be the tip of the iceberg: reports at Debian indicate that Gecko-based browsers produce distortion on web content with background images. I asked the reporter whether completely disabling Composite solves the issue or not for him. Let's see what he answers.

Revision history for this message
In , Martin-Éric Racine (q-funk) wrote :

Sure enough, the user confirmed that disabling compositing via xorg.conf option indeed resolved the Gecko-rendering issue on web sites with background images.

Revision history for this message
In , Leio-gentoo (leio-gentoo) wrote :

Other issues in separate individual bug records please..., this is only for discussion of this concrete one.
About that, will test with xorg-server-1.8 hopefully later this week and see if EXA needs fixing too or not.

Revision history for this message
In , Leio-gentoo (leio-gentoo) wrote :

I have confirmed that the EXA bug is still present on xorg-server-1.8.0 when present with an unpatched geode driver. It fails to render a XRenderComposite drawn image as done through pygtk in the attached test case if we fallback in PrepareComposite.

Reassigning to EXA component per comment 7. Will try to retrieve the backtraces and PictureRecs (once I figure what those are) later this week to help this along.

From the xf86-video-geode side, my patch is in GIT, and with that we can avoid triggering this bug in xorg-server-1.7/1.8 and so can live with it. However if it turns out that any PrepareComposite failures cause problems in EXA, then that would be very bad - we bail for quite a few common cases in PrepareComposite time at this time.

Some relevant bits from log:

X.Org X Server 1.8.0
Release Date: 2010-04-02
X Protocol Version 11, Revision 0
Build Operating System: Linux 2.6.28-gentoo-r2 i586 Gentoo
Current Operating System: Linux geode 2.6.28-gentoo-r2 #5 Sun Feb 22 13:56:12 EET 2009 i586
Kernel command line: root=/dev/sda3 rootdelay=6 ro video=lxfb:off
Build Date: 14 April 2010 03:52:45AM

Current version of pixman: 0.18.0
...
[356817.689] (==) GEODE(0): Depth 16, (==) framebuffer bpp 16
[356817.689] (==) GEODE(0): RGB weight 565
[356817.689] (==) GEODE(0): Default visual is TrueColor
[356817.689] (==) GEODE(0): Using gamma correction (1.0, 1.0, 1.0)
[356817.689] (==) GEODE(0): No DCON is present
[356817.690] (II) GEODE(0): LX output options:
[356817.690] (II) GEODE(0): CRT: YES
[356817.690] (II) GEODE(0): PANEL: NO
[356817.690] (II) GEODE(0): DCON: NO
[356817.690] (II) GEODE(0): VGA: YES
[356817.690] (II) Loading sub module "int10"
[356817.690] (II) LoadModule: "int10"
[356817.692] (II) Loading /usr/lib/xorg/modules/libint10.so
[356817.693] (II) Module int10: vendor="X.Org Foundation"
[356817.693] compiled for 1.8.0, module version = 1.0.0
[356817.693] ABI class: X.Org Video Driver, version 7.0
[356817.699] (II) GEODE(0): Primary V_BIOS segment is: 0xc000
[356817.700] (II) GEODE(0): e00000 bytes of video memory is less then optimal
[356817.700] (II) GEODE(0): when compression is on. Disabling compression.
[356817.700] (II) GEODE(0): Output default using monitor section 204b
[356817.703] (EE) GEODE(0): GPIO pins are in serial mode. Assuming no DDC
[356817.703] (**) GEODE(0): Option "NoDDC"
...
[356817.728] (II) GEODE(0): vgaHWGetIOBase: hwp->IOBase is 0x03d0, hwp->PIOOffset is 0x0000
[356817.729] (II) GEODE(0): Geode LX video memory c00000 bytes at 0xb6d4c000
[356817.729] (II) GEODE(0): LX video memory:
[356817.730] (II) GEODE(0): Display: 0x4e2000 bytes
[356817.730] (II) GEODE(0): Cursor: 0x3000 bytes
[356817.730] (II) GEODE(0): EXA: 0x31800 bytes
[356817.730] (II) GEODE(0): FREE: 0x5a9800 bytes
[356817.792] (II) EXA(0): Offscreen pixmap area of 202752 bytes
[356817.792] (II) EXA(0): Driver registered support for the following operations:
[356817.793] (II) Solid
[356817.793] (II) Copy
[356817.793] (II) Composite (RENDER acceleration)
[356817.793] (==) GEODE(0): Backing store disabled
[356817.793] (==) GEODE(0): DPMS enabled

Changed in xserver-xorg-video-geode (Debian):
status: Incomplete → Fix Released
Revision history for this message
In , Martin-Éric Racine (q-funk) wrote :

Mart's patch was included as a part of xf86-video-geode 2.11.8 as released a few days ago, which at least restores icon displaying in GTK2+ applications.

Remains the issue with pixmap distortion on Gecko-based browsers when displaying HTML content with complex background images. Should we open a separate bug for this issue and consider 27243 as only concerning the icon issue?

Revision history for this message
Martin-Éric Racine (q-funk) wrote :

The final and official fix was released upstream and has been uploaded to Lucid as geode 2.11.8-4, currently pending approval of the Lucid Release Team due to the feature freeze.

Revision history for this message
Steve Langasek (vorlon) wrote :

Martin-Éric,

The upload looks fine, except for one change:

  * Removed versioned Conflicts against xserver-xorg-video-nsc.

That versioned conflicts would still apply to upgrades from Ubuntu 8.04. Why have you dropped it? If there are actual conflicts between the hardy -nsc and the lucid -geode, then this needs to be put back.

Revision history for this message
In , Michel Dänzer (michel-daenzer) wrote :

Does

 Option "EXAOptimizeMigration" "off"

make any difference for this?

Revision history for this message
Martin-Éric Racine (q-funk) wrote :

Steve,

All required fixes were already applied to the -nsc that ships with Hardy. It is thus presumed that people upgrading from Hardy all the way up to Jaunty have all the fixes in place and thus we don't really need the versioned conflict anymore.

Meanwhile, Lucid doesn't ship -nsc because because the code hasn't kept up with X server core changes after Jaunty.

However, in the interest of backports, the control file retains the Recommends on the same package, without any Conflicts against specific older versions, since anything starting with Hardy has the required fix in -nsc already in place.

Revision history for this message
Alex Moldovan (alexmoldovan) wrote :

I've upgraded the system today and the icons appeared on the desktop and all menus and tool-bars are looking fine.

Revision history for this message
Alex Moldovan (alexmoldovan) wrote :
Revision history for this message
In , Martin-Éric Racine (q-funk) wrote :

No, it does not fix the Gecko rendering issue on -geode.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package xserver-xorg-video-geode - 2.11.8-4

---------------
xserver-xorg-video-geode (2.11.8-4) unstable; urgency=low

  * Added generation of Depends:xserver-xorg-core-dbg for -dbg target.

xserver-xorg-video-geode (2.11.8-3) unstable; urgency=low

  * Removed versioned Conflicts against xserver-xorg-video-nsc.

xserver-xorg-video-geode (2.11.8-2) unstable; urgency=low

  * Added xserver-xorg-video-geode Provides xserver-xorg-video-amd.
  * Loosened up unnecessarily thight dpkg-dev Build-Depends.

xserver-xorg-video-geode (2.11.8-1) unstable; urgency=low

  * New upstream release (Closes: #568827) (LP: #520671).
  * Removed unnecessary Build-Depends on x11proto-dri2-dev.
 -- Martin-Eric Racine <email address hidden> Sun, 18 Apr 2010 20:25:30 +0300

Changed in xserver-xorg-video-geode (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
In , frank huang (frankr-huang) wrote :

Is "Gecko rendering issue" same as the bug 15700?
I am working on 15700 with a progressbar to see the composite thing in geode driver.

Revision history for this message
In , frank huang (frankr-huang) wrote :

I have fixed the Src operation on blend and composite operation.
And right now the most urgent bug in rendering is Over operation. Most of the rendering issue are arosed by this. Seems our driver does not handle this operation correc
You can add the following lines in lx_check_composite() to avoid the rendering bug.
  If(op == PictOpOver)
   return false;
I’ll fix this bug.

Thanks,
Frank

Revision history for this message
In , Martin-Éric Racine (q-funk) wrote :

Frank, could you produce a patch against what we have in our GIT repository and attach it to this bug? Then, I can commit it to GIT (or if you already have commit rights, you could commit it yourself). Thanks!

Revision history for this message
In , frank huang (frankr-huang) wrote :

Martin,

 Right now, my modification has fixed the Src operation problem. The Over operation is still under research now.
 And our main rendering bug is focusing on Over operation with mask. Now I am quite sure about this. I'll use rendercheck(composite and compositeCA) to modify the driver.
 Do you need the intermediate version of my modification?

Thanks,
Frank

-----Original Message-----
From: <email address hidden> [mailto:<email address hidden>]
Sent: 2010年5月28日 15:09
To: Huang, FrankR
Subject: [Bug 27243] EXA PrepareComposite failure fallback breakage since X server 1.7 core for XRenderComposited images

https://bugs.freedesktop.org/show_bug.cgi?id=27243

--- Comment #17 from Martin-Éric Racine <email address hidden> 2010-05-28 00:09:25 PDT ---
Frank, could you produce a patch against what we have in our GIT repository and
attach it to this bug? Then, I can commit it to GIT (or if you already have
commit rights, you could commit it yourself). Thanks!

Revision history for this message
In , frank huang (frankr-huang) wrote :

The bug is that when our driver handle the Over operation where source image has the alpha value and mask has the alpha value, our driver does the wrong thing. It use the mask's alpha value to do the composite operation and omit the previous alpha value. The correct formula is that the source(ARGB) should be multiplied with the mask alpha value, then use the new alpha to do the OVER operation. I have done many experiments to prove that and guys from xorg-devel mail groug gives me the hint.
In short, our driver is short of one pass of Source*(alpha of mask) and wrongly use a*A+(1-a)*B to do the OVER operation. See datasheet of Geode on GP_RASTER_MODE for detail.
I'll correct this huge bug and let you know my result.

Thanks,
Frank

Revision history for this message
In , Leio-gentoo (leio-gentoo) wrote :

This bug entry here is meant for tracking the fixing of EXA PrepareComposite failure fallback breakage, as noticed by the missing images in geode driver, which were worked around by falling back early in CheckComposite instead of PrepareComposite.

Please use a dedicated bug about SrcOver issues for updates on that completely different bug. Or perhaps just the geode mailing list. Or bug 15700, but only if the black button problems are really SrcOver problems and go to there.

Revision history for this message
In , frank huang (frankr-huang) wrote :

Ok, Mart.
I transfer this bug trace to bug 28352(EXA Rendering bug in geode driver). For the 15700, I am not sure if the black box has the same problem. I guess yes. After I correct this one, we can say more on 15700.

Thanks,
Frank

Revision history for this message
In , Martin-Éric Racine (q-funk) wrote :

Am I correct to assume that commit b46d4ff787bce43409d59837d736af0be2b0dda5 in Geode 2.11.9 solves this issue?

Revision history for this message
In , Leio-gentoo (leio-gentoo) wrote :

You are not correct. It only workarounds it with other benefits. So again, this bug is for finding out the core issue inside EXA code now (see the component), which we could help with.

Revision history for this message
Martin-Éric Racine (q-funk) wrote :

Am I correct to assume that commit b46d4ff787bce43409d59837d736af0be2b0dda5 in
Geode 2.11.9 solves this issue?

Revision history for this message
In , frank huang (frankr-huang) wrote :

Keep this issue here. It is not caused by our driver. Mart will update here if new findings is found in Xorg for this issue.

Changed in xorg-server:
importance: Unknown → Medium
Changed in xorg-server:
importance: Medium → Unknown
Changed in xorg-server:
importance: Unknown → Medium
Revision history for this message
In , Ajax-a (ajax-a) wrote :

Mass closure: This bug has been untouched for more than six years, and is not obviously still valid. Please file a new report if you continue to experience issues with a current server.

Changed in xorg-server:
status: Confirmed → Invalid
To post a comment you must log in.