HDMI/DP audio: ELD not updated on hotplug event

Bug #1831945 reported by Daniel Dadap
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

When using HDMI or Displayport audio, the EDID-like Data (ELD) fails to update properly when hotplugging or hot-unplugging displays. This in turn prevents tools like the GNOME sound settings control panel from accurately presenting the system's current audio capabilities.

How reproducible:

Hot plug and hot unplug an audio-capable display and observe the state of the ELDs, either by directly reading the ELD files in /proc/asound/card*/eld* or by examining the available audio output devices in the GNOME sound settings control panel.

Steps to Reproduce:
1. Log into a desktop session with no audio-capable displays plugged in
2. Plug in an audio-capable display
3. Open the GNOME sound settings control panel

Actual results:

The audio-capable display is not selectable as an output device.

Expected results:

The audio-capable display should be selectable as an output device.

Additional info:

This bug has been fixed upstream with commit 37a3a98ef601f89100e3bb657fb0e190b857028c. Applying this change alone to the bionic 4.18 HWE kernel is sufficient to allow the expected behavior to occur. It is likely to be sufficient to fix the same bug, assuming it exists, in Cosmic, but neither the presence of the bug nor the sufficiency of the patch were tested. The bug is likely not present in Disco, but this was not tested.

This behavior was observed on a system with an NVIDIA GPU running the NVIDIA proprietary driver. The particular NVIDIA GPU on the system is not currently compatible with Nouveau. It is possible and likely that this problem is also reproducible on other systems which do have GPUs that are compatible with Nouveau, and even on systems with HDMI or Displayport connectors being driven by non-NVIDIA GPUs.

When the ELD fails to update in response to a hotplug event, an update can be forced by accessing the underlying ALSA codec directly. For example, playing an audio stream directly via ALSA or even just reading from the /proc/asound/cardX/codec#Y file will cause the ELD to become updated. This is of course unnecessary if the patch which fixes the issue is applied, but it does offer a somewhat simple workaround for affected users until the patch can be backported.

Tags: patch
Revision history for this message
Daniel Dadap (ddadap) wrote :
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 1831945

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
tags: added: patch
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for linux (Ubuntu) because there has been no activity for 60 days.]

Changed in linux (Ubuntu):
status: Incomplete → Expired
Revision history for this message
Daniel Dadap (ddadap) wrote :

Sorry, I didn't notice that this bug had expired, or that it was waiting on log files. I don't have the system that I originally reproduced the issue on set up any more, but it should be easily reproducible.

I'll set up another system to reproduce and generate the requested log files, but in the meantime, I'm setting this to "Confirmed" anyway since this is really just a straightforward request to backport a change that fixes a kernel regression.

Changed in linux (Ubuntu):
status: Expired → Confirmed
Revision history for this message
Hui Wang (hui.wang) wrote :

Thanks Daniel,

If you reproduce the problem on some machines, please tell us, then we can find that machine and try to reproduce this problem. So far, we can't reproduce this problem on all LENOVO I+N machines which we have.

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.