Screen jitters every so often, especially when laptop under load

Bug #849782 reported by Jonathan Lange
16
This bug affects 3 people
Affects Status Importance Assigned to Milestone
xf86-video-intel
Confirmed
Medium
xserver-xorg-video-intel (Ubuntu)
Invalid
Medium
Unassigned

Bug Description

I have a Lenovo X200 laptop, and I run Unity 3D. Every so often, since oneiric, my screen jitters. That is, it seems to jump up and down like it has a nervous twitch. I can't reproduce it exactly, but it seems more likely to happen when my system is under load.

I've monitored .xsession-errors when the twitch happens, and nothing is dumped there. I've also checked /var/crash/, but none of the crashes there have times that match the twitch.

Chris Halse Rogers suggested trying, "echo 0 > /sys/module/drm_kms_helper/parameters/poll", but that doesn't seem to correct the problem.

In addition, unity_support_test crashed while filing this bug.

ProblemType: Bug
DistroRelease: Ubuntu 11.10
Package: xserver-xorg 1:7.6+7ubuntu7
ProcVersionSignature: Ubuntu 3.0.0-10.16-generic 3.0.4
Uname: Linux 3.0.0-10-generic x86_64
.tmp.unity.support.test.0:

ApportVersion: 1.22.1-0ubuntu2
Architecture: amd64
CompizPlugins: [core,bailer,detection,composite,opengl,compiztoolbox,decor,mousepoll,resize,gnomecompat,place,wall,vpswitch,move,regex,snap,session,animation,expo,workarounds,ezoom,staticswitcher,fade,scale,unityshell]
CompositorRunning: compiz
Date: Wed Sep 14 09:31:23 2011
DistUpgraded: Log time: 2011-07-26 11:37:40.528783
DistroCodename: oneiric
DistroVariant: ubuntu
EcryptfsInUse: Yes
ExtraDebuggingInterest: Yes, whatever it takes to get this fixed in Ubuntu
GlAlternative: lrwxrwxrwx 1 root root 24 2010-03-20 18:53 /etc/alternatives/gl_conf -> /usr/lib/mesa/ld.so.conf
GraphicsCard:
 Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller [8086:2a42] (rev 07) (prog-if 00 [VGA controller])
   Subsystem: Lenovo Device [17aa:20e4]
   Subsystem: Lenovo Device [17aa:20e4]
MachineType: LENOVO 7454A12
ProcEnviron:
 PATH=(custom, user)
 LANG=en_AU.UTF-8
 SHELL=/bin/bash
ProcKernelCmdLine: root=UUID=66c83d9d-bb68-4f51-995c-63e9b4ee025f ro quiet splash
SourcePackage: xorg
UnitySupportTest: Error: command ['/usr/lib/nux/unity_support_test', '-p', '-f'] failed with exit code -11:
UpgradeStatus: Upgraded to oneiric on 2011-07-26 (49 days ago)
dmi.bios.date: 07/30/2008
dmi.bios.vendor: LENOVO
dmi.bios.version: 6DET28WW (1.05 )
dmi.board.name: 7454A12
dmi.board.vendor: LENOVO
dmi.board.version: Not Available
dmi.chassis.asset.tag: No Asset Information
dmi.chassis.type: 10
dmi.chassis.vendor: LENOVO
dmi.chassis.version: Not Available
dmi.modalias: dmi:bvnLENOVO:bvr6DET28WW(1.05):bd07/30/2008:svnLENOVO:pn7454A12:pvrThinkPadX200:rvnLENOVO:rn7454A12:rvrNotAvailable:cvnLENOVO:ct10:cvrNotAvailable:
dmi.product.name: 7454A12
dmi.product.version: ThinkPad X200
dmi.sys.vendor: LENOVO
version.compiz: compiz 1:0.9.5.94+bzr2803-0ubuntu1
version.ia32-libs: ia32-libs 20090808ubuntu20
version.libdrm2: libdrm2 2.4.26-1ubuntu1
version.libgl1-mesa-dri: libgl1-mesa-dri 7.11.0+git20110128.2a18d195-0ubuntu0sarvatt
version.libgl1-mesa-dri-experimental: libgl1-mesa-dri-experimental N/A
version.libgl1-mesa-glx: libgl1-mesa-glx 7.11.0+git20110128.2a18d195-0ubuntu0sarvatt
version.xserver-xorg: xserver-xorg 1:7.6+7ubuntu7
version.xserver-xorg-input-evdev: xserver-xorg-input-evdev 1:2.6.0-1ubuntu13
version.xserver-xorg-video-ati: xserver-xorg-video-ati 1:6.14.99~git20110811.g93fc084-0ubuntu1
version.xserver-xorg-video-intel: xserver-xorg-video-intel 2:2.15.901-1ubuntu2
version.xserver-xorg-video-nouveau: xserver-xorg-video-nouveau N/A

Revision history for this message
Jonathan Lange (jml) wrote :
Revision history for this message
Jonathan Lange (jml) wrote :

I've attached a video that demonstrates the problem, sort of. My phone camera isn't great, so it doesn't capture the jitteriness in its full, eye-twitching glory.

bugbot (bugbot)
affects: xorg (Ubuntu) → xserver-xorg-video-intel (Ubuntu)
Revision history for this message
Bryce Harrington (bryce) wrote :

jml, yeah would be nice to have a clearer video, but I gather that it's a momentary micro-second event? I didn't see it move up and down but there was a notable glitch around the 9-10 sec mark?

I notice your logs have a lot of data in it, and I wonder if any of it correlates to the glitch. Can you please try running 'tail -f /var/log/Xorg.0.log' in one window, and in another window something like "while : ; do clear; dmesg | tail -n 20 ; sleep 1 ; done", do whatever is necessary to get the issue to reproduce, and see if anything prints to either log simultaneous with the glitch.

If Chris is correct that it's output polling, you should also turn on kms debugging. Run 'sudo xdiagnose' and tick the first checkbox, then apply and reboot. Use the same while loop as above to monitor dmesg output while reproducing the problem to confirm polling activity associated with the glitch.

Let us know the result in any case.

I notice you have an unusual number xkb cache messages showing up, which looks curious. Probably unrelated though.

Also, can you estimate when you first noticed this behavior? Was it not happening on a prior ubuntu release, or earlier on in oneiric?

Changed in xserver-xorg-video-intel (Ubuntu):
importance: Undecided → Medium
status: New → Incomplete
Revision history for this message
Jonathan Lange (jml) wrote :

Yeah, it's a momentary event and the glitch at the 9-10s mark is it. I'm afraid I don't have any better recording technology to hand.

I've tried running the logs that you indicate, both with kms debugging and without. Nothing new comes up while the glitch occurs. For completeness:

[ 215.730] (II) intel(0): Modeline "1280x800"x0.0 59.26 1280 1328 1360 1440 800 803 809 823 -hsync -vsync (41.2 kHz)
[ 216.960] (II) intel(0): EDID vendor "LEN", prod id 16400
[ 216.960] (II) intel(0): Printing DDC gathered Modelines:
[ 216.960] (II) intel(0): Modeline "1280x800"x0.0 75.30 1280 1296 1344 1512 800 802 804 830 -hsync -vsync (49.8 kHz)
[ 216.960] (II) intel(0): Modeline "1280x800"x0.0 59.26 1280 1328 1360 1440 800 803 809 823 -hsync -vsync (41.2 kHz)
[ 284.441] (II) XKB: reuse xkmfile /var/lib/xkb/server-8D02A653A572D40EFDD32DCE670FE0A78BA780C8.xkm
[ 884.636] (II) intel(0): EDID vendor "LEN", prod id 16400
[ 884.636] (II) intel(0): Printing DDC gathered Modelines:
[ 884.636] (II) intel(0): Modeline "1280x800"x0.0 75.30 1280 1296 1344 1512 800 802 804 830 -hsync -vsync (49.8 kHz)
[ 884.636] (II) intel(0): Modeline "1280x800"x0.0 59.26 1280 1328 1360 1440 800 803 809 823 -hsync -vsync (41.2 kHz)

and:

[ 49.421907] input: HDA Intel Mic as /devices/pci0000:00/0000:00:1b.0/sound/card0/input9
[ 49.421997] input: HDA Intel Headphone as /devices/pci0000:00/0000:00:1b.0/sound/card0/input10
[ 49.422084] input: HDA Intel Headphone as /devices/pci0000:00/0000:00:1b.0/sound/card0/input11
[ 49.604842] ppdev: user-space parallel port driver
[ 50.358067] init: cgconfig post-stop process (1253) terminated with status 127
[ 50.361524] init: gdm main process (1241) killed by TERM signal
[ 57.773949] Bluetooth: RFCOMM TTY layer initialized
[ 57.773956] Bluetooth: RFCOMM socket layer initialized
[ 57.773959] Bluetooth: RFCOMM ver 1.11
[ 57.773967] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 57.773971] Bluetooth: BNEP filters: protocol multicast
[ 59.226573] init: plymouth-stop pre-start process (2457) terminated with status 1
[ 235.839172] wlan0: authenticate with 08:76:ff:6c:e7:59 (try 1)
[ 235.841239] wlan0: authenticated
[ 235.847520] wlan0: associate with 08:76:ff:6c:e7:59 (try 1)
[ 235.850047] wlan0: RX AssocResp from 08:76:ff:6c:e7:59 (capab=0x411 status=0 aid=1)
[ 235.850051] wlan0: associated
[ 235.854574] ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[ 246.528020] wlan0: no IPv6 routers present
[ 254.911679] init: nmbd pre-start process (2902) terminated with status 1

This behaviour was definitely *not* happening under natty.

Revision history for this message
Jonathan Lange (jml) wrote :

Forgot to say that I am very grateful that this bug is receiving attention.

Bryce Harrington (bryce)
Changed in xserver-xorg-video-intel (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
In , Bryce Harrington (bryce) wrote :
Download full text (3.7 KiB)

Forwarding this bug from Ubuntu reporter Jonathan Lange:
http://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/849782

[Problem]
When system is under load, the graphics experience periodic glitches.

Perhaps under the load of oneiric's Unity3D the driver isn't able to keep up with the graphics loads, and isn't able to fill the pipe 100% of the time? How could that be proved/disproved (or are we way off base?)

[Original Description]
I have a Lenovo X200 laptop, and I run Unity 3D. Every so often, since oneiric, my screen jitters. That is, it seems to jump up and down like it has a nervous twitch. I can't reproduce it exactly, but it seems more likely to happen when my system is under load.

I've monitored .xsession-errors when the twitch happens, and nothing is dumped there. I've also checked /var/crash/, but none of the crashes there have times that match the twitch.

Chris Halse Rogers suggested trying, "echo 0 > /sys/module/drm_kms_helper/parameters/poll", but that doesn't seem to correct the problem.

In addition, unity_support_test crashed while filing this bug.

DistroRelease: Ubuntu 11.10
Package: xserver-xorg 1:7.6+7ubuntu7
ProcVersionSignature: Ubuntu 3.0.0-10.16-generic 3.0.4
Uname: Linux 3.0.0-10-generic x86_64
.tmp.unity.support.test.0:

ApportVersion: 1.22.1-0ubuntu2
Architecture: amd64
CompizPlugins: [core,bailer,detection,composite,opengl,compiztoolbox,decor,mousepoll,resize,gnomecompat,place,wall,vpswitch,move,regex,snap,session,animation,expo,workarounds,ezoom,staticswitcher,fade,scale,unityshell]
CompositorRunning: compiz
Date: Wed Sep 14 09:31:23 2011
DistUpgraded: Log time: 2011-07-26 11:37:40.528783
DistroCodename: oneiric
DistroVariant: ubuntu
EcryptfsInUse: Yes
ExtraDebuggingInterest: Yes, whatever it takes to get this fixed in Ubuntu
GlAlternative: lrwxrwxrwx 1 root root 24 2010-03-20 18:53 /etc/alternatives/gl_conf -> /usr/lib/mesa/ld.so.conf
GraphicsCard:
 Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller [8086:2a42] (rev 07) (prog-if 00 [VGA controller])
   Subsystem: Lenovo Device [17aa:20e4]
   Subsystem: Lenovo Device [17aa:20e4]
MachineType: LENOVO 7454A12
ProcEnviron:
 PATH=(custom, user)
 LANG=en_AU.UTF-8ProcKernelCmdLine: root=UUID=66c83d9d-bb68-4f51-995c-63e9b4ee025f ro quiet splash
SourcePackage: xorg
UnitySupportTest: Error: command ['/usr/lib/nux/unity_support_test', '-p', '-f'] failed with exit code -11:
UpgradeStatus: Upgraded to oneiric on 2011-07-26 (49 days ago)
dmi.bios.date: 07/30/2008
dmi.bios.vendor: LENOVO
dmi.bios.version: 6DET28WW (1.05 )
dmi.board.name: 7454A12
dmi.board.vendor: LENOVO
dmi.board.version: Not Available
dmi.chassis.asset.tag: No Asset Information
dmi.chassis.type: 10
dmi.chassis.vendor: LENOVO
dmi.chassis.version: Not Available
dmi.modalias: dmi:bvnLENOVO:bvr6DET28WW(1.05):bd07/30/2008:svnLENOVO:pn7454A12:pvrThinkPadX200:rvnLENOVO:rn7454A12:rvrNotAvailable:cvnLENOVO:ct10:cvrNotAvailable:
dmi.product.name: 7454A12
dmi.product.version: ThinkPad X200
dmi.sys.vendor: LENOVO
version.compiz: compiz 1:0.9.5.94+bzr2803-0ubuntu1
version.ia32-libs: ia32-libs 20090808ubuntu20
version.libdrm2: libdrm2 2.4.26-1ubuntu1
version.libgl1-mesa-dri: libgl1...

Read more...

Revision history for this message
In , Bryce Harrington (bryce) wrote :

Jonathan has also tested with KMS debugging turned on, but nothing is printed to dmesg when the glitch occurs.

I'm having him re-test natty again (to rule out hardware), as well as a clean oneiric image (to rule out possible local config), but suspect those won't turn up anything.

Revision history for this message
In , Bryce Harrington (bryce) wrote :

A video to demonstrate the problem is at this link (file too large for bugzilla):

https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/849782/+attachment/2401527/+files/VID_20110908_181612.3gp

The quality of the video is unfortunately poor, but the glitch occurs around the 9-10 sec mark.

Revision history for this message
In , Bryce Harrington (bryce) wrote :

Created attachment 52276
BootDmesg.txt

Revision history for this message
In , Bryce Harrington (bryce) wrote :

Created attachment 52277
CurrentDmesg.txt

Revision history for this message
In , Bryce Harrington (bryce) wrote :

Created attachment 52278
XorgLog.txt

Revision history for this message
Bryce Harrington (bryce) wrote :

Jonathan Lange - I've forwarded this bug upstream to http://bugs.freedesktop.org/show_bug.cgi?id=41733 - please subscribe yourself to this bug, in case they need further information or wish you to test something. Thanks ahead of time!

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

There's a strong possibility the bug here is something in the kernel's drm code.

Thus, as a workaround (and to confirm this possibility), you could try installing and booting the kernel from natty.

If that *does* make the issue go away, then a git bisection search might be a viable way of locating the faulty patch.

Revision history for this message
In , Chris Wilson (ickle) wrote :

Afaict from that video, the glitch was limited to a vertical shift of the chat pane within xchat. Is the glitch typically limited to a single window?

Changed in xserver-xorg-video-intel:
importance: Unknown → Medium
status: Unknown → Confirmed
Revision history for this message
In , Jonathan Lange (jml) wrote :

It's a whole screen thing. That said, I do tend to run windows maximized, and it *is* a momentary effect, so I could be wrong. I doubt it though.

Sorry for the delay in answering. I had typed out an answer before and hit "Commit", but no dice.

Revision history for this message
In , Chris Wilson (ickle) wrote :

A whole screen jitter is much more likely to be a FIFO underrun, which sadly are only reported with drm.debug=0x1 (along with every ioctl, so too noisy to be useful).

Can you attach your boot dmesg with drm.debug=0xe, I want to confirm if this hardware also fixed FIFO watermarks due to a silicon bug, in which case there is very little we can do (if it does turn out to be a FIFO issue).

Revision history for this message
In , Jonathan Lange (jml) wrote :

Created attachment 52289
dmesg with drm.debug=0xe

Attached is the dmesg with drm.debug=0xe included. I've triggered the glitch on this boot.

Also, I've tested with clean natty and oneiric live USB sticks. I can confirm that the issue does occur with clean oneiric and does *not* occur with clean natty.

Revision history for this message
In , Chris Wilson (ickle) wrote :

Ok, the important line is

[drm:g4x_update_wm], Setting FIFO watermarks - A: plane=2, cursor=2, B: plane=26, cursor=6, SR: plane=59, cursor=6

which means that your hardware did not inherit the broken Crestline silicon, and an actual FIFO underrun is much less likely. Might still be worth running with drm.debug=0x1 and keeping an eye out for FIFO underrun warnings. And as is the nature of such issues, a change in rendering patterns is also likely to provoke running into different memory constraints (so a FIFO underrun is susceptible to userspace changes).

Revision history for this message
In , Jonathan Lange (jml) wrote :

Just to be clear, if I run with 0x1, what exactly am I grepping for in dmesg?

Revision history for this message
In , Chris Wilson (ickle) wrote :

if (pipe_stats[pipe] & PIPE_FIFO_UNDERRUN_STATUS)
  DRM_DEBUG_DRIVER("pipe %c underrun\n", pipe_name(pipe));

So that would be "pipe [AB] underrun"

Revision history for this message
In , Jonathan Lange (jml) wrote :

Created attachment 52329
dmesg w/ drm.debug=0x1

Here's w/ drm.debug=0x1. No 'pipe [AB] underrun' regex matches.

Revision history for this message
In , Chris Wilson (ickle) wrote :

(In reply to comment #13)
> Created an attachment (id=52329) [details]
> dmesg w/ drm.debug=0x1
>
> Here's w/ drm.debug=0x1. No 'pipe [AB] underrun' regex matches.

To check the obvious as it is quite a short dmesg (compared to what I was expecting, very few ioctls i.e. very few drawing commands), did you observe flicker within that time?

Revision history for this message
In , Jonathan Lange (jml) wrote :

(In reply to comment #14)
> (In reply to comment #13)
> > Created an attachment (id=52329) [details] [details]
> > dmesg w/ drm.debug=0x1
> >
> > Here's w/ drm.debug=0x1. No 'pipe [AB] underrun' regex matches.
>
> To check the obvious as it is quite a short dmesg (compared to what I was
> expecting, very few ioctls i.e. very few drawing commands), did you observe
> flicker within that time?

Yes, I did. Three separate incidents. Perhaps I mistyped the drm.debug kernel boot option? Also, to be clear, I'm uploading /var/log/dmesg. Do let me know if I should be doing something else.

Btw, I'm very grateful for how responsive you've been. Thanks.

Revision history for this message
In , Chris Wilson (ickle) wrote :

Ah, iirc /var/log/dmesg is the dmesg from boot and not the latest message. To get the current dmesg, just type 'dmesg' (so dmesg > dmesg.txt and attach).

Revision history for this message
In , Jonathan Lange (jml) wrote :

Created attachment 52918
dmesg w/ drm.debug=0xe for real

This is a dmesg snapshot taken shortly after reproducing the bug with drm.debug=0xe.

Revision history for this message
In , Jonathan Lange (jml) wrote :

Created attachment 52919
dmesg snapshot taken w/ drm.debug=0x1 after reproducing

This time with drm.debug=0x1.

Revision history for this message
Bryce Harrington (bryce) wrote :

Hey jml,

Hi, thanks for reporting this issue during the development period of
Ubuntu.

I notice there's not been further comments to the bug report since the
release came out, would you mind updating us on the status of it in the
release?

Are you still able to reproduce the issue? If not, do you think the bug
report can be closed, or do you think we should continue tracking it?

Changed in xserver-xorg-video-intel (Ubuntu):
status: Triaged → Incomplete
Revision history for this message
Jonathan Lange (jml) wrote :

The bug is still affecting me in 11.10 stable. I've provided debugging data to upstream and am awaiting response from them.

Revision history for this message
In , Jonathan Lange (jml) wrote :

FWIW, this issue still occurs regularly for me.

Revision history for this message
wliment (wliment) wrote :

he bug affect me ,my laptop is y460 with optimus card. when the system load bigger ,the flicer occur

Revision history for this message
wliment (wliment) wrote :

the bug affect me ,my laptop is y460 with optimus card. when the system load bigger ,the flicker occur

Bryce Harrington (bryce)
Changed in xserver-xorg-video-intel (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
Jonathan Lange (jml) wrote :

FWIW, I closed the upstream bug because my laptop's monitor quality has degraded even further. I've reproduced the jittering on boot and in the console. I'm solidly convinced it's a hardware issue.

Revision history for this message
Bryce Harrington (bryce) wrote :

Okay, thanks for following up Jonathan, sorry about the HW problems.

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

Other bug subscribers

Remote bug watches

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