Bug 70452 - [NV43] Graphical corruption after resume from suspend or hibernation
Summary: [NV43] Graphical corruption after resume from suspend or hibernation
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/nouveau (show other bugs)
Version: 7.7 (2012.06)
Hardware: x86 (IA32) Linux (All)
: medium major
Assignee: Nouveau Project
QA Contact: Xorg Project Team
Depends on:
Reported: 2013-10-14 13:46 UTC by Moi Jaiunvelo
Modified: 2019-12-04 08:38 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:

Kernel log with 3.11 kernel (55.75 KB, text/plain)
2013-10-14 13:46 UTC, Moi Jaiunvelo
no flags Details
Situation before suspending to RAM (300.37 KB, image/png)
2013-10-14 13:47 UTC, Moi Jaiunvelo
no flags Details
Situation after resuming and resizing windows (296.22 KB, image/png)
2013-10-14 13:48 UTC, Moi Jaiunvelo
no flags Details

Description Moi Jaiunvelo 2013-10-14 13:46:29 UTC
Created attachment 87598 [details]
Kernel log with 3.11 kernel

These days corruption is observed on graphical applications after suspend on my system. I suspect a problem with Nouveau driver because switching to Nvidia proprietary driver fixes the issue (my video device is a Nvidia Quadro FX 550).

On fresh boot, everything works very well. Then I suspend the system to RAM or
I hibernate it. When resuming the system works well as well but graphical applications show slight annoying corruption such as blurring of letters or switch between letters. Currently for instance h is replaced by k. When I close
my session and thus restart X, the issue is no longer observed.

I have uploaded screen captures of before suspend vs after suspend situations.

This happens with a 3.10 kernel (3.10.11-1, 3.10.11-2 and 3.10.11-3 under debian/testing) and I have also tested with a 3.11 kernel (3.11-trunk-686-pae, 3.11-1~exp1 (2013-09-12) from debian/experimental) and the problem persists. I attached a dmesg kernel log taken with the 3.11 kernel.

It may be interesting to look at the line 882 of the kernel (one line before the end):
[  301.125088] nouveau E[   PFIFO][0000:01:00.0] DMA_PUSHER - ch 1 [Xorg[2759]] get 0xbeef0200 put 0x0001a538 state 0xc002018c (err: MEM_FAULT) push 0x00000000

Supplementary information :
Most of the graphical corruptions can be overcome by restarting impacted applications (in my case : openbox/tint2 and iceweasel). Moreover the appearance of corruptions is erratic so it may be hard to reproduce them. The most repetable corruption on my system is the corruption of iceweasel's tabs after resizing the window : I did not succeed in  suspending/resuming the system without experiencing this corruption.

Comment 1 Moi Jaiunvelo 2013-10-14 13:47:24 UTC
Created attachment 87599 [details]
Situation before suspending to RAM
Comment 2 Moi Jaiunvelo 2013-10-14 13:48:12 UTC
Created attachment 87600 [details]
Situation after resuming and resizing windows
Comment 3 Moi Jaiunvelo 2013-10-14 13:52:33 UTC
PS : Please note that I first filed a bug in Debain before filing here.
Comment 4 Ilia Mirkin 2013-11-26 03:57:37 UTC
Was your libdrm compiled with gcc-4.8? If so, make sure to get libdrm 2.4.48 or later.
Comment 5 Moi Jaiunvelo 2013-11-26 08:17:57 UTC
I ignore against which gcc version my libdrm was compiled but my libdrm
version is 2.4.46-3 (I run debian/testing) :

Versions of packages xserver-xorg-video-nouveau depends on:
ii  libc6                                  2.17-93
ii  libdrm-nouveau2                        2.4.46-3
ii  libdrm2                                2.4.46-3
ii  libudev1                               204-5
ii  xserver-xorg-core [xorg-video-abi-14]  2:1.14.3-3

I am going to backport the 2.4.49-1 from debian/sid to test your guess.

Thanks for your reply,

2013/11/26 <bugzilla-daemon@freedesktop.org>

>   *Comment # 4 <https://bugs.freedesktop.org/show_bug.cgi?id=70452#c4> on
> bug 70452 <https://bugs.freedesktop.org/show_bug.cgi?id=70452> from Ilia
> Mirkin <imirkin@alum.mit.edu> *
> Was your libdrm compiled with gcc-4.8? If so, make sure to get libdrm 2.4.48 or
> later.
>  ------------------------------
> You are receiving this mail because:
>    - You are on the CC list for the bug.
>    - You reported the bug.
Comment 6 Moi Jaiunvelo 2013-11-26 14:03:17 UTC
I tried to backport libdrm from debian/sid and it fixed the graphical corruption. More precisely for users who would like to reproduce it, I backported libdrm2, libdrm-intel1, libdrm-radeon1 and libdrm-nouveau2 from debian/sid to have them in 2.4.49-1 version.

Start-Date: 2013-11-26  10:49:54
Commandline: apt-get dist-upgrade
Upgrade: libdrm2:i386 (2.4.46-4, 2.4.49-1)
End-Date: 2013-11-26  10:49:58

Start-Date: 2013-11-26  10:55:27
Commandline: apt-get dist-upgrade
Upgrade: libdrm-intel1:i386 (2.4.46-4, 2.4.49-1), libdrm-radeon1:i386 (2.4.46-4, 2.4.49-1), libdrm-nouveau2:i386 (2.4.46-4, 2.4.49-1)
End-Date: 2013-11-26  10:55:34

Thank you for the advice,
Comment 7 Martin Peres 2019-12-04 08:38:13 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-nouveau/issues/64.

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.