Bug 18019

Summary: Font glyphs corrupted/missing with EXA on R300
Product: xorg Reporter: Joel Feiner <jafeiner>
Component: Server/Acceleration/EXAAssignee: Xorg Project Team <xorg-team>
Status: RESOLVED DUPLICATE QA Contact: Xorg Project Team <xorg-team>
Severity: major    
Priority: medium CC: s.tousignant
Version: git   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Missing glyphs in KDE 4 application
none
Large funts with missing glyph parts (KDE 3 - KOffice)
none
xorg.conf
none
x86_64 arch Xorg.conf with same trouble with kde
none
my Xorg.0.log none

Description Joel Feiner 2008-10-11 11:01:58 UTC
Two things in this bug report:

1) Large font sizes result in corrupted glyphs.  That is, parts of the glyphs will be missing, or whole glyphs will be missing.  In Firefox, selecting the text sometimes helps show some of the missing parts, while often causing new parts to disappear.

2) KDE 4 applications show completely missing glyphs with normal font sizes.

Both problems exist with EXA.  They go away with XAA.

Screenshots attached later.

xorg.conf:

Section "ServerLayout"
	Identifier     "X.org Configured"
	Screen      0  "Screen0" 0 0
	InputDevice    "Mouse0" "CorePointer"
	InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
	ModulePath   "/usr/local/xorg/lib/xorg/modules"
	FontPath     "built-ins"
EndSection

Section "Module"
	Load  "dri"
	Load  "glx"
	Load  "dbe"
	Load  "extmod"
EndSection

Section "InputDevice"
	Identifier  "Keyboard0"
	Driver      "kbd"
	Option		"XkbRules" "base"
EndSection

#Section "InputDevice"
#	Identifier  "Mouse0"
#	Driver      "evdev"
#	Option      "Path" "/dev/input/by-path/pci-0000:00:1d.1-usb-0:2:1.0-event-mouse"
#	Option	    "Protocol" "auto"
#	Option	    "ZAxisMapping" "4 5 6 7"
#EndSection

Section "InputDevice"
	Identifier	"Mouse0"
	Driver		"mouse"
	Option		"Device" "/dev/input/mice"
	Option		"Protocol" "auto"
#	Option		"EmulateWheel" "on"
#	Option		"EmulateWheelButton" "2"
	Option		"Emulate3Buttons" "yes"
#	Option		"ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
	Identifier   "Monitor0"
	VendorName   "Monitor Vendor"
	ModelName    "Monitor Model"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz"
        ### [arg]: arg optional
        #Option     "NoAccel"            	# [<bool>]
        #Option     "SWcursor"           	# [<bool>]
        #Option     "Dac6Bit"            	# [<bool>]
        #Option     "Dac8Bit"            	# [<bool>]
        #Option     "BusType"            	# [<str>]
        #Option     "CPPIOMode"          	# [<bool>]
        #Option     "CPusecTimeout"      	# <i>
        #Option     "AGPMode"            	# <i>
        Option     "AGPFastWrite" "true"      	# [<bool>]
        #Option     "AGPSize"            	# <i>
        #Option     "GARTSize"           	# <i>
        #Option     "RingSize"           	# <i>
        #Option     "BufferSize"         	# <i>
        #Option     "EnableDepthMoves"   	# [<bool>]
        Option     "EnablePageFlip" "true"    	# [<bool>]
        #Option     "NoBackBuffer"       	# [<bool>]
        #Option     "DMAForXv"           	# [<bool>]
        #Option     "FBTexPercent"       	# <i>
        #Option     "DepthBits"          	# <i>
        #Option     "PCIAPERSize"        	# <i>
        #Option     "AccelDFS"           	# [<bool>]
        #Option     "DDCMode"            	# [<bool>]
        #Option     "IgnoreEDID"         	# [<bool>]
        #Option     "DisplayPriority"    	# [<str>]
        #Option     "PanelSize"          	# [<str>]
        #Option     "ForceMinDotClock"   	# <freq>
        Option     "ColorTiling"   "true"     	# [<bool>]
        #Option     "VideoKey"           	# <i>
        #Option     "RageTheatreCrystal" 	# <i>
        #Option     "RageTheatreTunerPort" 	# <i>
        #Option     "RageTheatreCompositePort" 	# <i>
        #Option     "RageTheatreSVideoPort" 	# <i>
        #Option     "TunerType"          	# <i>
        #Option     "RageTheatreMicrocPath" 	# <str>
        #Option     "RageTheatreMicrocType" 	# <str>
        #Option     "ScalerWidth"        	# <i>
        #Option     "RenderAccel"        	# [<bool>]
        #Option     "SubPixelOrder"      	# [<str>]
        #Option     "ShowCache"          	# [<bool>]
        #Option     "DynamicClocks"      	# [<bool>]
        #Option     "VGAAccess"          	# [<bool>]
        #Option     "ReverseDDC"         	# [<bool>]
        #Option     "LVDSProbePLL"       	# [<bool>]
        #Option     "AccelMethod"        	# <str>
        #Option     "DRI"                	# [<bool>]
        #Option     "ConnectorTable"     	# <str>
        #Option     "DefaultConnectorTable" 	# [<bool>]
        #Option     "DefaultTMDSPLL"     	# [<bool>]
        #Option     "TVDACLoadDetect"    	# [<bool>]
        #Option     "ForceTVOut"         	# [<bool>]
        #Option     "TVStandard"         	# <str>
        #Option     "IgnoreLidStatus"    	# [<bool>]
        #Option     "DefaultTVDACAdj"    	# [<bool>]
        #Option     "Int10"              	# [<bool>]
	Identifier  "Card0"
	Driver      "radeon"
	VendorName  "Unknown Vendor"
	BoardName   "Unknown Board"
#	Option		"NoAccel" "true"
	Option		"AccelMethod" "EXA"
	Option		"AccelDFS" "on"
	Option		"FBTexPercent" "0"
#	Option		"EXAOptimizeMigration" "0"
#	Option		"MigrationHeuristic" "smart"
	BusID       "PCI:1:0:0"
EndSection

Section "Device"
	Identifier "VESA"
	Driver "vesa"
	BusID  "PCI:1:0:0"
EndSection

Section "Screen"
	Identifier "Screen0"
	Device     "Card0"
	Monitor    "Monitor0"
	SubSection "Display"
		Viewport   0 0
		Depth     24
		Virtual   2680 1050
	EndSubSection
EndSection
Comment 1 Joel Feiner 2008-10-11 11:03:58 UTC
Created attachment 19591 [details]
Missing glyphs in KDE 4 application
Comment 2 Joel Feiner 2008-10-11 11:04:36 UTC
Created attachment 19592 [details]
Large funts with missing glyph parts (KDE 3 - KOffice)
Comment 3 Michel Dänzer 2008-10-11 12:53:02 UTC
Please attach (as opposed to paste) the full Xorg.0.log as well.

Does it also happen without Option "AGPFastWrite" and/or "AccelDFS"?
Comment 4 Joel Feiner 2008-10-11 13:36:36 UTC
Created attachment 19593 [details]
xorg.conf
Comment 5 Joel Feiner 2008-10-11 13:37:46 UTC
Any combination of options with EXA seems to produce the same behavior: messed up or missing glyphs.  Granted, I haven't tried the full Cartesian product, but I did try what you suggested, and a few other things (like MigrationHeuristic) and I still get the same behavior.  Only switching back to XAA fixes it.
Comment 6 Steve Tousignant 2008-11-05 19:26:27 UTC
Created attachment 20097 [details]
x86_64 arch Xorg.conf with same trouble with kde

i have the exact same issue, here is the my xorg.conf with skype.

with radeonhd, the font are rendered correctly.
Comment 7 Steve Tousignant 2008-11-05 19:28:03 UTC
Created attachment 20098 [details]
my Xorg.0.log
Comment 8 Michel Dänzer 2008-11-06 03:42:44 UTC
(In reply to comment #6)
> i have the exact same issue, here is the my xorg.conf with skype.

Have you tried

    Option "AccelDFS" "off"

and

    Option "RenderAccel" "off"

?

> with radeonhd, the font are rendered correctly.

Does it have the functionality corresponding to the above options enabled?
Comment 9 Steve Tousignant 2008-11-06 05:44:58 UTC
turning the following option off made the trick to get the font back to normal. 

    Option "RenderAccel" "off"

The Other option had no effect at all.
Comment 10 Joel Feiner 2008-11-07 18:52:24 UTC
The latest git xserver seems to fix this issue.  I'm guessing it's related to commit 21c116219cd5c6845a0955f2d88fdb5fab5c17cf which addresses something that sounds very similar to this.
Comment 11 Michel Dänzer 2008-11-08 03:38:52 UTC

*** This bug has been marked as a duplicate of bug 18065 ***

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.