Bug 10055

Summary: i915 GM DRI white box hardware cursor- apparently due to RemoveOverlaps problem in xf86Bus.c
Product: xorg Reporter: Chris Billington <billington.chris>
Component: Server/GeneralAssignee: Xorg Project Team <xorg-team>
Status: RESOLVED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium CC: kenyon
Version: 6.9.0Keywords: patch
Hardware: x86 (IA32)   
OS: FreeBSD   
URL: http://www.freebsd.org/cgi/query-pr.cgi?pr=108582
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Xorg.0.log with 6.9.0 port
none
Xorg.0.log with patched xf86Bus.c
none
xf86Bus.c as edited to revert to v1.3 RemoveOverlaps code none

Description Chris Billington 2007-02-21 10:28:58 UTC
Please see http://www.freebsd.org/cgi/query-pr.cgi?pr=108582 for details including DRI/drm versions etc.

Symptoms: when enabling DRI on i915GM FreeBSD 6.2-STABLE with Xorg 6.9.0, HW cursor appears as white square. DRI appears to initialise OK. If run glxgears, however, machine locks hard.

As noted in PR it appears that the revisions made to RemoveOverlaps in xf86Bus.c for the 6.9.0 release cause this problem. The memory address ranges for the i915GM are changed on loading Xorg to values different to those detected on boot (and also in Windows). 

Reverting to the overlaps code in the previous version 1.3 of xf86Bus.c (leaving in any subsequent changes elsewhere) and recompiling Xorg-server port fixes the problem

Diff used was:
http://webcvs.freedesktop.org/xorg/xc/programs/Xserver/hw/xfree86/common/xf86Bus.c?r1=1.3&r2=1.8

Report is posted here because it seems the code causing the issue on i915GM has survived into the Xorg 7.x Modular code, it's still in HEAD.

Please could a knowledgeable person check?
Comment 1 Chris Billington 2007-02-21 13:41:16 UTC
Created attachment 8806 [details]
Xorg.0.log with 6.9.0 port

Xorg.0.log with 6.9.0 port, pci overlap oddly detected, 
%grep ALLOC Xorg.hwc.log
(WW) ****INVALID MEM ALLOCATION**** b: 0xffe80000 e: 0xffefffff correcting
(WW) ****INVALID MEM ALLOCATION**** b: 0xffe40000 e: 0xffe7ffff correcting
Comment 2 Chris Billington 2007-02-21 13:43:14 UTC
Created attachment 8807 [details]
Xorg.0.log with patched xf86Bus.c

with patched xf86Bus.c, note no ALLOC errors
Comment 3 Chris Billington 2007-02-21 13:48:12 UTC
Created attachment 8808 [details]
xf86Bus.c as edited to revert to v1.3 RemoveOverlaps code
Comment 4 Daniel Stone 2007-02-27 01:36:33 UTC
Sorry about the phenomenal bug spam, guys.  Adding xorg-team@ to the QA contact so bugs don't get lost in future.
Comment 5 Alan Coopersmith 2009-09-07 01:09:59 UTC
*** Bug 10176 has been marked as a duplicate of this bug. ***
Comment 6 Adam Jackson 2018-06-12 16:57:26 UTC
RemoveOverlaps hasn't been a thing in a very long time.

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.