Bug 8080

Summary: background pixel value ~0L set by XSetBackground doesn't take effect on x86-64 machine
Product: xorg Reporter: haihao <haihao.xiang>
Component: Server/Acceleration/XAAAssignee: Hong Liu <hong.liu>
Status: VERIFIED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: high CC: eric, gordon.jin, keithp
Version: 7.1 (2006.05)   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Bug Depends on:    
Bug Blocks: 8888    

Description haihao 2006-08-31 01:11:21 UTC
We ran xtest suite on a x86-64 machine, using i810 driver. We found some cases
failed due to the background pixel value ~0L.
Xlib9/XDrawArc                          91          
Xlib9/XDrawArcs                         101         
Xlib9/XDrawImageString16                19          
Xlib9/XDrawImageString                  19          
Xlib9/XDrawLine                         80          
Xlib9/XDrawLines                        92          
Xlib9/XDrawRectangle                    72          
Xlib9/XDrawRectangles                   74          
Xlib9/XDrawSegments                     81          
Xlib9/XFillArc                          38          
Xlib9/XFillArcs                         40          
Xlib9/XFillPolygon                      43          
Xlib9/XFillRectangle                    37          
Xlib9/XFillRectangles                   38   
Xlib9/XPutImage                         32  

These cases create a stipple with data 0, set the fill style to
FillOpaqueStippled and specify the background pixel value ~0L by XSetBackground
  call. So it will draw the graphic (such as arc, lines) with background pixel 
value ~0L. But the result is this background pixel value ~0L doesn't take
effect. All pixel is drawn with pixel value 0.

If these cases run with vesa driver, they are passed.
If we change the stipple and fill style and use foreground pixel value ~0L to
draw these graphic, it is OK.
Comment 1 Alan Hourihane 2006-08-31 01:40:08 UTC
I highly suspect that these are XAA bugs rather than driver bugs. Can you try
another driver that uses XAA and confirm whether you see them with another driver ?
Comment 2 haihao 2006-08-31 02:28:01 UTC
Yes, itt looks like XAA bug.
The cases pass if XAA disabled.
Comment 3 Daniel Stone 2007-02-27 01:33:23 UTC
Sorry about the phenomenal bug spam, guys.  Adding xorg-team@ to the QA contact so bugs don't get lost in future.
Comment 4 Gordon Jin 2007-03-14 19:30:16 UTC
The bug priority was upgraded (P2->high) with the bugzilla configuration change.
I'm Changing the priority back to the normal one.
Sorry for the spam.
Comment 5 Gordon Jin 2007-08-09 23:51:10 UTC
And the cases also pass with EXA.
Comment 6 Alan Hourihane 2007-09-04 00:49:31 UTC
Just pushed Hong Liu's change for the xaaGC.c fix.

Can you try again ?

If it works can work make this bug depend on 8888 so it gets into the 7.3 release.
Comment 7 Gordon Jin 2007-09-07 02:03:39 UTC
Fixed in xserver master 9adea807038b64292403ede982075fe1dcfd4c9a.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.