graphics fails with setgfxpayload=keep, AMD Radeon

Bug #971204 reported by Darxus
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
grub-gfxpayload-lists (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

Radeon driver works fine in Oneric, but in Precise it boots to a flickering dark purple screen - completely unusable. Or safe mode boots using the vesa driver.

Also tested:
3.4.0-030400rc1-generic #201203312035 SMP Sun Apr 1 00:36:22 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
linux-image-3.3.0-030300-generic 3.3.0-030300.201203182135 Linux kernel image for version 3.3.0 on 32 bit x86 SMP

Tried booting Oneiric kernel in Precise, did not fix the problem.

$ lspci | grep -i vga
05:00.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI Barts XT [ATI Radeon HD 6800 Series]

WORKAROUND: Removing the "setgfxpayload..." line in grub allowed the radeon driver to work.

WORKAROUND: Removed vt.handoff and replace:
set gfxpayload=text

with:
set gfxpayload=$linux_gfx_mode

ProblemType: Bug
DistroRelease: Ubuntu 12.04
Package: linux-image-3.2.0-21-generic 3.2.0-21.34
ProcVersionSignature: Ubuntu 3.2.0-21.34-generic 3.2.13
Uname: Linux 3.2.0-21-generic x86_64
AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.24.
ApportVersion: 2.0-0ubuntu2
Architecture: amd64
Date: Sun Apr 1 21:26:47 2012
HibernationDevice: RESUME=UUID=d1830ce6-1bf3-4f92-9562-0278a9576ed2
InstallationMedia: Ubuntu 12.04 LTS "Precise Pangolin" - Beta amd64 (20120328)
MachineType: System manufacturer System Product Name
ProcEnviron:
 TERM=xterm
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcFB: 0 radeondrmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.2.0-21-generic root=UUID=6f0f8242-c831-45df-af15-efefba5f7edb ro quiet splash vt.handoff=7
RfKill:
 0: phy0: Wireless LAN
  Soft blocked: no
  Hard blocked: no
SourcePackage: linux
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 11/19/2009
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: 2304
dmi.board.asset.tag: To Be Filled By O.E.M.
dmi.board.name: M4A79T Deluxe
dmi.board.vendor: ASUSTeK Computer INC.
dmi.board.version: Rev 1.xx
dmi.chassis.asset.tag: Asset-1234567890
dmi.chassis.type: 3
dmi.chassis.vendor: Chassis Manufacture
dmi.chassis.version: Chassis Version
dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvr2304:bd11/19/2009:svnSystemmanufacturer:pnSystemProductName:pvrSystemVersion:rvnASUSTeKComputerINC.:rnM4A79TDeluxe:rvrRev1.xx:cvnChassisManufacture:ct3:cvrChassisVersion:
dmi.product.name: System Product Name
dmi.product.version: System Version
dmi.sys.vendor: System manufacturer

Revision history for this message
Darxus (darxus) wrote :
Brad Figg (brad-figg)
Changed in linux (Ubuntu):
status: New → Confirmed
Revision history for this message
penalvch (penalvch) wrote :

Darxus, thank you for reporting this and helping make Ubuntu better. With the workaround removed, could you please post the results following https://wiki.ubuntu.com/DebuggingKernelBoot ? As well, if you could also please test the latest upstream kernel available that would be great. It will allow additional upstream developers to examine the issue. Refer to https://wiki.ubuntu.com/KernelMainlineBuilds . Once you've tested the upstream kernel, please remove the 'needs-upstream-testing' tag. This can be done by clicking on the yellow pencil icon next to the tag located at the bottom of the bug description and deleting the 'needs-upstream-testing' text. Please let us know your results.

Thanks in advance.

tags: added: regression-release
tags: added: needs-upstream-testing
Changed in linux (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Darxus (darxus) wrote :
Changed in linux (Ubuntu):
importance: Undecided → Medium
Revision history for this message
Darxus (darxus) wrote :

Following DebuggingKernelBoot gives me basically the same results as just removing the "set gfxpayload..." line. Things work.

Although I noticed I'm able to repeatably get X into an unusable state with a jpeg slideshow. With disk I/O under heavy load (rsyncing gigabytes of source locally), eog and gliv both caused it within a few jpegs. Without load, I pulled up gliv and did a slideshow with no delay, so the images are just flickering by, and in about a minute it reached this state again. The display goes black every few seconds, then shows me a different sample of my desktop. I can switch out to a VT and kill the slidesow application, but X doesn't become responsive again. So I think the driver problem isn't limited to startup.

Revision history for this message
Darxus (darxus) wrote :

Downloaded http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3-precise/linux-image-3.3.0-030300-generic_3.3.0-030300.201203182135_amd64.deb

dpkg -l says it's 32 bit:
ii linux-image-3.3.0-030300-generic 3.3.0-030300.201203182135 Linux kernel image for version 3.3.0 on 32 bit x86 SMP

I even uninstalled and re-installed it to verify that the amd64.deb had a description that says 32 bit x86.

Revision history for this message
Darxus (darxus) wrote :

$ uname -a
Linux dancer 3.3.0-030300-generic #201203182135 SMP Mon Mar 19 01:36:20 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

Same results with the mainline kernel as with the ubuntu kernel. With the grub defaults, X gives me just a dark purple flickery screen. Following the Debugging KernelBoot instructions, it works.

The 32 bit stuff in the package description was apparently only a problem with the discription, since uname says it booted to an x86_64 kernel.

tags: removed: needs-upstream-testing
penalvch (penalvch)
tags: added: needs-bisect
Revision history for this message
penalvch (penalvch) wrote :
Revision history for this message
Darxus (darxus) wrote :

$ uname -a
Linux dancer 3.4.0-030400rc1-generic #201203312035 SMP Sun Apr 1 00:36:22 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

Same. Nothing remotely intelligable after grub with default grub settings, works with DebuggingKernelBoot instructions.

Revision history for this message
penalvch (penalvch) wrote :

Darxus, thank you for testing the mainline kernel. The next step is to perform a kernel bisect in order to identify the offending commit. Could you do so following https://wiki.ubuntu.com/Kernel/KernelBisection ?

description: updated
Revision history for this message
Darxus (darxus) wrote :

Caught it glitching on me, thought I'd upload a snapshot. Not a huge usability problem, but....

Revision history for this message
Darxus (darxus) wrote :

Screenshot was with:

$ uname -a
Linux dancer 3.4.0-030400rc1-generic #201203312035 SMP Sun Apr 1 00:36:22 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

I've been seeing occasional things like this in all the stuff I've tried in Precise.

Revision history for this message
Darxus (darxus) wrote :

I guess I should mention, the Oneric kernel that I'm not having problems with is:

$ uname -a
Linux dancer 3.0.0-17-generic #30-Ubuntu SMP Thu Mar 8 20:45:39 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

That looks like a lot of bisecting. But it's nice that the precise kernel repo contains the full history:

http://kernel.ubuntu.com/git?p=ubuntu/ubuntu-precise.git

Are the packages of all the releases around anywhere? I guess this might be all of them: http://mirror.pnl.gov/ubuntu//pool/main/l/linux/

Revision history for this message
Darxus (darxus) wrote :

Tried the same kernel in Precise that I'm using without problems in Oneric: http://mirror.pnl.gov/ubuntu//pool/main/l/linux/linux-image-3.0.0-17-generic_3.0.0-17.30_amd64.deb

Got the same problem again in Precise with the grub defaults.

Looked at my grub settings for Oneric , no "quiet", "splash" ,or "set gfxpayload...." Sorry I didn't check that sooner.

So, maybe this video card never worked with that stuff with the radeon driver?

$ lspci | grep -i vga
05:00.0 VGA compatible controller: ATI Technologies Inc Barts XT [ATI Radeon HD 6800 Series]

Darxus (darxus)
Changed in linux (Ubuntu):
status: Incomplete → Confirmed
tags: removed: needs-bisect
Revision history for this message
Brad Figg (brad-figg) wrote : Test with newer development kernel (3.2.0-22.35)

Thank you for taking the time to file a bug report on this issue.

However, given the number of bugs that the Kernel Team receives during any development cycle it is impossible for us to review them all. Therefore, we occasionally resort to using automated bots to request further testing. This is such a request.

We have noted that there is a newer version of the development kernel than the one you last tested when this issue was found. Please test again with the newer kernel and indicate in the bug if this issue still exists or not.

You can update to the latest development kernel by simply running the following commands in a terminal window:

    sudo apt-get update
    sudo apt-get dist-upgrade

If the bug still exists, change the bug status from Incomplete to Confirmed. If the bug no longer exists, change the bug status from Incomplete to Fix Released.

If you want this bot to quit automatically requesting kernel tests, add a tag named: bot-stop-nagging.

 Thank you for your help, we really do appreciate it.

Changed in linux (Ubuntu):
status: Confirmed → Incomplete
tags: added: kernel-request-3.2.0-22.35
penalvch (penalvch)
affects: linux (Ubuntu) → xorg (Ubuntu)
Changed in xorg (Ubuntu):
status: Incomplete → New
description: updated
penalvch (penalvch)
tags: added: bot-stop-nagging
removed: kernel-request-3.2.0-22.35
Revision history for this message
Darxus (darxus) wrote :

I'm pretty sure it's a kernel driver issue, since the screen becomes useless immediately after the grub screen goes away.

affects: xorg (Ubuntu) → linux (Ubuntu)
Revision history for this message
Chris Halse Rogers (raof) wrote :

It's definitely a kernel issue.

Ok. It makes more sense that this wasn't a regression, as that would be the first regression in this area that I've seen. At this point the correct thing would be to blacklist in grub; adding a grub-gfxpayload-lists task.

Brad Figg (brad-figg)
Changed in linux (Ubuntu):
status: New → Confirmed
Revision history for this message
Chris Halse Rogers (raof) wrote :

Could you please check that the attached blacklist package successfully blacklists your card, and so makes things work again?

Changed in grub-gfxpayload-lists (Ubuntu):
status: New → Incomplete
Revision history for this message
Darxus (darxus) wrote :

Works.

Confirmed the problem still existed.

Installed grub-gfxpayload-lists_0.6_amd64.deb.

Confirmed grub defaults result in X working just fine.

Between grub and X, I get a black screen with a cursor blinking in the upper left, which I think is what you expect.

Thanks.

Changed in grub-gfxpayload-lists (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package grub-gfxpayload-lists - 0.6

---------------
grub-gfxpayload-lists (0.6) precise; urgency=low

  * Blacklist Radeon HD 6800 (LP: #971204)
 -- Christopher James Halse Rogers <email address hidden> Wed, 11 Apr 2012 12:02:32 +0800

Changed in grub-gfxpayload-lists (Ubuntu):
status: Confirmed → Fix Released
penalvch (penalvch)
tags: added: bios-outdated-3503
penalvch (penalvch)
no longer affects: linux (Ubuntu)
To post a comment you must log in.