Bug 813949

Summary: radeon KMS is broken on big-endian
Product: [Fedora] Fedora Reporter: Ingvar Hagelund <ingvar>
Component: xorg-x11-drv-atiAssignee: Jérôme Glisse <jglisse>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 18CC: lemenkov, shtrom-redhat, xgl-maint
Target Milestone: ---   
Target Release: ---   
Hardware: ppc   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-02-05 11:56:46 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Photograph of screen with distorted graphics
none
Without KMS using last workign kernel
none
With KMS (and with bugs and distortions)
none
Without KMS using last working kernel (3.1.5)
none
With KMS (bugs, S-video, and distortions) using kernel 3.5.0
none
diff -u between Xorg logs with nokms (works) and kms (doesn't work) none

Description Ingvar Hagelund 2012-04-18 20:26:17 UTC
Description of problem:
When loading the radeon driver on my Apple iBook (32bit ppc), it tries to use xaa accelleration. This fails, since the xaa module is removed from the xorg X server.

Version-Release number of selected component (if applicable):
xorg-x11-drv-ati-6.14.3-11.20120206git36c190671.fc17.ppc

How reproducible:
Always

Steps to Reproduce:
1. Start X with no other config than what's provided by the package
  
Actual results:
The radeon automatically tries to load xaa:

(==) RADEON(0): Using XAA acceleration architecture

X then dies with

(EE) Failed to load module "xaa" (module does not exist, 0)


Expected results:
Radeon driver choosing an existing acceleration mode

Additional info:

Workaround: Tell radeon to use the exa acceleration mode instead. Something like this in /etc/X11/xorg.conf.d/radeon_fix.conf :

Section "Device"
        Identifier  "Card0"
        Driver      "radeon"
        Option      "AccelMethod"  "EXA"
EndSection


Output from lspci -vv

0000:00:10.0 VGA compatible controller: ATI Technologies Inc Radeon Mobility M7 LW [Radeon Mobility 7500] (prog-if 00 [VGA controller])
        Subsystem: ATI Technologies Inc Radeon Mobility M7 LW [Radeon Mobility 7500]
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 255 (2000ns min), Cache Line Size: 32 bytes
        Interrupt: pin A routed to IRQ 48
        Region 0: Memory at 98000000 (32-bit, prefetchable) [size=128M]
        Region 1: I/O ports at 0400 [size=256]
        Region 2: Memory at 90000000 (32-bit, non-prefetchable) [size=64K]
        Expansion ROM at 90020000 [disabled] [size=128K]
        Capabilities: [58] AGP version 2.0
                Status: RQ=48 Iso- ArqSz=0 Cal=0 SBA+ ITACoh- GART64- HTrans- 64bit- FW- AGP3- Rate=x1,x2
                Command: RQ=8 ArqSz=0 Cal=0 SBA+ AGP+ GART64- 64bit- FW- Rate=x2
        Capabilities: [50] Power Management version 2
                Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
        Kernel driver in use: radeonfb

Comment 1 Adam Jackson 2012-04-18 21:33:42 UTC
        Kernel driver in use: radeonfb

Booooo.  You should be using KMS.  Why aren't you using KMS?  That line should say "radeon" not "radeonfb".

Comment 2 Ingvar Hagelund 2012-04-19 18:42:37 UTC
Booting with KMS gives color distrotions, and the machine freezes after a few minutes. Running with the boot option "nomodeset", it works fine (with the workaround described above, that is).

That KMS does not work properly is perhaps worth another bug, though.

I'd still say this is an xorg radeon bug.

Ingvar

Comment 3 Adam Jackson 2012-04-20 19:23:37 UTC
In the sense that you're ending up on a path that shouldn't be possible, sure.  In 6.14.3-12 and later the non-KMS path isn't even built in the radeon X driver, and you're just going to fall back to fbdev.

Updating description to reflect the real issue.

Comment 4 Peter Lemenkov 2012-04-26 16:59:15 UTC
Confirmed.

But this is not a xorg-x11-drv-ati related issue. The last working kernel is 3.1.5-1 and every latter one leads to the issue described in comment #2 .

Latest working means that it works with  this

Section "Device"
        Identifier  "Card0"
        Driver      "radeon"
        Option      "AccelMethod"  "EXA"
EndSection

Comment 5 Ingvar Hagelund 2012-04-27 15:53:35 UTC
May or may not be relevant. Running with the setup above, I get artifacts and picture distortion on anything that's not basic Xlib (xterm works). See attached screenshot.

And btw, using fbdev, I get a color palette of 8 colors or something like that, rendering the screen quite unusable.

So, what's next? Just wait for the kernel to catch up?

Ingvar

Comment 6 Ingvar Hagelund 2012-04-27 15:55:08 UTC
Created attachment 580797 [details]
Photograph of screen with distorted graphics

Comment 7 Peter Lemenkov 2012-05-12 08:24:09 UTC
Created attachment 583967 [details]
Without KMS using last workign kernel

This is the X.org's log with the last working kernel - 3.1.5

Comment 8 Peter Lemenkov 2012-05-12 08:27:10 UTC
Created attachment 583968 [details]
With KMS (and with bugs and distortions)

And this is the Xorg's log wuth the latest (broken) kernel. It produces garbled colors right after the start, wrong display size (800x600 instead of 1920x1200) and the X locks after a few seconds (normally 30-60 seconds after start)

Comment 9 Peter Lemenkov 2012-05-26 08:27:37 UTC
After a bit of investigation I think that this bug is in fact a superposition of a several different bugs.

For example with the kernels with version 3.1.5+  X.org wrongly believes that I've got a S-video output connected. Can we fix somehow?

I'm updating Xorg logs with 3.1.5 and with 3.5.0 latest kernels. See diff -u between them for the details.

Comment 10 Peter Lemenkov 2012-05-26 08:28:57 UTC
Created attachment 587002 [details]
Without KMS using last working kernel (3.1.5)

Comment 11 Peter Lemenkov 2012-05-26 08:30:51 UTC
Created attachment 587003 [details]
With KMS (bugs, S-video, and distortions) using kernel 3.5.0

Comment 12 Peter Lemenkov 2012-05-26 08:32:28 UTC
Created attachment 587005 [details]
diff -u between Xorg logs with nokms (works) and kms (doesn't work)

Comment 13 Ingvar Hagelund 2012-06-12 14:31:28 UTC
Just a sidenote: Font rendering through gtk(?) or pango(?) trigs this bug. Other widget sets are not affected. This means that apps/desktop environments using Qt (Razor-qt, KDE), or even Firefox (why?) are not affected.

My workaround for now is just using Razor-qt.

http://ingvar.blog.redpill-linpro.com/?p=1699

Ingvar

Comment 14 Ingvar Hagelund 2013-02-27 08:17:35 UTC
On fedora 18, with version 7.0 of the driver, UMS is disabled, and with KMS, it's impossible to get a stable display at all. Color distortions and crashes as soon as I start using the display for anything but running xdm.

Recompiling xorg-x11-drv-ati-6.14.4-6.20120602git930760942.fc17, reenabling UMS (removing patch #14), and the display is stable again. 

Comment 3 suggests that this should not be possible. Well, I can assure that this works, and it's not the fbdev driver.

Which side of KMS is trigging the bug? The kernel or the xorg driver?

With this, I can run X and Qt apps fine. GTK apps still have distortions, though. So at least, I have a working display on my iBook as long as I can recompile version  6.x of the driver against a current version of Fedora.

See also https://bugs.freedesktop.org/show_bug.cgi?id=55745

Ingvar

Comment 15 Ingvar Hagelund 2013-08-28 21:06:50 UTC
FYI, with a small patch, I was able to recompile xorg-x11-drv-ati-6.14.4-6.20120602git930760942 against f19 xorg, and it works with the workarounds and limitations mentioned in Comment 14.

Ingvar

Comment 16 Fedora End Of Life 2013-12-21 08:35:10 UTC
This message is a reminder that Fedora 18 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 18. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '18'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 18's end of life.

Thank you for reporting this issue and we are sorry that we may not be 
able to fix it before Fedora 18 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior to Fedora 18's end of life.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 17 Fedora End Of Life 2014-02-05 11:56:50 UTC
Fedora 18 changed to end-of-life (EOL) status on 2014-01-14. Fedora 18 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.