[i945] Heavy screen and font corruption when free memory is low on GMA950

Bug #820881 reported by Märt Põder on 2011-08-04
108
This bug affects 19 people
Affects Status Importance Assigned to Milestone
xserver-xorg-video-intel (Ubuntu)
Undecided
Unassigned

Bug Description

Intel Corporation 82945G/GZ Integrated Graphics Controller (rev 02)
Ubuntu 11.04 package version 2:2.14.0-4ubuntu7.2 (was the same for 2:2.14.0-4ubuntu7.1)

Heavy screen corruption appears after some ~12h usage. It is similar or probably includes font corruption reported in https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/745608, but certain other GUI elements, for example desktop background are corrupt too. Corruption appears after logging in and out to system between different users using different applications in different screen modes, but I haven't fount a clear recipe how to produce it.

Märt Põder (boamaod) wrote :
Märt Põder (boamaod) wrote :

I add the links to related pictures in another bug report.

Heavy corruption of desktop and fonts:
     https://launchpadlibrarian.net/76389588/Medium%20corrpution%20desktop.png
Medium corruption:
     https://launchpadlibrarian.net/76389610/Heavy%20corruption%20desktop.png

I also tried fixing the problem with some workarounds and applied

Section "Device"
    Identifier "Intel"
    Driver "intel"
    Option "Tiling" "false"
EndSection

in /etc/X11/xorg.conf. This seemed to protect the desktop from corruption, but still corrupted the Ubuntu menu bar (see the image attached to the report).

If I applied DebugWait=true from xorg.conf, the corrution appeared the same as before.

Märt Põder (boamaod) on 2011-08-04
summary: - Heavy screen and font corruption on GMA950
+ [i945] Heavy screen and font corruption on GMA950

The kernel reported in apport was Linux 2.6.38-10-generic .

tabbernuk:
Do you also get corruption when you use a non-compositing desktop (i.e. no desktop effects, old fashioned metacity)?

Sitsofe Wheeler (sitsofe) wrote :

tabbernuk:
There is speculation that your issue is tiling related and you would need the _kernel_ patch from http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e28f87116503f796aba4fb27d81e2c3d81966174 to resolve this issue (it was included in the 3.0 kernel)... I'm not quite sure how you can easily test out this patch without touching the rest of your system though.

Märt Põder (boamaod) wrote :

It seems the bug appears only when more than one users are simultaneously logged into the system. At least logging into system one user at time seems to help a lot in avoiding the bug. This may also be the reason why bug is not common for most users and not so easily detected (according to counter.li.org 41.67% of Linux users have only one account in their system).

It also seems that bug resolves when I log all the users out and start a new session in the situation where no users are logged in. This is even a bit strange, because the screen is corrupt even in gdm login screen, which should not depend on running sessions as I (maybe incorrectly) presume.

Sitsofe: I think I could test 3.0 kernel from Ubuntu Oneiric alpha Live CD. If I have time and possibility to do that on my computer, I'll try that out.

Christian Moeller (gr8boy) wrote :

I get the exact same screen corruption on a thin client system with 512 MB system memory. The corruption occurs when running applications locally on the thin client at the moment when memory starts running low.

I know the 82945G/GZ uses shared system memory - can this be part of the issue?

Changed in xserver-xorg-video-intel (Ubuntu):
status: New → Confirmed
bugbot (bugbot) on 2011-08-14
tags: added: corruption
Märt Põder (boamaod) wrote :

Tried with Ubuntu Oneiric beta and the corruption is still there.

The versions in beta are:
   xserver-xorg-video-intel 2:2.15.901-1ubuntu2
   linux-headers-generic 3.0.0.9.10

I attach the picture of the corruption, which seems to be of the same pattern as before.

Märt Põder (boamaod) wrote :

Christian: The hypothesis of memory running low causing the problems seems to cohere with the symptoms, because for me too, the corruption appears when lots of applications have been opened for one user or many users logged in at the same time.

Simon Butcher (sbutcher) wrote :

Some observations:
running on a 1GB RAM machine, i see this corruption in a unity3d session while i still have plenty (250MB) of free RAM.
The bug is particularly prevalent on Unity3D menus and text.
I cannot reproduce this when running uncomposited Unity2D session

Christian-Rolf Grün (kiki-u) wrote :

Corruption of desktop background (often), application windows (rarer) and Firefox/Thunderbird fonts (rarest) on 2GB RAM, especially during and after high memory usage. Corruption occurs in Unity3D, Gnome 3 Shell, and Gnome Classic.

zemerica (zemerica) wrote :

I have this problem in Unity 2D, 3D, Gnome Classic (which are all I've tried)
I've tried modifying xorg.conf in several different ways, to no avail: tiling-false, debugwait true. It's gotten worse with Oneric - I had some Video RAM ## solution in xorg.conf that I'll post the link to if I find it that seemed to do the trick in Natty. After debugwait-true, the corruption seemed to change a little bit such that there were no longer missing or unwritten pieces of fonts, but the overall boxy corruption issues remained. I have additional ram en route and will update if this helps the problem. for what it's worth...

zemerica (zemerica) wrote :

update: I formerly had 512Mb ram - I installed another 2G ram today and no problems where before it was to the point my system was nearly unusuable. Yay! :)

Sitsofe Wheeler (sitsofe) wrote :

zermerica:
Hmm! How long did it take for the corruption to appear back when you had 512Mbytes of RAM (was it after 12 hours as in the original bug report)? Additionally, now you have the extra memory, can you reliably reproduce the error by setting mem=512M kernel boot parameter temporarily?

tabbernuk:
Were you able to reproduce this error using a LiveCD or does it only occur on an installed system?

zemerica (zemerica) wrote :

SoW - it varied in timing but I don't think I ever made it 12 hours - 2 hours max I'd say... sometimes almost immediately - but it would always be when I was maxing my mem-usage

I'm pretty new to this ... I tried rebooting, holding shift to enter the grub loader & editing it by adding a line "set mem=512M" but that didn't seem to take, according to my system monitor which still registers 2.5G - I'd be more than happy to try again, but would you be willing to give me a bit more specific instruction as how to do it, I'd be grateful :) ?

zemerica (zemerica) wrote :

OK - condition reproduced - I changed the mem as per SoW's instructions, opened a bunch of programs (ff, libre office) and watched the mem use on the system monitor. At about 80% swap (mem 55%ish?), the main menu text became corrupted. I continued to open tabs with active content in ff to increase my mem usage... at 69.9% mem, 96.9% swap, it was increasingly sluggish but the desktop didn't really corrupt until I minimized FF. And though mem use went down when I closed programs, the corruption was persistent.

summary: - [i945] Heavy screen and font corruption on GMA950
+ [i945] Heavy screen and font corruption when free memory is low on
+ GMA950
Sitsofe Wheeler (sitsofe) wrote :

zemerica:
OK that confirms the other poster's comments. What is the output of
/sbin/lspci -nn | grep VGA
on that machine and roughly how many minutes did it take before the corruption appeared?

zemerica (zemerica) wrote :

00:02.0 VGA compatible controller [0300]: Intel Corporation 82915G/GV/910GL Integrated Graphics Controller [8086:2582] (rev 04)

so yeah, it's not *exactly* the same hardware as per the bug report but it is exactly the same symptom and probably similar enough causes... For full confirmation someone would have to test on the exact system... mine's 910 vs. 950 GMA & 82915 vs. 82945 - anyhow, it is what it is and I hope it is still helpful :)

Mine usually started to corrupt within 20 mins but varied with what I was doing - java game & opening multiple tabs, etc... If I wasn't doing much (surfing, checking e-mail) it would go much longer

Rui Moreira (rui-f-moreira) wrote :

I'm experiencing this problem since I upgraded from 11.04 to 11.10.
I thought it had been a bad upgrade and I then did a fresh install and the problem remains.
I've also experienced this on both Kde and Gnome sessions.
Sessions without acceleration like Ubuntu 2D are not affected.
My VGA card is :
VGA compatible controller: Intel Corporation 82915G/GV/910GL Integrated Graphics Controller (rev 04)

Note: I'm not going back to Windows over this! I'd rather poke myself with a burning stick.

Sitsofe Wheeler (sitsofe) wrote :

(Subscribing Rui Moreira)

Rui:
Can you reproduce this if you immediately disable swap after you finish booting (i.e.
sudo swapoff -a
)

Also, how much memory do you have in the machine?

To anyone who stumbles on this bug report:
If you are posting comments on launchpad bug reports that affect you, please think about subscribing yourself/pressing the "this bug affects me too link" - someone else might need to follow up on your comment :-). Thank you!

Rui Moreira (rui-f-moreira) wrote :

Hi, Thanks for the prompt help. I confirm that after 'sudo swapoff -a' the problem is gone.
System info shows memory size 741MB. I uncovered the PC and it has 2X256MB+2X128MB.
So, running Ubuntu with a lower swap size might help until there is a final solution for this?

Sitsofe Wheeler (sitsofe) wrote :

Rui:
You're welcome. I don't know if running with less swap will help but it is interesting that no swap seems to hide the problem completely.

Can people the other people subscribed to this bug also reproduce this problem when using a LiveCD and do they find that running a system with swap disabled prevents the problem too?

Sean Channel (sean-channel) wrote :

I get font corruption in an i915 both with 512M and after upgrade to 2G memory and no swap in either case.

Only adding the 'debugwait' fix makes the font corruption go away for me in either Unity or Cinnamon desktop.

Sitsofe,

I experience this problem in Oneiric:

cat /proc/version
Linux version 3.0.0-19-generic (buildd@vernadsky) (gcc version 4.6.1 (Ubuntu/Linaro 4.6.1-9ubuntu3) ) #33-Ubuntu SMP Thu Apr 19 19:05:57 UTC 2012

dpkg -l | grep xserver-xorg\
ii xserver-xorg 1:7.6+7ubuntu7.1 X.Org X server

dpkg -l | grep intel
ii libdrm-intel1 2.4.26-1ubuntu1 Userspace interface to intel-specific kernel DRM services -- runtime
ii xserver-xorg-video-intel 2:2.15.901-1ubuntu2.1 X.Org X server -- Intel i8xx, i9xx display driver

lspci -nn | grep VGA
00:02.0 VGA compatible controller [0300]: Intel Corporation 82945G/GZ Integrated Graphics Controller [8086:2772] (rev 02)
cat /proc/version

I can easily reproduce the problem instantly after boot when running bonnie++ benchmarks while switching between multiple X servers via Ctrl/Alt F7-F12, given the following lightdm config (I am logged into one session and the other sessions just show the greeter):

cat /etc/lightdm/lightdm.conf

[LightDM]
greeter-user=lightdm
seats=Seat:0 Seat:1 Seat:2 Seat:3

[SeatDefaults]
allow-guest=false
greeter-hide-users=true
greeter-session=lightdm-gtk-greeter
user-session=xubuntu

[Seat:0]
user-session=xubuntu
autologin-user=

[Seat:1]
user-session=xubuntu
autologin-user=

[Seat:2]
user-session=xubuntu
autologin-user=

[Seat:3]
user-session=xubuntu
autologin-user=

[Seat:4]
user-session=xubuntu
autologin-user=

[Seat:5]
user-session=xubuntu
autologin-user=

[XDMCPServer]
enabled=true

In case I swapoff -a before starting the test, then the problem seems to be gone though.

Jacob Mayle (jacobvengeance) wrote :

Anyone other fixes available yet? I also get screen corruption on other desktop environments (xfce mainly), but it took a while of heavy usage on them. It seems to favor corrupting HUD in Precise.

Sean Channel (sean-channel) wrote :

My suggestions:

1. DebugWait / SwapbuffersWait: create the file /usr/share/X11/xorg.conf.d/20-intel.conf with the following:

    Section "Device"
        Identifier "Intel"
        Driver "intel"
        Option "DebugWait" "true"
        Option "SwapbuffersWait" "false"
    EndSection

2. Add "i915.semaphores=1" to the kernel boot command line in /etc/default/grub/ E.g.:
     GRUB_CMDLINE_LINUX_DEFAULT="quiet splash i915.semaphores=1" (then run update-grub and reboot).

3. turn off font anti-aliasing,
4. set the DPI for your screen correctly,
^^Unfortunately multiple sub-systems manageo both of those. Suggestions welcome.

Chris Wilson (ickle) wrote :

Swizzling bug fixed in the kernel (raring).

Changed in xserver-xorg-video-intel (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers