Comment 103 for bug 1550779

Revision history for this message
Behrang (behrangsa) wrote : Re: [drm:intel_cpu_fifo_underrun_irq_handler [i915]] *ERROR* CPU pipe A FIFO underrun

I think this issue has been affecting me for a few years now but I just recently started to look into it.

My current system is Ubuntu 19.04 but this issue was present even when I was using 18.04 and 18.10 and even before that.

OS: Ubuntu 19.04
CPU: Intel Core i7 6700
Graphics (integrated only): HD Graphics 530 (Skylake GT2)

Anyway, from time to time only one of my monitors turn on. When that happens `dmesg | grep i915` prints this:

```
➜ ~ dmesg -e | grep i915
[ +0.000545] i915 0000:00:02.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=io+mem
[ +0.000627] [drm] Finished loading DMC firmware i915/skl_dmc_ver1_27.bin (v1.27)
[ +0.003052] [drm] Initialized i915 1.6.0 20181204 for 0000:00:02.0 on minor 0
[ +0.000036] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[ +0.000047] i915 0000:00:02.0: fb0: inteldrmfb frame buffer device
[ +0.249846] [drm:intel_cpu_fifo_underrun_irq_handler [i915]] *ERROR* CPU pipe A FIFO underrun

➜ ~ dmesg -T | grep i915
[Sat Apr 27 17:47:08 2019] i915 0000:00:02.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=io+mem
[Sat Apr 27 17:47:08 2019] [drm] Finished loading DMC firmware i915/skl_dmc_ver1_27.bin (v1.27)
[Sat Apr 27 17:47:09 2019] [drm] Initialized i915 1.6.0 20181204 for 0000:00:02.0 on minor 0
[Sat Apr 27 17:47:09 2019] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[Sat Apr 27 17:47:09 2019] i915 0000:00:02.0: fb0: inteldrmfb frame buffer device
[Sat Apr 27 17:47:09 2019] [drm:intel_cpu_fifo_underrun_irq_handler [i915]] *ERROR* CPU pipe A FIFO underrun
```

When I switch to Wayland, sometimes none of my monitors turn on at all. Once when both turned on, I turned off one
and tried to turn it back on again, but it went into energy saving mode. Then `dmesg` was showing this:

```
➜ ~ dmesg -T | grep i915
[Sat Apr 27 18:14:17 2019] i915 0000:00:02.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=io+mem
[Sat Apr 27 18:14:17 2019] [drm] Finished loading DMC firmware i915/skl_dmc_ver1_27.bin (v1.27)
[Sat Apr 27 18:14:18 2019] [drm] Initialized i915 1.6.0 20181204 for 0000:00:02.0 on minor 0
[Sat Apr 27 18:14:18 2019] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[Sat Apr 27 18:14:18 2019] i915 0000:00:02.0: fb0: inteldrmfb frame buffer device
[Sat Apr 27 18:14:56 2019] [drm:intel_cpu_fifo_underrun_irq_handler [i915]] *ERROR* CPU pipe B FIFO underrun

➜ ~ dmesg -e | grep i915
[ +0.000664] i915 0000:00:02.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=io+mem
[ +0.000861] [drm] Finished loading DMC firmware i915/skl_dmc_ver1_27.bin (v1.27)
[ +0.016298] [drm] Initialized i915 1.6.0 20181204 for 0000:00:02.0 on minor 0
[ +0.000047] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[ +0.000047] i915 0000:00:02.0: fb0: inteldrmfb frame buffer device
[ +23.689059] [drm:intel_cpu_fifo_underrun_irq_handler [i915]] *ERROR* CPU pipe B FIFO underrun

```

I have attached the complete dmesg output in case that might help.