libfu_plugin_dell.so w/dell TB16 Dock blanks the display

Bug #1806323 reported by Gene Olson
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
fwupd (Ubuntu)
Triaged
Medium
Unassigned
linux (Ubuntu)
Incomplete
Undecided
Unassigned

Bug Description

Absolutely reproducible in Ubuntu 18.04.1 Gnome 3 UI with a Dell XP15 laptop and a Dell TB16 dock.

A few seconds after logging into the Gnome 3 UI, something in the UI starts the fwupd.service. About 2 seconds later, the display goes blank and does not come back. There is no obvious recovery short of killing all the user's processes, and then logging back in. A second login does not reproduce the problem, since the fwupd service is now running, and does not restart. However manually restarting the fwupd service causes the problem to recur.

The problem does not occur if the "dell" module is blacklisted in /etc/fwupd/daemon.conf.

ProblemType: Bug
DistroRelease: Ubuntu 18.04
Package: fwupd 1.0.6-2
ProcVersionSignature: Ubuntu 4.15.0-39.42-generic 4.15.18
Uname: Linux 4.15.0-39-generic x86_64
ApportVersion: 2.20.9-0ubuntu7.5
Architecture: amd64
CurrentDesktop: ubuntu:GNOME
Date: Sun Dec 2 22:02:31 2018
InstallationDate: Installed on 2018-11-19 (13 days ago)
InstallationMedia: Ubuntu 18.04.1 LTS "Bionic Beaver" - Release amd64 (20180725)
SourcePackage: fwupd
UpgradeStatus: No upgrade log present (probably fresh install)
mtime.conffile..etc.fwupd.daemon.conf: 2018-12-02T21:41:51.195270
---
ProblemType: Bug
ApportVersion: 2.20.9-0ubuntu7.5
Architecture: amd64
CurrentDesktop: ubuntu:GNOME
DistroRelease: Ubuntu 18.04
InstallationDate: Installed on 2018-05-20 (197 days ago)
InstallationMedia: Ubuntu 18.04 LTS "Bionic Beaver" - Release amd64 (20180426)
NonfreeKernelModules: nvidia_modeset nvidia
Package: linux
PackageArchitecture: amd64
ProcVersionSignature: Ubuntu 4.15.0-42.45-generic 4.15.18
Tags: bionic
Uname: Linux 4.15.0-42-generic x86_64
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip lpadmin plugdev sambashare sudo wireshark
_MarkForUpload: True
---
ProblemType: Bug
ApportVersion: 2.20.9-0ubuntu7.5
Architecture: amd64
CurrentDesktop: ubuntu:GNOME
DistroRelease: Ubuntu 18.04
InstallationDate: Installed on 2018-11-19 (15 days ago)
InstallationMedia: Ubuntu 18.04.1 LTS "Bionic Beaver" - Release amd64 (20180725)
NonfreeKernelModules: nvidia_modeset nvidia
Package: linux
PackageArchitecture: amd64
ProcVersionSignature: Ubuntu 4.15.0-39.42-generic 4.15.18
Tags: bionic
Uname: Linux 4.15.0-39-generic x86_64
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip lpadmin plugdev root sambashare sudo
_MarkForUpload: True
mtime.conffile..etc.fwupd.daemon.conf: 2018-12-03T22:22:13.013702

Revision history for this message
Gene Olson (linutic) wrote :
Revision history for this message
Richard Hughes (richard-hughes) wrote :

@superm1 ~superm1 ?

Revision history for this message
Mario Limonciello (superm1) wrote :

Which XPS model? Important to figure out which code is run in i915.

It's causing a flicker? Or turning off the monitor permanently? Internal monitor or external?

If it's gone for good can you please see if this still happens in 4.19?

Revision history for this message
Gene Olson (linutic) wrote :

The computer is a dell XPS 9570. Both the internal and external displays are 4K.

I was originally trying this while configured with a single external DP display, connected through the TB16 dock. With that configuration, the external display went totally black, and stayed that way. Today I configured it to also use the internal display, and the symptoms have changed. Results seem to depend on what was most recently configured: internal monitor on/off, display size (HD or UHD), and relative position of the monitors in the Devices control panel.

Note that there is a fixed and reliable delay of 30-60 seconds after the first login until the fwupd service starts up, and the symptoms appear.

KERNEL 4.15.39

Configured with Internal + External display.

Initially both displays go black for about a second or two, then the internal display comes back with a distorted image, which is different depending on the relative geometric positioning of the two displays. Then a second or two after that, the displays go black again, and when they come back on again 1-2 seconds later, they work normally.

Configured with External display only.

Initially the External display goes black. A couple seconds later, the external display comes back on, but now the internal display is also on, with a distorted display. Another delay, and both screens go black again. Then the External display comes back on and operates normally.

KERNEL 4.19 (worse than Kernel 4.15)

Configured with internal + external displays.

Operation is similar to 4.16.

Configured with external display only.

The display goes black and stays that way. However the mouse remains visible and can be moved around the screen.

Note that a USB 2 keyboard and mouse plugged into the docking station do not work at all with kernel 4.19. Both had no issues with Kernel 4.15.

Revision history for this message
Mario Limonciello (superm1) wrote :

Thanks for the response. There is quite a lot going on here.

First off - The XPS 9570 is a CFL system.

The going black in the first place is an artifact what fwupd does to query the firmware on the MST hubs in the dock. What it does is "wakes" the MST hubs by putting them into a higher power mode. When in this mode 1-2 "fake monitors" shows up in DPCD of the DP aux channel. This allows applications such as fwupd to interact with the monitor. The flicker and going black is the i915 driver probing those "fake" monitors.

To me this is all expected behavior thus far.

Something that (I think?) might help is if the graphics drivers can blacklist the EDID associated with the fake monitors to prevent re-probing them but still letting communication with them work for fwupd. That needs to be discussed with the Intel graphics folks to see if that's a possibility.

If it's not, then we have to have a tradeoff of no version is registered with fwupd when no (or not enough) monitors are plugged into the dock.

Now with 4.19, the staying black sounds like a separate graphics driver bug.
It might be useful if you can test with drm-tip and still reproduce that. if so, then this is worth reporting to Intel's graphics bugzilla to investigate.

The USB not working, I would wonder if it's actually an artifact of the above bug. Userspace is hung and so bolt isn't authorizing the thunderbolt device meaning USB won't work.

Changed in fwupd (Ubuntu):
status: New → Triaged
importance: Undecided → Medium
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. While running an Ubuntu kernel (not a mainline or third-party kernel) please enter the following command in a terminal window:

apport-collect 1806323

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
Revision history for this message
Gene Olson (linutic) wrote : Dependencies.txt

apport information

tags: added: apport-collected
description: updated
Revision history for this message
Gene Olson (linutic) wrote : ProcCpuinfoMinimal.txt

apport information

Revision history for this message
Gene Olson (linutic) wrote : ProcEnviron.txt

apport information

Revision history for this message
Gene Olson (linutic) wrote : Dependencies.txt

apport information

description: updated
Revision history for this message
Gene Olson (linutic) wrote : ProcCpuinfoMinimal.txt

apport information

Revision history for this message
Gene Olson (linutic) wrote : ProcEnviron.txt

apport information

Revision history for this message
Gene Olson (linutic) wrote : modified.conffile..etc.fwupd.daemon.conf.txt

apport information

Revision history for this message
Gene Olson (linutic) wrote :

I foolishly sent logs from the wrong machine. Please ignore the logs from machine "hauser" and use the logs from the machine "gene-pc".

Brad Figg (brad-figg)
tags: added: cscc
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.