[Bug 92858] AMD Radeon GPU Acceleration Disabled Under Kernels 4.2.x and later versions

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Sat Nov 7 14:57:49 PST 2015


https://bugs.freedesktop.org/show_bug.cgi?id=92858

            Bug ID: 92858
           Summary: AMD Radeon GPU Acceleration Disabled Under Kernels
                    4.2.x and later versions
           Product: DRI
           Version: unspecified
          Hardware: x86-64 (AMD64)
                OS: Linux (All)
            Status: NEW
          Severity: major
          Priority: medium
         Component: DRM/Radeon
          Assignee: dri-devel at lists.freedesktop.org
          Reporter: ysxikrhn at vomoto.com

Created attachment 119469
  --> https://bugs.freedesktop.org/attachment.cgi?id=119469&action=edit
dmesg_log_file_from_booting_kernel_4.3-rc7

I utilize an AMD Radeon 7770 (CAPE VERDE) GPU, which until kernel 4.2 and
above, provided accelerated OpenGL as it was supposed to. As per
http://xorg.freedesktop.org/wiki/RadeonFeature/, this is a Southern Islands
card and should be utilizing the radeon drm module and the radeonsi dri driver.
Although the computer still boots and the card initializes with kernels later
than 4.1.x, but there is no 3d acceleration, or at least not via the GPU
itself--the llvmpipe software rasterizer works but doesn't provide the OpenGL
support nor speed that the radeonsi driver does.

My computer is currently running Netrunner rolling (Manjaro based) and updated
to the latest packages in the Manjaro repos. The installed graphics stack
consists of mesa 11.0.4, libdrm 2.4.65, and xf86-video-ati 1:7.5.0-2.

I initially noticed this bug and/or issue because Plasma/KF5 couldn't use
OpenGL or OpenGLES acceleration under 4.2 and later kernels. This lead me to
investigate why it didn't.

I've confirmed the lack of hardware-accelerated OpenGL under kernels 4.2.x and
later via glxifo. If I run it when I'm booted under kernel 4.1.12 or earlier,
the output indicates the driver is providing openGL 4.1 core profile, OpenGL
3.0, and OpenGLES 3.0. If, however, I boot up any kernel 4.2 or higher, mesa
uses the llvmpipe software rasterizer.

If I boot kernel 4.3-rc7, which is the latest available under Manjaro as of
today, the correct drm driver (radeon.ko) is being initialized as evidenced by:
"1.906749] [drm] radeon kernel modesetting enabled" and "456843] fb: switching
to radeondrmfb from VESA VGA" in the dmesg.

The firmware is also being loaded, as per:
"2.457304] [drm] Loading verde Microcode"

However, later in the boot process something causes GPU acceleration to be
disabled:
2.558871] [drm] radeon: irq initialized.[    3.340560] [drm:r600_ring_test
[radeon]] *ERROR* radeon: ring 0 test failed (scratch(0x850C)=0xCAFEDEAD)
[    3.340564] radeon 0000:01:00.0: disabling GPU acceleration

The section pasted above of the dmesg from kernel 4.3-rc-7 indicates the driver
is failing on the "drm:r600_ringtest"...however, this is not a r600 card but a
Southern Islands.

Steps taken while attempting to resolve the issue: I'd initiallly thought it
could be a firmware issue, with the linux-firmware package in the distro
perhaps not having been updated to support the latest kernels, but even when I
installed linux-firmware-git from the AUR to replace the standard
linux-firmware package and then booted linux 4.3-rc7, mesa was still using
llvmpipe instead of radeonsi, due to no GPU accel. I've also compiled the 4.3.0
kernel using the tarball directly from kernel.org, and a default kernel
configuration file from ubuntu. When I booted into the 4.3.0 upstream kernel,
GPU acceleration was still disabled. As neither the source nor the kernel
config were from Manjaro, doesn't this rule out a distro bug and indicate the
issue is upstream?

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/dri-devel/attachments/20151107/fa803629/attachment.html>


More information about the dri-devel mailing list