Bug 105870 - drm:intel_pipe_update_end *ERROR* Atomic update failure on pipe B
Summary: drm:intel_pipe_update_end *ERROR* Atomic update failure on pipe B
Status: NEW
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: XOrg 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: 105981
  Show dependency treegraph
 
Reported: 2018-04-03 21:18 UTC by mmokrejs@fold.natur.cuni.cz
Modified: 2019-07-13 18:30 UTC (History)
3 users (show)

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


Attachments
dmesg-4.14.15 (99.60 KB, text/plain)
2018-04-03 21:18 UTC, mmokrejs@fold.natur.cuni.cz
no flags Details
dmesg-4.14.15 (99.60 KB, text/plain)
2018-04-03 21:19 UTC, mmokrejs@fold.natur.cuni.cz
no flags Details
dmesg-4.14.15_drm_debug (1.97 MB, text/plain)
2018-04-04 08:07 UTC, mmokrejs@fold.natur.cuni.cz
no flags Details
dmesg from 4.16 (106.68 KB, text/plain)
2018-04-06 10:54 UTC, Jiri Slaby
no flags Details
dmesg-4.15.15-on-battery-without-external-LCD-CPU_pipe_A_fifo_underrun (1.96 MB, text/plain)
2018-04-09 20:36 UTC, mmokrejs@fold.natur.cuni.cz
no flags Details
dmesg-4.17.0-rc4+_fe5bde58dca53de7b615789c69ed83c6420d2d1a.tar.bz2 (506.71 KB, application/octet-stream)
2018-05-30 19:19 UTC, mmokrejs@fold.natur.cuni.cz
no flags Details
messages_10klines_before_and_after.txt.gz (169.39 KB, application/octet-stream)
2018-06-22 20:24 UTC, mmokrejs@fold.natur.cuni.cz
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description mmokrejs@fold.natur.cuni.cz 2018-04-03 21:18:22 UTC
Hi,
  I see the following in my dmesg on Dell latitude E5580:

[ 6046.042874] [drm:intel_pipe_update_end] *ERROR* Atomic update failure on pipe B (start=349035 end=349036) time 152 us, min 1431, max 1439, scanline start 1426, end 1441

# uname -a
Linux dell_e5580 4.14.15 #4 SMP Fri Jan 26 00:10:06 CET 2018 x86_64 Intel(R) Core(TM) i7-7820HQ CPU @ 2.90GHz GenuineIntel GNU/Linux
#
Comment 1 mmokrejs@fold.natur.cuni.cz 2018-04-03 21:18:48 UTC
Created attachment 138559 [details]
dmesg-4.14.15
Comment 2 mmokrejs@fold.natur.cuni.cz 2018-04-03 21:19:52 UTC
Created attachment 138560 [details]
dmesg-4.14.15
Comment 3 mmokrejs@fold.natur.cuni.cz 2018-04-03 21:40:00 UTC
# cat /sys/kernel/debug/dri/0/i915_edp_psr_status
Sink_Support: no
Source_OK: no
Enabled: no
Active: no
Busy frontbuffer bits: 0x000
Re-enable work scheduled: no
Main link in standby mode: no
HW Enabled & Active bit: no
#

# lspci
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers (rev 05)
00:02.0 VGA compatible controller: Intel Corporation Device 591b (rev 04)
00:04.0 Signal processing controller: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem (rev 05)
00:14.0 USB controller: Intel Corporation Sunrise Point-H USB 3.0 xHCI Controller (rev 31)
00:14.2 Signal processing controller: Intel Corporation Sunrise Point-H Thermal subsystem (rev 31)
00:15.0 Signal processing controller: Intel Corporation Sunrise Point-H Serial IO I2C Controller #0 (rev 31)
00:15.1 Signal processing controller: Intel Corporation Sunrise Point-H Serial IO I2C Controller #1 (rev 31)
00:16.0 Communication controller: Intel Corporation Sunrise Point-H CSME HECI #1 (rev 31)
00:16.3 Serial controller: Intel Corporation Sunrise Point-H KT Redirection (rev 31)
00:17.0 SATA controller: Intel Corporation Sunrise Point-H SATA controller [AHCI mode] (rev 31)
00:1c.0 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root Port #2 (rev f1)
00:1c.2 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root Port #3 (rev f1)
00:1c.4 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root Port #5 (rev f1)
00:1d.0 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root Port #9 (rev f1)
00:1f.0 ISA bridge: Intel Corporation Sunrise Point-H LPC Controller (rev 31)
00:1f.2 Memory controller: Intel Corporation Sunrise Point-H PMC (rev 31)
00:1f.3 Audio device: Intel Corporation CM238 HD Audio Controller (rev 31)
00:1f.4 SMBus: Intel Corporation Sunrise Point-H SMBus (rev 31)
00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (5) I219-LM (rev 31)
01:00.0 Network controller: Intel Corporation Wireless 8265 / 8275 (rev 78)
02:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS525A PCI Express Card Reader (rev 01)
04:00.0 Non-Volatile memory controller: SK hynix PC300 NVMe Solid State Drive
#

# lspci -v
...
00:02.0 VGA compatible controller: Intel Corporation Device 591b (rev 04) (prog-if 00 [VGA controller])
	Subsystem: Dell Device 07d1
	Flags: bus master, fast devsel, latency 0, IRQ 127
	Memory at ee000000 (64-bit, non-prefetchable) [size=16M]
	Memory at d0000000 (64-bit, prefetchable) [size=256M]
	I/O ports at f000 [size=64]
	[virtual] Expansion ROM at 000c0000 [disabled] [size=128K]
	Capabilities: [40] Vendor Specific Information: Len=0c <?>
	Capabilities: [70] Express Root Complex Integrated Endpoint, MSI 00
	Capabilities: [ac] MSI: Enable+ Count=1/1 Maskable- 64bit-
	Capabilities: [d0] Power Management version 2
	Capabilities: [100] Process Address Space ID (PASID)
	Capabilities: [200] Address Translation Service (ATS)
	Capabilities: [300] Page Request Interface (PRI)
	Kernel driver in use: i915
Comment 4 Jani Saarinen 2018-04-04 06:04:31 UTC
Reported, please spesify what was usecase here to see failure. 
Also if you have some pictures from screen shots or anything? 
Could you please also attach dmesg with drm.debug=0xe parameter on grub
Comment 5 mmokrejs@fold.natur.cuni.cz 2018-04-04 08:07:39 UTC
Created attachment 138569 [details]
dmesg-4.14.15_drm_debug

Here is debug log after a fresh boot. It is too verbose so the dmesg buffer already scrolled away.

I don't think I observed a user-visible error. I have xscreensaver running and also I was re-compiling some apps too so the CPU was loaded. Whether it has to do with 2D or 3D or just high CPU usage I cannot say. According to glxinfo I have DRI 1.4 enabled.

I will eventually update this bug report but provided the logging is so verbose I suspect I will miss the Error entry quickly.
Comment 6 mmokrejs@fold.natur.cuni.cz 2018-04-04 08:09:31 UTC
And I use an external LCD screen hooked to this laptop, via HDMI.
Comment 7 Jani Nikula 2018-04-04 08:49:20 UTC
(In reply to mmokrejs@fold.natur.cuni.cz from comment #5)
> Here is debug log after a fresh boot. It is too verbose so the dmesg buffer
> already scrolled away.

Please add log_buf_len=4M or more, rinse and repeat.
Comment 8 Jiri Slaby 2018-04-06 10:54:56 UTC
Created attachment 138650 [details]
dmesg from 4.16

I see this too with 4.16:
# dmesg|grep intel_pipe_update_end
> [  800.581084] [drm:intel_pipe_update_end [i915]] *ERROR* Atomic update failure on pipe A (start=48505 end=48506) time 157 us, min 1073, max 1079, scanline start 1072, end 1082
> [18528.728284] [drm:intel_pipe_update_end [i915]] *ERROR* Atomic update failure on pipe A (start=50206 end=50207) time 112 us, min 1073, max 1079, scanline start 1072, end 1080
> [19427.308053] [drm:intel_pipe_update_end [i915]] *ERROR* Atomic update failure on pipe A (start=270 end=271) time 153 us, min 1073, max 1079, scanline start 1070, end 1080
> [21861.846603] [drm:intel_pipe_update_end [i915]] *ERROR* Atomic update failure on pipe A (start=59654 end=59655) time 179 us, min 1073, max 1079, scanline start 1071, end 1083
> [27259.388485] [drm:intel_pipe_update_end [i915]] *ERROR* Atomic update failure on pipe A (start=383506 end=383507) time 124 us, min 1073, max 1079, scanline start 1072, end 1080
> [30286.743515] [drm:intel_pipe_update_end [i915]] *ERROR* Atomic update failure on pipe A (start=565147 end=565148) time 179 us, min 1073, max 1079, scanline start 1068, end 1080

I have an external LCD connected by DisplayPort.
Comment 9 mmokrejs@fold.natur.cuni.cz 2018-04-09 15:05:50 UTC
While reading other bug reports, let me add mu external LCD is a 4K display and as far as I remember I manually configured it to run in HDMI 2.0 mode (instead of 1.2) hoping it is beneficial. I did not have much time to try to reproduce the error so far.
Comment 10 mmokrejs@fold.natur.cuni.cz 2018-04-09 20:36:19 UTC
Created attachment 138708 [details]
dmesg-4.15.15-on-battery-without-external-LCD-CPU_pipe_A_fifo_underrun

You are lucky, I was using the laptop not hooked to any external LCD at all, and on battery. The kernel was 4.15.15 with drm debug enabled.
Comment 11 Jani Saarinen 2018-04-25 11:48:08 UTC
Maarten any advice here?
Comment 12 Jani Saarinen 2018-05-04 12:30:18 UTC
Can you try with latest drm-tip: https://cgit.freedesktop.org/drm-tip with smae debugs?
Comment 13 Jani Saarinen 2018-05-17 08:58:12 UTC
Reporter, please try latest drm-tip.
Comment 14 mmokrejs@fold.natur.cuni.cz 2018-05-30 19:16:04 UTC
Hi,
  so with drm-tip as of the most-recent commit

commit fe5bde58dca53de7b615789c69ed83c6420d2d1a (HEAD -> drm-tip, origin/drm-tip, origin/HEAD)
Author: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Date:   Fri May 11 18:43:26 2018 +0200

    drm-tip: 2018y-05m-11d-16h-42m-25s UTC integration manifest


for the last 13 days

# uname -a
Linux dell_e5580 4.17.0-rc4+ #1 SMP Sun May 13 02:59:16 CEST 2018 x86_64 Intel(R) Core(TM) i7-7820HQ CPU @ 2.90GHz GenuineIntel GNU/Linux
# w
 21:11:07 up 13 days, 16:09,  1 user,  load average: 0,17, 0,10, 0,03
...

I haven't seen the 

# grep -i underrun /var/log/messages 
Apr  9 19:48:44 dell_e5580 kernel: [drm:intel_cpu_fifo_underrun_irq_handler] *ERROR* CPU pipe A FIFO underrun
Apr  9 19:48:44 dell_e5580 kernel: [drm:intel_fbc_underrun_work_fn] Disabling FBC due to FIFO underrun.
#

anymore. Unfortunately, the laptop was just running, I haven't been using it during that time, but maybe it is really fixed in drm-tip!

I will add some dmesg dumps from the fe5bde58dca53de7b615789c69ed83c6420d2d1a kernel. I wonder why is the kernel logging so dense if both the internal LCD and external LCD via HDMI are turned off.
Comment 15 mmokrejs@fold.natur.cuni.cz 2018-05-30 19:19:10 UTC
Created attachment 139870 [details]
dmesg-4.17.0-rc4+_fe5bde58dca53de7b615789c69ed83c6420d2d1a.tar.bz2

Several dmesg outputs as teh tiime progressed. Navigate using file timestamps.

The kernel was from drm-tip as of:

commit fe5bde58dca53de7b615789c69ed83c6420d2d1a (HEAD -> drm-tip, origin/drm-tip, origin/HEAD)
Author: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Date:   Fri May 11 18:43:26 2018 +0200

    drm-tip: 2018y-05m-11d-16h-42m-25s UTC integration manifest
Comment 16 mmokrejs@fold.natur.cuni.cz 2018-06-22 19:24:06 UTC
So I conclude that the issue was fixed in the drm-tip for me, I haven§t seen the issue since the new drp-tip kernel. Do you know which patches fixed this issue and when did they landed (or will land) mainstream kernel?
Comment 17 mmokrejs@fold.natur.cuni.cz 2018-06-22 19:29:24 UTC
Er, wrong bug. It does happen with drm-tip kernel:

# grep -i 'Atomic update failure' /var/log/messages 
Jun  1 13:13:19 dell_e5580 kernel: [drm:intel_pipe_update_end] *ERROR* Atomic update failure on pipe B (start=1241474 end=1241475) time 318 us, min 1431, max 1439, scanline start 1420, end 1450
Jun 11 00:38:07 dell_e5580 kernel: [drm:intel_pipe_update_end] *ERROR* Atomic update failure on pipe B (start=50322134 end=50322135) time 155 us, min 1431, max 1439, scanline start 1423, end 1452
#
Comment 18 mmokrejs@fold.natur.cuni.cz 2018-06-22 20:24:53 UTC
Created attachment 140285 [details]
messages_10klines_before_and_after.txt.gz

gzip -dc messages_June.gz |  grep 'Atomic update failure' -B 10000 -A 10000 | pigz -c > messages_10klines_before_and_after.txt.gz
Comment 19 mmokrejs@fold.natur.cuni.cz 2019-02-13 16:06:33 UTC
This bug still happens on the same hardware with 

# uname -a
Linux dell_e5580 4.20.7 #1 SMP Sat Feb 9 07:52:37 CET 2019 x86_64 Intel(R) Core(TM) i7-7820HQ CPU @ 2.90GHz GenuineIntel GNU/Linux
#

# dmesg
...
[ 3834.933103] [drm:intel_pipe_update_end] *ERROR* Atomic update failure on pipe A (start=231270 end=231271) time 176 us, min 1073, max 1079, scanline start 1072, end 1084
...


# cat /sys/kernel/debug/dri/0/i915_edp_psr_status
Sink_Support: no
#
       
# ls -latr /sys/kernel/debug/dri/0/
total 0
drwxr-xr-x  5 root root 0 Feb  9 14:50 ..
-r--r--r--  1 root root 0 Feb  9 14:50 state
-r--r--r--  1 root root 0 Feb  9 14:50 name
-r--r--r--  1 root root 0 Feb  9 14:50 internal_clients
-r--r--r--  1 root root 0 Feb  9 14:50 gem_names
-r--r--r--  1 root root 0 Feb  9 14:50 framebuffer
drwxr-xr-x  2 root root 0 Feb  9 14:50 eDP-1
drwxr-xr-x  3 root root 0 Feb  9 14:50 crtc-2
drwxr-xr-x  3 root root 0 Feb  9 14:50 crtc-1
drwxr-xr-x  3 root root 0 Feb  9 14:50 crtc-0
-r--r--r--  1 root root 0 Feb  9 14:50 clients
drwxr-xr-x  2 root root 0 Feb  9 14:50 HDMI-A-1
drwxr-xr-x  2 root root 0 Feb  9 14:50 DP-1
drwxr-xr-x 11 root root 0 Feb  9 14:50 .
drwxr-xr-x  2 root root 0 Feb  9 14:50 HDMI-A-2
drwxr-xr-x  2 root root 0 Feb  9 14:50 DP-2
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_wedged
-r--r--r--  1 root root 0 Feb  9 14:50 i915_wa_registers
-r--r--r--  1 root root 0 Feb  9 14:50 i915_vbt
-r--r--r--  1 root root 0 Feb  9 14:50 i915_swizzle_info
-r--r--r--  1 root root 0 Feb  9 14:50 i915_sseu_status
-r--r--r--  1 root root 0 Feb  9 14:50 i915_sr_status
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_spr_wm_latency
-r--r--r--  1 root root 0 Feb  9 14:50 i915_shrinker_info
-r--r--r--  1 root root 0 Feb  9 14:50 i915_shared_dplls_info
-r--r--r--  1 root root 0 Feb  9 14:50 i915_runtime_pm_status
-r--r--r--  1 root root 0 Feb  9 14:50 i915_rps_boost_info
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_ring_test_irq
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_ring_missed_irq
-r--r--r--  1 root root 0 Feb  9 14:50 i915_ring_freq_table
-r--r--r--  1 root root 0 Feb  9 14:50 i915_reset_info
-r--r--r--  1 root root 0 Feb  9 14:50 i915_rcs_topology
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_pri_wm_latency
-r--r--r--  1 root root 0 Feb  9 14:50 i915_ppgtt_info
-r--r--r--  1 root root 0 Feb  9 14:50 i915_power_domain_info
-r--r--r--  1 root root 0 Feb  9 14:50 i915_opregion
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_next_seqno
-r--r--r--  1 root root 0 Feb  9 14:50 i915_llc
-r--r--r--  1 root root 0 Feb  9 14:50 i915_ips_status
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_ipc_status
-r--r--r--  1 root root 0 Feb  9 14:50 i915_huc_load_status
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_hpd_storm_ctl
-r--r--r--  1 root root 0 Feb  9 14:50 i915_hangcheck_info
-r--r--r--  1 root root 0 Feb  9 14:50 i915_guc_stage_pool
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_guc_log_relay
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_guc_log_level
-r--r--r--  1 root root 0 Feb  9 14:50 i915_guc_log_dump
-r--r--r--  1 root root 0 Feb  9 14:50 i915_guc_load_status
-r--r--r--  1 root root 0 Feb  9 14:50 i915_guc_load_err_log_dump
-r--r--r--  1 root root 0 Feb  9 14:50 i915_guc_info
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_gpu_info
-r--r--r--  1 root root 0 Feb  9 14:50 i915_gem_stolen
-r--r--r--  1 root root 0 Feb  9 14:50 i915_gem_objects
-r--r--r--  1 root root 0 Feb  9 14:50 i915_gem_interrupt
-r--r--r--  1 root root 0 Feb  9 14:50 i915_gem_gtt
-r--r--r--  1 root root 0 Feb  9 14:50 i915_gem_framebuffer
-r--r--r--  1 root root 0 Feb  9 14:50 i915_gem_fence_regs
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_gem_drop_caches
-r--r--r--  1 root root 0 Feb  9 14:50 i915_gem_batch_pool
-r--r--r--  1 root root 0 Feb  9 14:50 i915_frontbuffer_tracking
-r--r--r--  1 root root 0 Feb  9 14:50 i915_frequency_info
-r--------  1 root root 0 Feb  9 14:50 i915_forcewake_user
-r--r--r--  1 root root 0 Feb  9 14:50 i915_forcewake_domains
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_fifo_underrun_reset
-r--r--r--  1 root root 0 Feb  9 14:50 i915_fbc_status
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_fbc_false_color
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_error_state
-r--r--r--  1 root root 0 Feb  9 14:50 i915_engine_info
-r--r--r--  1 root root 0 Feb  9 14:50 i915_energy_uJ
-r--r--r--  1 root root 0 Feb  9 14:50 i915_emon_status
-r--r--r--  1 root root 0 Feb  9 14:50 i915_edp_psr_status
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_edp_psr_debug
-r--r--r--  1 root root 0 Feb  9 14:50 i915_drrs_status
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_drrs_ctl
-r--r--r--  1 root root 0 Feb  9 14:50 i915_drpc_info
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_dp_test_type
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_dp_test_data
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_dp_test_active
-r--r--r--  1 root root 0 Feb  9 14:50 i915_dp_mst_info
-r--r--r--  1 root root 0 Feb  9 14:50 i915_dmc_info
-r--r--r--  1 root root 0 Feb  9 14:50 i915_display_info
-r--r--r--  1 root root 0 Feb  9 14:50 i915_ddb_info
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_cur_wm_latency
-r--r--r--  1 root root 0 Feb  9 14:50 i915_context_status
-r--r--r--  1 root root 0 Feb  9 14:50 i915_capabilities
-rw-r--r--  1 root root 0 Feb  9 14:50 i915_cache_sharing
drwxr-xr-x  2 root root 0 Feb  9 14:50 HDMI-A-3
#
Comment 20 Lakshmi 2019-07-13 18:30:41 UTC
This could be related to bug 106107.
@Maarten, any suggestion here?


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.