Bug 106341 - CPU pipe A FIFO underrun on drm-tip
Summary: CPU pipe A FIFO underrun on drm-tip
Status: RESOLVED WORKSFORME
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: DRI git
Hardware: Other All
: medium normal
Assignee: Intel GFX Bugs mailing list
QA Contact: Intel GFX Bugs mailing list
URL:
Whiteboard: Triaged, ReadyForDev
Keywords:
Depends on:
Blocks: 105980
  Show dependency treegraph
 
Reported: 2018-05-02 00:47 UTC by vasily.pupkin
Modified: 2019-07-15 06:55 UTC (History)
2 users (show)

See Also:
i915 platform: KBL
i915 features: display/watermark


Attachments
dmesg (380.19 KB, text/plain)
2018-05-02 00:47 UTC, vasily.pupkin
no flags Details
dmesg with i915.enable_fbc=0 (347.09 KB, text/plain)
2018-05-09 19:53 UTC, vasily.pupkin
no flags Details

Description vasily.pupkin 2018-05-02 00:47:01 UTC
Created attachment 139258 [details]
dmesg

Steps to reproduce the issue. 
Boot kernel and desktop environment

How often does the steps listed above trigger the issue?
always

    -- system architecture: ("uname -m")
drm-tip 

    -- kernel version: ("uname -r").
drm-tip hash 844dd95837ab995c37d1139d74ff55139987b437

    -- Linux distribution:
Fedora

    -- Machine or mother board model:
Gigabyte Technology Co., Ltd. B250M-D3H

    -- Display connector: (such as HDMI, DP, eDP, ...)
DP

     A full dmesg with debug information and/or a GPU crash dump 
attached
Comment 1 vasily.pupkin 2018-05-02 00:50:07 UTC
screen flickers once when error appears in dmesg
does not reoccur when FBC is disabled
Comment 2 Jani Saarinen 2018-05-02 06:45:22 UTC
[   33.654881] [drm:intel_cpu_fifo_underrun_irq_handler] *ERROR* CPU pipe A FIFO underrun
[   33.654928] [drm:intel_fbc_underrun_work_fn] Disabling FBC due to FIFO underrun.

Is this duplicate of 105604? 

Paulo, can you have a look FBC one warning.
Comment 3 Paulo Zanoni 2018-05-03 15:31:35 UTC
The bug is not in FBC. The bug is that we have a FIFO underrun. FBC plays on the safe side and disables itself in case we have a FIFO underrun.

We should fix the FIFO underrun. I've seen FIFO underruns everywhere, including in CI, so this is a known problem.
Comment 4 Ville Syrjala 2018-05-03 15:51:18 UTC
(In reply to Paulo Zanoni from comment #3)
> The bug is not in FBC. The bug is that we have a FIFO underrun. FBC plays on
> the safe side and disables itself in case we have a FIFO underrun.
> 
> We should fix the FIFO underrun. I've seen FIFO underruns everywhere,
> including in CI, so this is a known problem.

The fact that the flickering stops after FBC has been disabled may implicate FBC. Do we have an option to force FBC to stay on despite underruns? That could help in figuring out whether FBC is just the victim or the purpetrator.
Comment 5 Paulo Zanoni 2018-05-03 20:29:58 UTC
(In reply to Ville Syrjala from comment #4)
> (In reply to Paulo Zanoni from comment #3)
> > The bug is not in FBC. The bug is that we have a FIFO underrun. FBC plays on
> > the safe side and disables itself in case we have a FIFO underrun.
> > 
> > We should fix the FIFO underrun. I've seen FIFO underruns everywhere,
> > including in CI, so this is a known problem.
> 
> The fact that the flickering stops after FBC has been disabled may implicate
> FBC. Do we have an option to force FBC to stay on despite underruns?

No, although that would be simple to implement.

> That
> could help in figuring out whether FBC is just the victim or the purpetrator.

FBC just amplifies the problem, that's why disabling it improves the situation. That's by design. The only way FBC could be the culprit would be in case the FIFO underrun simply does not happen anymore when FBC is disabled. Bug reporter would need to boot with i915.enable_fbc=0 to verify that.
Comment 6 vasily.pupkin 2018-05-03 22:49:51 UTC
when booting with i915.enable_fbc=0 flickering and error does not occur
Comment 7 vasily.pupkin 2018-05-03 22:54:07 UTC
although it would be preferrable to trace the bug, which existed for a couple of years in different kernel versions, rather than doing a workaround
Comment 8 Paulo Zanoni 2018-05-07 17:50:57 UTC
(In reply to vasily.pupkin from comment #6)
> when booting with i915.enable_fbc=0 flickering and error does not occur

Yes, but we need to check dmesg to see if the FIFO underrun error messages still happen. FBC just makes the bug (more) visible.
Comment 9 Paulo Zanoni 2018-05-07 17:52:05 UTC
Accidentally hit submit, sorry.

Can you please retest with i915.enable_fbc=0, then check dmesg to see if the FIFO underrun error messages still happen?

Thanks,
Paulo
Comment 10 Jani Saarinen 2018-05-09 05:49:26 UTC
And add dmesg also here.
Comment 11 vasily.pupkin 2018-05-09 19:53:10 UTC
Created attachment 139451 [details]
dmesg with i915.enable_fbc=0
Comment 12 vasily.pupkin 2018-05-10 21:33:20 UTC
Attached dmesg with i915.enable_fbc=0, let me know if more info neded
Comment 13 vasily.pupkin 2018-05-15 00:51:23 UTC
Hello, are there any plans to fix this error?
Comment 14 Lakshmi 2018-09-10 16:03:29 UTC
Reporter, do you still have the issue?
Please try to reproduce the issue using drm-tip (https://cgit.freedesktop.org/drm-tip) and kernel parameters drm.debug=0x1e log_buf_len=4M, and if the problem persists attach the full dmesg from boot.
Comment 15 Lakshmi 2018-10-21 18:04:41 UTC
Paulo, how to proceed further? testing with latest drm-tip will help the situation?
Comment 16 Lakshmi 2018-10-25 06:40:01 UTC
Vasily, need dmesg from latest drm-tip for investigation. 
No feedback for more than a month, reducing the priority to medium.
Comment 17 Lakshmi 2019-07-15 06:55:00 UTC
No feedback for more than few months, closing this issue as WORKSFORME.
If this issue happens to occur on drmtip, please attach the dmesg from boot and
reopen the issue.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.