[i915] Rotated display is overscaled and overdrawn while i915 crashes repeatedly

Bug #1830792 reported by Christopher Nelson
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
gnome-shell (Ubuntu)
Invalid
Undecided
Unassigned
linux (Ubuntu)
Confirmed
Undecided
Unassigned
mutter (Ubuntu)
Invalid
Undecided
Unassigned
xorg-server (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

On my system I have two display: one in landscape, and one in portrait. The landscape display is fine, but the portrait display is corrupted. If I unplug the display from the computer for some time and then plug it back in it will occasionally fix the problem.

Once the problem is fixed, the display works perfectly fine, indefinitely. However, as soon as I reboot the computer the display will come up corrupted again and never recovers without many rounds of plug/unplug turn off/turn on. It's extremely frustrating.

ProblemType: Bug
DistroRelease: Ubuntu 19.04
Package: gnome-shell 3.32.0+git20190410-1ubuntu1
ProcVersionSignature: Ubuntu 5.0.0-15.16-generic 5.0.6
Uname: Linux 5.0.0-15-generic x86_64
NonfreeKernelModules: zfs zunicode zavl icp zcommon znvpair
ApportVersion: 2.20.10-0ubuntu27
Architecture: amd64
CurrentDesktop: ubuntu:GNOME
Date: Tue May 28 15:57:02 2019
DisplayManager: gdm3
GsettingsChanges:
 b'org.gnome.shell' b'command-history' redacted by apport
 b'org.gnome.shell' b'favorite-apps' redacted by apport
 b'org.gnome.desktop.interface' b'gtk-im-module' b"'gtk-im-context-simple'"
ProcEnviron:
 PATH=(custom, no user)
 XDG_RUNTIME_DIR=<set>
 LANG=en_US.UTF-8
 SHELL=/usr/bin/fish
SourcePackage: gnome-shell
UpgradeStatus: Upgraded to disco on 2019-04-22 (36 days ago)
modified.conffile..etc.logrotate.d.apport: [modified]
mtime.conffile..etc.logrotate.d.apport: 2019-01-12T15:50:59.090583

Revision history for this message
Christopher Nelson (nadiasvertex) wrote :
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Please:

1. Attach a photo of the corruption.

2. Run this command:
   lspci -k > lspcik.txt
   and send us the file 'lpscik.txt'

3. Run this command while the problem is happening:
   dmesg > dmesg.txt
   and send us the file 'dmesg.txt'

4. Run this command while the problem is happening:
   journalctl -b0 > journal.txt
   and send us the file 'journal.txt'.

5. Run this command while the problem is happening:
   xrandr > xrandr.txt
   and send us the file 'xrandr.txt'.

Changed in gnome-shell (Ubuntu):
status: New → Incomplete
Revision history for this message
Christopher Nelson (nadiasvertex) wrote :
Revision history for this message
Christopher Nelson (nadiasvertex) wrote :
Revision history for this message
Christopher Nelson (nadiasvertex) wrote :
Revision history for this message
Christopher Nelson (nadiasvertex) wrote :
Revision history for this message
Christopher Nelson (nadiasvertex) wrote :
Revision history for this message
Daniel van Vugt (vanvugt) wrote : Re: Rotated display is overscaled and overdrawn

Thanks for all that. It appears the problematic monitor is:

VGA-1 connected 1200x1920+0+0 left (normal left inverted right x axis y axis) 519mm x 324mm
   1920x1200 59.95*+

My first suspicion is that "VGA" is the first problem there. The overdrawing of letters/pixels suggests a signal or mode problem that you would probably only encounter with an analog connection like VGA. So this could be a hardware/cable problem, or even a kernel driver problem. Not sure.

summary: - Ubuntu display is corrupted, never recovers
+ Rotated display is overscaled and overdrawn
Changed in gnome-shell (Ubuntu):
status: Incomplete → New
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

I am seeing a lot of crashes in the i915 kernel driver in your kernel log like:

May 28 15:54:36 nix-us2ua34705wc kernel: Call Trace:
May 28 15:54:36 nix-us2ua34705wc kernel: intel_atomic_commit+0x2b8/0x2f0 [i915]
May 28 15:54:36 nix-us2ua34705wc kernel: drm_atomic_commit+0x4a/0x50 [drm]
May 28 15:54:36 nix-us2ua34705wc kernel: drm_mode_atomic_ioctl+0x8e9/0xa00 [drm]

This suggests it might be a kernel bug.

But I also know the atomic API is only used by the Xorg modesetting driver. You might be able to avoid the problem then by logging into "Ubuntu on Wayland". Does that work?

summary: - Rotated display is overscaled and overdrawn
+ [i915] Rotated display is overscaled and overdrawn
Changed in gnome-shell (Ubuntu):
status: New → Incomplete
Changed in linux (Ubuntu):
status: New → Incomplete
Changed in mutter (Ubuntu):
status: New → Incomplete
Changed in xorg-server (Ubuntu):
status: New → Incomplete
Revision history for this message
Christopher Nelson (nadiasvertex) wrote : Re: [i915] Rotated display is overscaled and overdrawn

I tried that and it didn't fix the problem. I am attaching the output of some of those files again for further data.

Revision history for this message
Christopher Nelson (nadiasvertex) wrote :
Revision history for this message
Christopher Nelson (nadiasvertex) wrote :
Revision history for this message
Christopher Nelson (nadiasvertex) wrote :

It seems unlikely to be a cable or signal problem since I can eventually coax it into working, and it continues working until I reboot. If it were a cable problem or something about the signal I would have to physically modify the connection to create and/or correct the problem. Since the mere act of rebooting creates the problem it is much more likely to be a kernel or driver bug.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Thanks. Your new kernel log shows different crashes in the i915 kernel driver when using Wayland. In particular, the kernel driver seems to think the monitor has been unplugged/replugged:

[ 2.606884] drm_fb_helper_hotplug_event.part.38+0x97/0xc0 [drm_kms_helper]
[ 2.606887] drm_fb_helper_hotplug_event+0x1c/0x30 [drm_kms_helper]
[ 2.606903] intel_fbdev_output_poll_changed+0x6b/0xa0 [i915]
[ 2.606906] drm_kms_helper_hotplug_event+0x2a/0x40 [drm_kms_helper]
[ 2.606910] output_poll_execute+0x19a/0x1c0 [drm_kms_helper]

If you did not unplug/replug the monitor while the system was running then this sounds like a faulty cable or faulty connection. Please try a different cable and/or reconnecting the existing one more firmly.

Revision history for this message
Christopher Nelson (nadiasvertex) wrote :

I did plug/unplug the monitor because if I do that enough times is generally resolves the problem until the next time I reboot. It has not done so this time. I also tried a new cable, but that does not fix the problem either.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Thanks for your efforts.

If you feel you have checked the connections thoroughly then the next step is to wait until the problem happens again and then run:

  dmesg > newdmesg.txt

and send us the file 'newdmesg.txt'.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

... then if the new kernel log continues to show similar errors we will have at least narrowed this bug down to the kernel (or a hardware/connection fault).

Revision history for this message
Christopher Nelson (nadiasvertex) wrote :

This is still 100% reproducible. I have attached the dmesg below.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Thanks. You seem to have a few different crashes in the i915 kernel driver still :(

I wonder if they are unique to your CPU/GPU generation or something else about this machine is unusual...

Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Changed in mutter (Ubuntu):
status: Incomplete → Invalid
Changed in gnome-shell (Ubuntu):
status: Incomplete → Invalid
summary: - [i915] Rotated display is overscaled and overdrawn
+ [i915] Rotated display is overscaled and overdrawn while i915 crashes
+ repeatedly
Changed in xorg-server (Ubuntu):
status: Incomplete → Invalid
Revision history for this message
Christopher Nelson (nadiasvertex) wrote :

This time I turned off the displayed, unplugged it, then left it unplugged while I rebooted. After rebooting and logging in, I turned on the display and plugged it in. Attached is the dmesg from this boot.

Revision history for this message
Christopher Nelson (nadiasvertex) wrote :
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Thanks for those logs. They show the problem happening immediately, as soon as 2.5 seconds after the kernel starts.

This bug is now assigned to the kernel ('linux' component). I believe this is a kernel bug, if not a hardware fault.

Revision history for this message
Kai-Heng Feng (kaihengfeng) wrote :

Please test latest mainline kernel:
https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.2-rc5/

If the issue persists, please file an upstream bug at https://bugs.freedesktop.org/
Product: DRI
Component: DRM/intel

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.