Chromium Shows Flashing Black Squares in GPU Rendering

Bug #1658350 reported by Richard
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Ubuntu GNOME
Invalid
Undecided
Unassigned
mutter (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

After 6 days uptime, Chromum begins to exhibit black flashing in various situations, typically a sign of GPU problems
After rebooting, the problem reappeared after 6 days.

After a few days of a flashing Chromium, GNOME Shell freezes
To recover, the computer must be rebooted, indicating a kernel-level resource leak

Exhibited on multiple-display HiDPI computer
Not shown on a single-display nVidia

Steps to reproduce the problem:
Browse to http://www.slideshare.net/lemiorhan/test-driven-design-gdg-devfest-istanbul-2016

BUG
- Constant flashing of address bar, bookmark bar and large parts of the content area
- 80%+ cpu on the tab, 50% for Browser and 20% GPU (2-core hyperthreading)

Moving the mouse cursor over the bookmark bar or the tabs for for certain pages, eg. Google search, flashes the bookmark bar and the address bar. It’s steady for Google Translate

Works fine in Firefox 50.1.0

This appears to be a problem starting at a mutter upgrade:
On 2017-01-09 upgrade of mutter
to: 3.22.2-3~ubuntu16.10.1
from: 3.22.2-2ubuntu1~ubuntu16.10.1

ProblemType: Bug
DistroRelease: Ubuntu 16.10
Package: mutter 3.22.2-3~ubuntu16.10.1 [origin: LP-PPA-gnome3-team-gnome3-staging]
ProcVersionSignature: Ubuntu 4.8.0-34.36-generic 4.8.11
Uname: Linux 4.8.0-34-generic x86_64
ApportVersion: 2.20.3-0ubuntu8.2
Architecture: amd64
CurrentDesktop: GNOME
Date: Sat Jan 21 10:28:52 2017
SourcePackage: mutter
UpgradeStatus: Upgraded to yakkety on 2016-11-16 (65 days ago)

Revision history for this message
Richard (ismail-a) wrote :
Revision history for this message
Richard (ismail-a) wrote :

Start-Date: 2017-01-09 02:00:53
Commandline: apt-get --yes dist-upgrade
Upgrade: libmutter0i:amd64 (3.22.2-2ubuntu1~ubuntu16.10.1, 3.22.2-3~ubuntu16.10.1), gir1.2-mutter-3.0:amd64 (3.22.2-2ubuntu1~ubuntu16.10.1, 3.22.2-3~ubuntu16.10.1), libmutter-dev:amd64 (3.22.2-2ubuntu1~ubuntu16.10.1, 3.22.2-3~ubuntu16.10.1), mutter-common:amd64 (3.22.2-2ubuntu1~ubuntu16.10.1, 3.22.2-3~ubuntu16.10.1), mutter:amd64 (3.22.2-2ubuntu1~ubuntu16.10.1, 3.22.2-3~ubuntu16.10.1)

Revision history for this message
Richard (ismail-a) wrote :

Something is not correct with the build comment here:
https://launchpad.net/~gnome3-team/+archive/ubuntu/gnome3-staging/+packages?batch=75&memo=300&start=300
ie. package mutter - 3.22.2-3~ubuntu16.10.1 publishing details

The git_flush_all_swap_notifies_on_idle.patch
was already in and working in
2016-12-20 3.22.2-2ubuntu1~ubuntu16.10.1

The
2017-01-09 3.22.2-3~ubuntu16.10.1
introduced the flashing problem

Change being
mutter:amd64 (3.22.2-2ubuntu1~ubuntu16.10.1, 3.22.2-3~ubuntu16.10.1)
libmutter0i:amd64 (3.22.2-2ubuntu1~ubuntu16.10.1, 3.22.2-3~ubuntu16.10.1)
gir1.2-mutter-3.0:amd64 (3.22.2-2ubuntu1~ubuntu16.10.1, 3.22.2-3~ubuntu16.10.1)
libmutter-dev:amd64 (3.22.2-2ubuntu1~ubuntu16.10.1, 3.22.2-3~ubuntu16.10.1)
mutter-common:amd64 (3.22.2-2ubuntu1~ubuntu16.10.1, 3.22.2-3~ubuntu16.10.1)

summary: - Chromium Show flashing Black Squares in GPU Rendering
+ Chromium Shows Flashing Black Squares in GPU Rendering
Revision history for this message
Richard (ismail-a) wrote :

mutter 3.22.2-3~ubuntu16.10.1 is believed defect and limits uptime to about 8 days
3.22.2-2ubuntu1~ubuntu16.10.1 of 2016-12-20 works better

temporary downgrade to 3.22.2 of 2016-12-20:
wget https://launchpad.net/~gnome3-team/+archive/ubuntu/gnome3-staging/+build/11759320/+files/gir1.2-mutter-3.0_3.22.2-2ubuntu1~ubuntu16.10.1_amd64.deb https://launchpad.net/~gnome3-team/+archive/ubuntu/gnome3-staging/+build/11759320/+files/libmutter0i_3.22.2-2ubuntu1~ubuntu16.10.1_amd64.deb https://launchpad.net/~gnome3-team/+archive/ubuntu/gnome3-staging/+build/11759320/+files/mutter-common_3.22.2-2ubuntu1~ubuntu16.10.1_all.deb https://launchpad.net/~gnome3-team/+archive/ubuntu/gnome3-staging/+build/11759320/+files/mutter_3.22.2-2ubuntu1~ubuntu16.10.1_amd64.deb
sudo dpkg --install gir1.2-mutter-3.0_3.22.2-2ubuntu1~ubuntu16.10.1_amd64.deb libmutter0i_3.22.2-2ubuntu1~ubuntu16.10.1_amd64.deb mutter_3.22.2-2ubuntu1~ubuntu16.10.1_amd64.deb mutter-common_3.22.2-2ubuntu1~ubuntu16.10.1_all.deb
sudo apt-mark hold gir1.2-mutter libmutter0i mutter mutter-common
- remember to unhold when this problem is fixed
- reboot and you have infinite uptime again

GNOME recovery that does not work:
systemctl restart lightdm.service
- fails because dbus is affected by the resource leak
- the screen saver something refused to load and you go back to greeter
ps -fC dbus-daemon
- kill the instance owned by your user name
killall lightdm
now systemctl restart lightdm.service
- but GNOME is still hosed and will after a kinute or so terminate your applications with SIGTRAP
- /var/crash fills up with crash files
- instead, do the downgrade and reboot

You cannot use gdm3 because of poor architecture from the GNOME Project in 3.16, 2 years ago:
“please folks stop complaining” https://bugzilla.gnome.org/show_bug.cgi?id=747339
https://bugzilla.gnome.org/show_bug.cgi?id=731654
lightdm seems to work ok

Revision history for this message
Jeremy Bícha (jbicha) wrote :

Yes, I kept the mutter package in the GNOME3 Staging PPA for yakkety in sync with the zesty package in the regular Ubuntu archives.

You can see what changed (there is one new patch) by visiting

https://launchpad.net/~gnome3-team/+archive/ubuntu/gnome3-staging/+packages?field.series_filter=yakkety

Click the arrow next to mutter and then click the diff link at the bottom of the changelog.

But you diagnosed the issue as perhaps being related to graphics drivers. Why don't you file a bug against your graphics driver then?

I am confused by your latest comments on the bug report. I don't understand why GDM using virtual terminal 1 has anything to do with you needing to use lightdm. (There is a bug mentioned in the Ubuntu GNOME Release Notes about an issue using NVIDIA proprietary graphics with GDM though.)

What crash files? Why are you trying to restart lightdm? Why are you convinced mutter breaks after 8 days and an old, almost identical version offers infinite uptime?

Revision history for this message
Richard (ismail-a) wrote :

2 days into the downgrade I have flashing, so it’s something else

The flashing can be provoked by adding another 50 Chromium tabs, so it is related to the amount of drawn graphics objects

The flashing in Chromium is because as you hover over tabs and bookmarks, Chromium is to show a tooltip. This no work and instead Chromium flashes black squares intermittently in various parts of the UI. It seems flashing depends on what is visible at the moment.

I don’t know why slideshare causes static flashing, but after 2 days, that site hasn’t started to flash yet. It did so after 6 - 8 days of uptime, and at that time GNOME Shell may freeze on any usual activity. My last freeze was triggered by playing a 1080p youtube video. That video normally plays fine, but with increased flashing, it triggered a freeze.

The other interesting thing is what software is sending SIGTRAP to GNOME applications? The user has very few processes so some other resource has been depleted. SIGTRAP is supposed to launch the debugger, if there is no debugger that becomes a crash creating files in /var/crash.

By calculating backwards the problem appeared to start 2017-01-11, and the mutter upgrade was 2017-01-09. It does not seem to be an adequate conclusion.

This is likely going to be a problem in GNOME 3.22. The bugs they give us in GNOME 3.24 on 2017-03 are hopefully going to be different.

Revision history for this message
Richard (ismail-a) wrote :

5 days uptime

Now I had this other recurring trouble where GNOME Shell has a garbage collection-like freeze for a minute or so then proceeds at high cpu load: nautilus-desktop and gnome-shell eating 100% each.

If you kill nautilus, desktop icons go away and the system appears to continue. I think nautilus ends up crashing at those occasions if you wait, but I don’t have a /var/crash file right now. There never any logging.

When they make Wayland the default session, it’ll be worse than running Linux on multi-gpu nVidia

The reason flashing appears on the chromium new tab page (looks like Google search) is because the default doodle, some four colored dots, is a css3 accelerated transform like: transform: rotate(315deg); animation-delay: 880ms;

The other source of flashing is drawing tooltips which lots of html5 features produce

Revision history for this message
dino99 (9d9) wrote :

This is an unsupported release now. Please think to install the next LTS 'Bionic 18.04'

http://cdimage.ubuntu.com/ubuntu-next/daily-live/current/
https://www.omgubuntu.co.uk/2018/02/ubuntu-18-04-minimal-install-option

Changed in mutter (Ubuntu):
status: New → Invalid
Changed in ubuntu-gnome:
status: New → 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.