==System Environment== -------------------------- Regression: Yes. Non-working platforms: BDW ==kernel== -------------------------- origin/drm-intel-nightly:c5660b4ad395f1e34eacc22cf81c687edfc9c83c(fails) drm-intel-nightly: 2014y-09m-19d-18h-12m-22s UTC integration manifest ==Bug detailed description== ----------------------------- igt/kms_flip/bo-too-big causes "WARNING: CPU: 0 PID: 23592 at drivers/gpu/drm/drm_irq.c:1089 drm_wait_one_vblank+0x140/0x16b [drm]()" Dmesg: [ 800.191509] WARNING: CPU: 0 PID: 23592 at drivers/gpu/drm/drm_irq.c:1089 drm_wait_one_vblank+0x140/0x16b [drm]() [ 800.331935] vblank wait timed out on crtc 1 [ 800.399579] Modules linked in: ip6table_filter ip6_tables iptable_filter ip_tables ebtable_nat ebtables ipv6 x_tables dm_mod iTCO_wdt iTCO_vendor_support ppdev snd_hda_codec_hdmi snd_hda_intel snd_hda_controller snd_hda_codec snd_hwdep pcspkr lpc_ich snd_pcm snd_timer i2c_i801 mfd_core snd soundcore battery parport_pc parport ac acpi_cpufreq i915 button video drm_kms_helper drm [ 801.215019] CPU: 0 PID: 23592 Comm: kms_flip Not tainted 3.17.0-rc5_prts_ab7f1a_20140917_debug+ #28 [ 801.341792] 0000000000000000 ffff8800a59cba08 ffffffff8181608c ffff8800a59cba50 [ 801.499527] ffff8800a59cba40 ffffffff8103e87f ffffffffa000611a 0000000000000001 [ 801.623572] ffff880149f83000 ffff88014999e500 0000000000000001 ffff8800a59cbaa0 [ 801.798185] Call Trace: [ 801.844769] [] dump_stack+0x45/0x56 [ 801.924017] [] warn_slowpath_common+0x7f/0x98 [ 802.013826] [] ? drm_wait_one_vblank+0x140/0x16b [drm] [ 802.113102] [] warn_slowpath_fmt+0x4c/0x4e [ 802.199736] [] ? finish_wait+0x5c/0x65 [ 802.282182] [] drm_wait_one_vblank+0x140/0x16b [drm] [ 802.379324] [] ? abort_exclusive_wait+0x89/0x89 [ 802.471260] [] intel_enable_primary_hw_plane+0x7a/0x83 [i915] [ 802.577936] [] intel_crtc_enable_planes+0x2f/0xd7 [i915] [ 802.679338] [] haswell_crtc_enable+0x876/0x89d [i915] [ 802.777576] [] __intel_set_mode+0xc77/0x127f [i915] [ 802.873708] [] intel_set_mode+0x14/0x2a [i915] [ 802.964555] [] intel_crtc_set_config+0x9b6/0xa9f [i915] [ 803.064888] [] drm_mode_set_config_internal+0x55/0xe0 [drm] [ 803.169474] [] drm_mode_setcrtc+0x39e/0x498 [drm] [ 803.263508] [] drm_ioctl+0x385/0x404 [drm] [ 803.350123] [] ? drm_mode_setplane+0x1d8/0x1d8 [drm] [ 803.447289] [] do_vfs_ioctl+0x3a3/0x46c [ 803.530752] [] ? current_kernel_time+0x61/0x9a [ 803.621606] [] ? trace_hardirqs_on_caller+0x16e/0x18a [ 803.719836] [] SyS_ioctl+0x50/0x7d [ 803.798028] [] system_call_fastpath+0x16/0x1b [ 803.887828] ---[ end trace cf73ea7c0a54ece6 ]--- [ 805.364639] ------------[ cut here ]------------ [ 805.436565] WARNING: CPU: 0 PID: 23592 at drivers/gpu/drm/drm_irq.c:1089 drm_wait_one_vblank+0x140/0x16b [drm]() [ 805.576987] vblank wait timed out on crtc 2 [ 805.644631] Modules linked in: ip6table_filter ip6_tables iptable_filter ip_tables ebtable_nat ebtables ipv6 x_tables dm_mod iTCO_wdt iTCO_vendor_support ppdev snd_hda_codec_hdmi snd_hda_intel snd_hda_controller snd_hda_codec snd_hwdep pcspkr lpc_ich snd_pcm snd_timer i2c_i801 mfd_core snd soundcore battery parport_pc parport ac acpi_cpufreq i915 button video drm_kms_helper drm [ 806.493896] CPU: 0 PID: 23592 Comm: kms_flip Tainted: G W 3.17.0-rc5_prts_ab7f1a_20140917_debug+ #28 [ 806.634340] 0000000000000000 ffff8800a59cba08 ffffffff8181608c ffff8800a59cba50 [ 806.808959] ffff8800a59cba40 ffffffff8103e87f ffffffffa000611a 0000000000000002 [ 806.949849] ffff880149f83000 ffff88014999e600 0000000000000001 ffff8800a59cbaa0 [ 807.107663] Call Trace: [ 807.154207] [] dump_stack+0x45/0x56 [ 807.233458] [] warn_slowpath_common+0x7f/0x98 [ 807.323266] [] ? drm_wait_one_vblank+0x140/0x16b [drm] [ 807.422548] [] warn_slowpath_fmt+0x4c/0x4e [ 807.509181] [] ? finish_wait+0x5c/0x65 [ 807.591603] [] drm_wait_one_vblank+0x140/0x16b [drm] [ 807.688778] [] ? abort_exclusive_wait+0x89/0x89 [ 807.780717] [] intel_enable_primary_hw_plane+0x7a/0x83 [i915] [ 807.887390] [] intel_crtc_enable_planes+0x2f/0xd7 [i915] [ 807.988791] [] haswell_crtc_enable+0x876/0x89d [i915] [ 808.087031] [] __intel_set_mode+0xc77/0x127f [i915] [ 808.183163] [] intel_set_mode+0x14/0x2a [i915] [ 808.274004] [] intel_crtc_set_config+0x9b6/0xa9f [i915] [ 808.374348] [] drm_mode_set_config_internal+0x55/0xe0 [drm] [ 808.478914] [] drm_mode_setcrtc+0x39e/0x498 [drm] [ 808.572927] [] drm_ioctl+0x385/0x404 [drm] [ 808.659562] [] ? drm_mode_setplane+0x1d8/0x1d8 [drm] [ 808.756735] [] do_vfs_ioctl+0x3a3/0x46c [ 808.840202] [] ? current_kernel_time+0x61/0x9a [ 808.931053] [] ? trace_hardirqs_on_caller+0x16e/0x18a [ 809.029291] [] SyS_ioctl+0x50/0x7d [ 809.107613] [] system_call_fastpath+0x16/0x1b [ 809.197281] ---[ end trace cf73ea7c0a54ece7 ]---", ==Reproduce steps== ---------------------------- 1. ./kms_flip --run-subtest bo-too-big ==Bisect results form [PRTS][auto-bisect]== ---------------------------- commit 7682654dacbf60887b6d090f1228a80e14caddbc Author: Daniel Vetter <daniel.vetter@ffwll.ch> AuthorDate: Mon Sep 15 12:36:02 2014 +0200 Commit: Daniel Vetter <daniel.vetter@ffwll.ch> CommitDate: Tue Sep 16 10:22:08 2014 +0200 drm/i915: Use generic vblank wait This has the upside that it will no longer steal interrupts from the interrupt handler on pre-g4x. Furthermore this will now scream properly on all platforms if we don't have hw counters enabled. v2: Adjust to the new names. Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Matt Roper <matthew.d.roper@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Cases below have the same failure: On BDW igt/kms_flip/bo-too-big-interruptible igt/kms_flip/flip-vs-dpms-off-vs-modeset igt/kms_flip/single-buffer-flip-vs-dpms-off-vs-modeset-interruptible igt/kms_flip/modeset-vs-vblank-race igt/kms_flip/dpms-vs-vblank-race igt/kms_pipe_crc_basic/hang-read-crc-pipe-B igt/kms_pipe_crc_basic/hang-read-crc-pipe-C igt/kms_flip/flip-vs-dpms-off-vs-modeset-interruptible igt/kms_flip/single-buffer-flip-vs-dpms-off-vs-modeset igt/kms_cursor_crc/cursor-size-change On PNV igt/kms_cursor_crc/cursor-128-onscreen
Cases below have the same failure on BDW: igt/kms_mmio_vs_cs_flip/setplane_vs_cs_flip
Test on BDW with latest -nightly kernel, It impacts 50+ subcases. Include: kms_cursor_crc, kms_plane, kms_flip, kms_pipe_crc_basic and kms_mmio_vs_cs_flip.
Created attachment 106764 [details] full dmesg
(In reply to comment #3) > Test on BDW with latest -nightly kernel, It impacts 50+ subcases. Daniel?
I have a hard time reproducing this, and from code inspection it should work. So there seems to be a bug still in drm_crtc_vblank_on. Please test with this debug patch an attach drm.debug=0xe dmesg with a backtrace: http://patchwork.freedesktop.org/patch/34421/
Created attachment 107531 [details] dmesg (In reply to Daniel Vetter from comment #6) > I have a hard time reproducing this, and from code inspection it should > work. So there seems to be a bug still in drm_crtc_vblank_on. Please test > with this debug patch an attach drm.debug=0xe dmesg with a backtrace: > > http://patchwork.freedesktop.org/patch/34421/ The failure still able to reproduce with this patch. root@x-bdw05:/GFX/Test/Intel_gpu_tools/intel-gpu-tools/tests# ./kms_flip --run-subtest bo-too-big IGT-Version: 1.8-g6a8d33c (x86_64) (Linux: 3.17.0_kcloud_dda93f_20141008+ x86_64) Using monotonic timestamps Beginning bo-too-big on crtc 8, connector 19 1920x1080 60 1920 1966 1996 2080 1080 1082 1086 1112 0xa 0x48 138780 Beginning bo-too-big on crtc 12, connector 19 1920x1080 60 1920 1966 1996 2080 1080 1082 1086 1112 0xa 0x48 138780 Beginning bo-too-big on crtc 16, connector 19 1920x1080 60 1920 1966 1996 2080 1080 1082 1086 1112 0xa 0x48 138780 Subtest bo-too-big: SUCCESS (2.629s) root@x-bdw05:/GFX/Test/Intel_gpu_tools/intel-gpu-tools/tests# dmesg -r|egrep "<[1-4]>"|grep drm <4>[ 306.181902] WARNING: CPU: 0 PID: 4614 at drivers/gpu/drm/drm_irq.c:1092 drm_wait_one_vblank+0x148/0x173 [drm]() <4>[ 306.181904] Modules linked in: iTCO_wdt iTCO_vendor_support ppdev dm_mod pcspkr i2c_i801 snd_hda_codec_hdmi snd_hda_intel snd_hda_controller snd_hda_codec snd_hwdep snd_pcm lpc_ich mfd_core snd_timer snd soundcore battery parport_pc parport ac acpi_cpufreq i915 button video drm_kms_helper drm <4>[ 306.181946] [<ffffffffa0005e5c>] ? drm_wait_one_vblank+0x148/0x173 [drm] <4>[ 306.181956] [<ffffffffa0005e5c>] ? drm_wait_one_vblank+0x148/0x173 [drm] <4>[ 306.182021] [<ffffffffa000bd78>] ? drm_mode_set_config_internal+0x48/0xbd [drm] <4>[ 306.182029] [<ffffffffa000f498>] ? drm_mode_setcrtc+0x388/0x47e [drm] <4>[ 306.182036] [<ffffffffa0004741>] ? drm_ioctl+0x344/0x3b3 [drm] <4>[ 306.182042] [<ffffffffa000f110>] ? drm_mode_setplane+0x1cd/0x1cd [drm] <4>[ 307.312482] WARNING: CPU: 0 PID: 4614 at drivers/gpu/drm/drm_irq.c:1092 drm_wait_one_vblank+0x148/0x173 [drm]() <4>[ 307.312485] Modules linked in: iTCO_wdt iTCO_vendor_support ppdev dm_mod pcspkr i2c_i801 snd_hda_codec_hdmi snd_hda_intel snd_hda_controller snd_hda_codec snd_hwdep snd_pcm lpc_ich mfd_core snd_timer snd soundcore battery parport_pc parport ac acpi_cpufreq i915 button video drm_kms_helper drm <4>[ 307.312528] [<ffffffffa0005e5c>] ? drm_wait_one_vblank+0x148/0x173 [drm] <4>[ 307.312537] [<ffffffffa0005e5c>] ? drm_wait_one_vblank+0x148/0x173 [drm] <4>[ 307.312604] [<ffffffffa000bd78>] ? drm_mode_set_config_internal+0x48/0xbd [drm] <4>[ 307.312612] [<ffffffffa000f498>] ? drm_mode_setcrtc+0x388/0x47e [drm] <4>[ 307.312619] [<ffffffffa0004741>] ? drm_ioctl+0x344/0x3b3 [drm] <4>[ 307.312626] [<ffffffffa000f110>] ? drm_mode_setplane+0x1cd/0x1cd [drm]
According to my tests, patch "drm/i915: properly reenable gen8 pipe IRQs" fixes the bug on BDW. Can you please confirm this? I really believe we should consider the PNV bug as a separate bug, and with its own bug report.
Patch that paulo mentioned is already on -nightly. Please verify. I also agree if it still hapens on PNV it should be a different bug.
The failure unable to reproduce on both PNV and BDW. The test result on PNV is skipped. Verified.
Closing old verified.
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.