Bug 85421

Summary: xf86-video-ati has flawed drawing straight lines operation
Product: xorg Reporter: Zbigniew <zb>
Component: Driver/RadeonAssignee: xf86-video-ati maintainers <xorg-driver-ati>
Status: RESOLVED MOVED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium    
Version: 7.5 (2009.10)   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Zbigniew 2014-10-24 21:34:31 UTC
I tried even newest 7.5.0 driver (with glamor module) - but it seems the problem still's here. At first I blamed Tk for the problem - but it turned out (after final comparison with NVidia), that the driver is flawed.

It seems, that (while using your radeon driver) Tk's canvas has about 5x more work with drawing "line" type objects than with drawing the same object (say: pentagram) as filled "polygon". The same can be noticed, when polygon is drawn with "-outline" option. It's easy to reproduce: just compare CPU load during execution of "Polyhedra" demo (from http://wiki.tcl.tk/14283 ), when drawing filled and wireframe corpses. Yes, I can see that wireframes are created there as polygons filled with black - but even when replacing relevant part of the code to create them as "line" objects - the huge difference in CPU load still remains (which can be seen especially on weaker machine, not strong modern multicore).

I don't use xorg.conf presently, just 2 lines in $HOME/.xinitrc

 xrandr --output DVI-0 --mode 1280x800 --panning 1680x1050
 /etc/X11/xinit/xinitrc.icewm

(apart of a few keyboard-related ones)

When I ran the script on NVidia machine (with NVidia's proprietary drivers), the CPU load difference between the two "display modes" ("shaded" and "wireframe") was marginal, as expected.
Comment 1 Zbigniew 2014-10-26 23:42:32 UTC
About the hardware I use: the same data, as I gave in comments to 
https://bugs.freedesktop.org/show_bug.cgi?id=85423
Comment 2 Zbigniew 2014-11-04 02:47:37 UTC
Not sure, do you know the comments of someone other; the comments seem to be related, and may be helpful in tracing the problem:

http://www.flaterco.com/kb/video/X-regressions.html

======= quote ==================
As of 2013-08-29, kernel 3.10.10, Slackware 14.0:  It's impossible to get 2D and 3D acceleration working at the same time.  All permutations of drivers have a problem with the screen going black (no signal) until the next reboot about 50% of the time when modesetting occurs.
CONFIG_DRM=y, CONFIG_DRM_RADEON=n:  There is no DRI or GL, but XAA 2D acceleration works great.
CONFIG_DRM_RADEON=y, CONFIG_DRM_RADEON_UMS=n, CONFIG_FB_RADEON=n:  Now there's DRI2 and GL but 2D acceleration is broken.  XAA and EXA claim to be enabled, but 2D is sloooow and Option "MigrationHeuristic" "greedy" does nothing.
CONFIG_FB_RADEON=y makes 2D fast again but it disables DRI and DRI2.
CONFIG_DRM_RADEON_UMS=y causes the screen to go black every time.

With option 2 (DRI2), background or sky textures are missing in EDuke32 and there is flakiness in PrBoom-Plus.  Reverting Mesa to 7.11.2 with DRI drivers only or setting Option "DRI2" "false" in xorg.conf makes no difference.

2014-09-02, kernel 3.16.1, Slackware 14.1:  The modesetting BSOD problem is still there and I can't stand it for long enough to test anything else.
Comment 3 Michel Dänzer 2016-07-21 09:46:47 UTC
Is this still an issue with current xf86-video-ati and glamor from xserver 1.18.3 or newer? If yes, please attach the corresponding Xorg log file.
Comment 4 Martin Peres 2019-11-19 07:48:10 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/xorg/driver/xf86-video-ati/issues/112.

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.