Graphics corruption after hibernate with Intel GMA 3150 chipset

Bug #745304 reported by Seth Forshee
170
This bug affects 38 people
Affects Status Importance Assigned to Milestone
xf86-video-intel
Fix Released
Medium
linux (Ubuntu)
Medium
Seth Forshee
Natty
Medium
Seth Forshee
Oneiric
Medium
Unassigned
xserver-xorg-video-intel (Ubuntu)
Medium
Unassigned
Natty
Medium
Unassigned
Oneiric
Undecided
Unassigned

Bug Description

Binary package hint: xserver-xorg-video-intel

I have three netbooks using the Atom N450 processor with GMA 3150 graphics. All of these systems exhibit graphics corruption after resuming from hibernate. The leftmost 3/4 of the screen is severely corrupted, and the right-most 1/4 of the screen is rendered correctly. The mouse pointer is drawn correctly no matter where it is on the screen, even when it is over the corrupted area. This bug is 100% reproducible and happens on both i386 and amd64 builds.

I'm not sure if this is the right package to report this bug against, but hopefully it will serve as a starting point.

ProblemType: Bug
DistroRelease: Ubuntu 11.04
Package: xserver-xorg-video-intel 2:2.14.0-4ubuntu4
ProcVersionSignature: Ubuntu 2.6.38-7.39-generic 2.6.38
Uname: Linux 2.6.38-7-generic i686
Architecture: i386
CompizPlugins: [core,bailer,detection,composite,opengl,decor,mousepoll,vpswitch,regex,animation,snap,expo,move,compiztoolbox,place,grid,imgpng,gnomecompat,wall,ezoom,workarounds,staticswitcher,resize,fade,unitymtgrabhandles,scale,session,unityshell]
DRM.card0.LVDS.1:
 status: connected
 enabled: enabled
 dpms: On
 modes: 1024x600
 edid-base64: AP///////wAiZOkDO/IAAA4UAQOAFg14CoA2ml5dkSggT1QAAAABAQEBAQEBAQEBAQEBAQEB7BMA4kBYUCBdIxUE3IEAAAAZAAAA/gAAAAAAAAAAAAAAAAAAAAAA/ABIU0QxMDBJRlcxCiAgAAAAEAAKICAgICAgICAgICAgACg=
DRM.card0.VGA.1:
 status: disconnected
 enabled: disabled
 dpms: Off
 modes:
 edid-base64:
Date: Tue Mar 29 16:30:18 2011
DistUpgraded: Fresh install
DistroCodename: natty
DistroVariant: ubuntu
GraphicsCard:
 Intel Corporation N10 Family Integrated Graphics Controller [8086:a011] (prog-if 00 [VGA controller])
   Subsystem: ASUSTeK Computer Inc. Device [1043:83ac]
   Subsystem: ASUSTeK Computer Inc. Device [1043:83ac]
InstallationMedia: Ubuntu 11.04 "Natty Narwhal" - Alpha i386 (20110302)
MachineType: ASUSTeK Computer INC. T101MT
ProcEnviron:
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.38-7-generic root=UUID=ae928423-20e8-4f64-9921-f3bb2d909977 ro quiet splash vt.handoff=7
Renderer: Unknown
SourcePackage: xserver-xorg-video-intel
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 03/26/2010
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: 0503
dmi.board.asset.tag: To Be Filled By O.E.M.
dmi.board.name: T101MT
dmi.board.vendor: ASUSTeK Computer INC.
dmi.board.version: x.xx
dmi.chassis.asset.tag: 0x00000000
dmi.chassis.type: 10
dmi.chassis.vendor: ASUSTeK Computer INC.
dmi.chassis.version: x.x
dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvr0503:bd03/26/2010:svnASUSTeKComputerINC.:pnT101MT:pvrx.x:rvnASUSTeKComputerINC.:rnT101MT:rvrx.xx:cvnASUSTeKComputerINC.:ct10:cvrx.x:
dmi.product.name: T101MT
dmi.product.version: x.x
dmi.sys.vendor: ASUSTeK Computer INC.
version.compiz: compiz 1:0.9.4git20110322-0ubuntu5
version.libdrm2: libdrm2 2.4.23-1ubuntu5
version.libgl1-mesa-glx: libgl1-mesa-glx 7.10.1-0ubuntu3
version.xserver-xorg: xserver-xorg 1:7.6~3ubuntu11
version.xserver-xorg-video-ati: xserver-xorg-video-ati 1:6.14.0-0ubuntu4
version.xserver-xorg-video-intel: xserver-xorg-video-intel 2:2.14.0-4ubuntu4
version.xserver-xorg-video-nouveau: xserver-xorg-video-nouveau 1:0.0.16+git20110107+b795ca6e-0ubuntu6

Revision history for this message
Seth Forshee (sforshee) wrote :
Revision history for this message
Seth Forshee (sforshee) wrote :

Attaching a photo of the corruption.

Changed in xserver-xorg-video-intel:
importance: Unknown → Medium
status: Unknown → Confirmed
Revision history for this message
Bryce Harrington (bryce) wrote :

Thanks for upstreaming the bug.

Changed in xserver-xorg-video-intel (Ubuntu):
status: New → Triaged
importance: Undecided → Low
importance: Low → Medium
bugbot (bugbot)
tags: added: corruption
tags: added: resume
Revision history for this message
Bryce Harrington (bryce) wrote :

Based on the two patches posted upstream, I wonder if this bug report is a dupe of or related to bug #686388

Revision history for this message
Seth Forshee (sforshee) wrote :

I'm just getting ready to test those same two patches to see if they fix this issue. Unfortunately when I tested earlier today I missed that both were needed and only took the second one, which lead to an oops during boot. I should have some results within the hour.

Revision history for this message
Seth Forshee (sforshee) wrote :

When trying discovered that on the test machine I was using all kernels are working now, even ones that didn't work previously. Another machine that previously exhibited the issue works fine now as well. I guess something must have been updated in userland that fixed the issue.

I have a third machine that hasn't been updated recently, but after installing newer kernels onto it I am seeing a hard lockup very early in boot coming out of hibernate (with or without the i915 patches in place).

I'll keep trying to test the kernel patches, but I'm very curious what changed in userspace to fix the problem.

Revision history for this message
Seth Forshee (sforshee) wrote :

The kernel patches on bug #686388 don't fix the issue.

I'm looking through the updates available for the machine that is still exhibiting this issue. One update is to libdrm-intel1, with the only change being:

  commit 36d4939343d8789d9066f7245fa2d4fe69119dd8
  Author: Chris Wilson <email address hidden>
  Date: Mon Feb 14 09:39:06 2011 +0000

      intel: Remember named bo

      ... and if asked to open a bo by the same global name, return a fresh
      reference to the previously allocated buffer.

      Signed-off-by: Chris Wilson <email address hidden>

Any idea whether or not this might make a difference? I'm going to try backing it out on one of the working machines to see the results.

Revision history for this message
Seth Forshee (sforshee) wrote :

I finally tracked down that the issue is fixed by upgrading grub-common and grub-pc from 1.99~rc1-6ubuntu1 to 1.99~rc1-8ubuntu1. What seems to be fixing it is some changes to check for hardware support before using gfxpayload=keep. I verified that with the old grub I got gfxpayload=keep, and with the new grub I get gfxpayload=text.

Changed in xserver-xorg-video-intel (Ubuntu):
status: Triaged → Invalid
Revision history for this message
Seth Forshee (sforshee) wrote :

I looked at the grub changes a little closer. I think it's just falling back to text mode by accident. It's looking for a blacklist file that isn't there, and when it can't find the file it uses text mode. If I install grub-gfx-payload-lists it goes back to graphical mode. The upstream guys say that the graphical handoff should be able to work.

I'm setting the status back to triaged. It's looking likely the problem might be in the kernel though, so I'm going to take a closer look at what's going on in the driver to see if I can figure anything out.

Changed in xserver-xorg-video-intel (Ubuntu):
status: Invalid → Triaged
Revision history for this message
Seth Forshee (sforshee) wrote :

Created a kernel task as I'm fairly certain at this point that the problem is in the kernel.

It seems to be a problem with the graphics setup from the BIOS differing from the kernel, and the driver doesn't handle it properly.

Changed in linux (Ubuntu):
status: New → Triaged
assignee: nobody → Seth Forshee (sforshee)
importance: Undecided → Medium
status: Triaged → In Progress
Revision history for this message
Seth Forshee (sforshee) wrote :

Attaching natty backport of proposed upstream patch. I've tested the patch against mainline and am currently building a kernel to test the backport.

I'll also close out the xserver-xorg-video-intel task since this is now confirmed to be a kernel bug.

Changed in xserver-xorg-video-intel (Ubuntu):
status: Triaged → Invalid
Changed in xserver-xorg-video-intel:
status: Confirmed → Fix Released
Revision history for this message
megathon (megathon) wrote :

This bug still affects me. I'm here on an EeePC 1005PE with Natty beta2.

kernel 2.6.38.8.22
grub-pc & grub-common 1.99~rc1-13ubuntu1
xserver-xorg-video-intel 2.14.0-4ubuntu7

Revision history for this message
Seth Forshee (sforshee) wrote :

@megathon, this fix isn't applied to the natty kernel yet. It should be included in the first kernel update after release.

Tim Gardner (timg-tpi)
Changed in xserver-xorg-video-intel (Ubuntu Oneiric):
status: New → Invalid
Seth Forshee (sforshee)
Changed in linux (Ubuntu Oneiric):
status: New → In Progress
Changed in linux (Ubuntu Natty):
milestone: none → natty-updates
Revision history for this message
Rodrigo López Dato (rlopezdato) wrote :

This happens to me as well on my 1005HA on Natty beta2 with all updates.

Revision history for this message
Seth Forshee (sforshee) wrote :

The fix is currently sitting in the queue for the next stable kernel release and should be included in an update shortly after the natty release.

Revision history for this message
Seth Forshee (sforshee) wrote :

Fix applied to oneiric with rebase to 2.6.39-rc5.

Changed in linux (Ubuntu Oneiric):
importance: Undecided → Medium
status: In Progress → Fix Committed
Revision history for this message
Seth Forshee (sforshee) wrote :

SRU Justification

Impact: Graphics corruption after resuming from hiberante on some machines with Intel GMA 3150 graphics, others potentially affected as well.

Fix: Upstream patch to force output registers to known state in resume hanlder.

Test case: Hibernate affected machines and observe the display after resuming.

Tim Gardner (timg-tpi)
Changed in linux (Ubuntu Natty):
status: In Progress → Fix Committed
Revision history for this message
Martin Pitt (pitti) wrote : Please test proposed package

Accepted linux into natty-proposed, the package will build now and be available in a few hours. Please test and give feedback here. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you in advance!

Revision history for this message
Brad Figg (brad-figg) wrote :

The commit for this issue came in via an early application of a stable upstream patch. As such it is not subject to the standard bug verification process.

tags: added: verification-done-natty
Revision history for this message
Davin Gibb (davin-gibb) wrote :

can confirm fix for me, running proposed linux-generic (2.6.38-9)

Revision history for this message
Carl Milette (carl-milette) wrote :

confirmed that kernel 2.6.38-9 from proposed fixes the problem on three Dell Latitude 2110, one Dell Mini 10 and one Acer Aspire One ZG8 that were affected and reported on duplicate 754969

Revision history for this message
Eduardo Bergavera (edbergavera) wrote :

Hi Davin & Carl,

Can you show us the steps to do this?

Many thanks.

Revision history for this message
Daniel Manrique (roadmr) wrote :

Eduardo:

Please be aware that pre-released updates have a slight possibility of not working well (that's why they're PRE release, after all).

Your safest bet, if it's not 100% vital for you to have the hibernate functionality right now, is to wait until the 2.6.38-9 kernel makes it into official updates, when that happens, update manager will automatically offer to install it for you. It should only be a few days.

That said, if you want to try your hand at pre-released updates:

1- Go into software center (it has an icon on the Unity panel, on the left side).
2- On the menu, go to Edit -> Software Sources.
3- On the Updates tab, check "Pre-released updates (natty-proposed)".
4- Close the software sources dialog, let software center perform its update process, it will tell you when it's finished.
5- Launch Update Manager.
6- I strongly suggest you uncheck all the updates EXCEPT for the linux-image ones which will install the 2.6.38-9 kernel.
7- Go through the update, restart the system if desired.
8- Once you're up and running with the new kernel, I recommend you disable the pre-released updates by following steps 1-3 and UNchecking natty-proposed. Unless you have a specific reason to want pre-release stuff, it's safer to do it this way.

Revision history for this message
Eduardo Bergavera (edbergavera) wrote :

Hi Daniel,

Thanks for the info. You're correct that the safest bet would be to wait until the official kernel patch makes its way into repo.

Revision history for this message
David Petrizze (dpetrizze) wrote :

I confirm a fix with kernel 2.6.38-9 on hp mini 110, but unfortunately it somehow disables wireless networking.

Revision history for this message
Paul Aitken (paaitken) wrote :

Updated to kernel 2.6.38-10 from natty-proposed (-9 wasn't there?). Problem was not fixed. Thinkpad X61.

Revision history for this message
Seth Forshee (sforshee) wrote :

@Paul, 2.6.38-9 had a USB regression and has been replaced by -10, which will also contain the fix. If that kernel doesn't fix the problem for you then your machine must be suffering from a different issue. Please open a terminal and run 'ubuntu-bug linux' to file a new bug report. Thanks!

Revision history for this message
Paul Aitken (paaitken) wrote :

Thanks Seth. When I run 'ubuntu-bug linux' I get an error window: Title is "Problem in linux-image-2.6.38-10-generic" and the message "The problem cannot be reported. This is not a genuine ubuntu package "

Revision history for this message
Marc Legris (maaarc-deactivatedaccount-deactivatedaccount-deactivatedaccount-deactivatedaccount-deactivatedaccount) wrote :

@Paul -- I've run into the same issue, run "apt-get update" and then "ubuntu-bug linux"

Revision history for this message
Paul Aitken (paaitken) wrote :

Thanks Marc. I think the problem was -8 still on the system. I removed it, and was able to file a new bug as directed by Seth. Same problem as described in this bug. https://bugs.launchpad.net/ubuntu/+source/linux/+bug/797478

Revision history for this message
George Cheyne (georgm) wrote :

I can confirm that installing 2.6.38-10 fixed the bug on my eeepc 1005PE.
This is my first go with Ubuntu and the hibernation not resuming was going to be a showstopper!
Cheers

Revision history for this message
Eduardo Bergavera (edbergavera) wrote : Re: [Bug 745304] Re: Graphics corruption after hibernate with Intel GMA 3150 chipset

I can confirm this fixed the problem of hibernation after upgrading
the kernel to 2.6.39-0.

Specs:
Lenovo S10-3
Ubuntu 11.04

On Wed, Jun 22, 2011 at 2:28 PM, Launchpad Bug Tracker
<email address hidden> wrote:
> ** Branch linked: lp:ubuntu/linux-ti-omap4
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/745304
>
> Title:
>  Graphics corruption after hibernate with Intel GMA 3150 chipset
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/xserver-xorg-video-intel/+bug/745304/+subscriptions
>

--
Eduardo D. Bergavera, Jr.
Instructor I
Davao del Norte State College
Panabo City, Philippines 8105
Tel. #: (084) 628-4301
Email: <email address hidden>
OpenID: https://launchpad.net/~edbergavera
ACM Professional Member: http://member.acm.org/~edbergavera

Revision history for this message
sasha1024 (sasha1024) wrote :

Just as a notice: the described problem can be workaround by doing sleep (aka standby aka in-memory-suspend) after resuming from hibernation.

I.e. the system is restored from hibernation, the screen is broken (only the right 1/10 of the screen works). Then press Ctrl+Alt+F2, type your login, Enter, type your password, Enter, type "sudo pm-suspend", Enter (then your password again and Enter again if your sudo is configured to ask password), wait until it falls asleep, then move your mouse to wake it up -- and VOILA -- the screen now works ok.

Revision history for this message
Vincenzoml (vincenzoml) wrote :

2011/7/9 sasha1024 <email address hidden>:
> Just as a notice: the described problem can be workaround by doing sleep
> (aka standby aka in-memory-suspend) after resuming from hibernation.
>
> I.e. the system is restored from hibernation, the screen is broken (only
> the right 1/10 of the screen works). Then press Ctrl+Alt+F2, type your
> login, Enter, type your password, Enter, type "sudo pm-suspend", Enter
> (then your password again and Enter again if your sudo is configured to
> ask password), wait until it falls asleep, then move your mouse to wake
> it up -- and VOILA -- the screen now works ok.
>

"VOILA" does not describe the process :) However, one can just close
and reopen the laptop screen to achieve the same effect, that's much
easier than logging into a console.

OTOH, I know these comments don't help but... is there any hope to see
this regression fixed in natty? It had been promised that it would
have been quick, it's three months already, over six.

Revision history for this message
Seth Forshee (sforshee) wrote :

We've had this fix in the proposed kernels for quite some time now. The problem has been that there were a number of regressions in the upstream 2.6.38 stable releases, which translated to regressions in our proposed kernel, and these have prevented us from releasing the proposed kernels until they are sorted out. Normally it should't take this long to get a fix released. Thanks for your patience!

This bug should be fixed in oneiric however, so I'm updating the status there.

Changed in linux (Ubuntu Oneiric):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (26.1 KiB)

This bug was fixed in the package linux - 2.6.38-10.46

---------------
linux (2.6.38-10.46) natty-proposed; urgency=low

  [ Steve Conklin ]

  * Release Tracking Bug
    - LP: #802464

  [ Upstream Kernel Changes ]

  * Revert "put stricter guards on queue dead checks"
  * Revert "fix oops in scsi_run_queue()"

linux (2.6.38-10.45) natty-proposed; urgency=low

  [ Upstream Kernel Changes ]

  * Revert "af_unix: Only allow recv on connected seqpacket sockets."

linux (2.6.38-10.44) natty-proposed; urgency=low

  [ Steve Conklin ]

  * Release Tracking Bug
    - LP: #792013

  [ Robert Nelson ]

  * SAUCE: omap3: beagle: detect new xM revision B
    - LP: #770679
  * SAUCE: omap3: beagle: detect new xM revision C
    - LP: #770679
  * SAUCE: omap3: beagle: if rev unknown, assume xM revision C
    - LP: #770679

  [ Stefan Bader ]

  * Include nls_iso8859-1 for virtual images
    - LP: #732046

  [ Thomas Schlichter ]

  * SAUCE: vesafb: mtrr module parameter is uint, not bool
    - LP: #778043

  [ Tim Gardner ]

  * Revert "SAUCE: acpi battery -- move first lookup asynchronous"
    - LP: #775809
  * updateconfigs after update to v2.6.38.6

  [ Upstream Kernel Changes ]

  * Revert "ALSA: hda - Fix pin-config of Gigabyte mobo"
    - LP: #780546
  * Revert "[SCSI] Retrieve the Caching mode page"
    - LP: #788691
  * Revert "USB: xhci - fix unsafe macro definitions"
  * Revert "USB: xhci - fix math in xhci_get_endpoint_interval()"
  * Revert "USB: xhci - also free streams when resetting devices"
  * ath9k_hw: fix stopping rx DMA during resets
    - LP: #775809
  * netxen: limit skb frags for non tso packet
    - LP: #775809
  * ath: add missing regdomain pair 0x5c mapping
    - LP: #775809
  * block, blk-sysfs: Fix an err return path in blk_register_queue()
    - LP: #775809
  * p54: Initialize extra_len in p54_tx_80211
    - LP: #775809
  * qlcnic: limit skb frags for non tso packet
    - LP: #775809
  * nfsd4: fix struct file leak on delegation
    - LP: #775809
  * nfsd4: Fix filp leak
    - LP: #775809
  * virtio: Decrement avail idx on buffer detach
    - LP: #775809
  * x86, gart: Set DISTLBWALKPRB bit always
    - LP: #775809
  * x86, gart: Make sure GART does not map physmem above 1TB
    - LP: #775809
  * intel-iommu: Fix use after release during device attach
    - LP: #775809
  * intel-iommu: Unlink domain from iommu
    - LP: #775809
  * intel-iommu: Fix get_domain_for_dev() error path
    - LP: #775809
  * drm/radeon/kms: pll tweaks for r7xx
    - LP: #775809
  * drm/nouveau: fix notifier memory corruption bug
    - LP: #775809
  * drm/radeon/kms: fix bad shift in atom iio table parser
    - LP: #775809
  * drm/i915/tv: Remember the detected TV type
    - LP: #775809
  * tty/n_gsm: fix bug in CRC calculation for gsm1 mode
    - LP: #775809
  * serial/imx: read cts state only after acking cts change irq
    - LP: #775809
  * ASoC: Fix output PGA enabling in wm_hubs CODECs
    - LP: #775809
  * ASoC: codecs: JZ4740: Fix OOPS
    - LP: #775809
  * ALSA: hda - Add a fix-up for Acer dmic with ALC271x codec
    - LP: #775809
  * ahci: don't enable port irq before handler is registered
    - LP: #775809
  * libata: Implement ATA_FLAG_NO_...

Changed in linux (Ubuntu Natty):
status: Fix Committed → Fix Released
Revision history for this message
sasha1024 (sasha1024) wrote :

Vincenzoml (vincenzoml) wrote on 2011-07-11:
> "VOILA" does not describe the process :) However, one can just close
> and reopen the laptop screen to achieve the same effect, that's much
> easier than logging into a console.

No (at least, for me), because in the "please enter your password to unlock" state closing the laptop screen doesn't cause netbook to sleep (closing the laptop screen causes standby only when already logged in). So, to make your laptop sleep after hibernation, you anyway should somehow first log-in (and doing it in text-mode is IMO easier).

Anyway, nowadays hibernation seems to work fine for me.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.