Summary: | [BSW]igt/kms_cursor_crc/cursor-size-change sporadically causes *ERROR* CPU pipe B FIFO underrun | ||||||
---|---|---|---|---|---|---|---|
Product: | DRI | Reporter: | lu hua <huax.lu> | ||||
Component: | DRM/Intel | Assignee: | Intel GFX Bugs mailing list <intel-gfx-bugs> | ||||
Status: | CLOSED FIXED | QA Contact: | Intel GFX Bugs mailing list <intel-gfx-bugs> | ||||
Severity: | normal | ||||||
Priority: | medium | CC: | christophe.prigent, intel-gfx-bugs | ||||
Version: | unspecified | ||||||
Hardware: | All | ||||||
OS: | Linux (All) | ||||||
Whiteboard: | |||||||
i915 platform: | BSW/CHT | i915 features: | display/Other | ||||
Attachments: |
|
Description
lu hua
2015-02-05 03:26:50 UTC
gem_partial_pwrite_pread also has this issue. @test: Intel_gpu_tools/igt_gem_partial_pwrite_pread_reads-display info: @@@Returncode: 0 test case start at: Sun Jan 25 18:11:59 2015 test case end at: Sun Jan 25 18:13:30 2015 Errors: Dmesg: <3>[ 1067.244381] [drm:valleyview_pipestat_irq_handler [i915]] *ERROR* CPU pipe B FIFO underrun Output: command pid dev master a uid magic Test Environment check: Succeeded. [1/1] dmesg-warn: 1 | [1/1] dmesg-warn: 1 / Thank you for running Piglit! Results have been written to /GFX/Test/Piglit/piglit/t { "results_version": 2, "uname": "Linux x-bsw01 3.19.0-rc7_drm-intel-nightly_9583cb_20150205+ #78 SMP Thu Feb 5 11:22:58 CST 2015 x86_64 x86_64 x86_64 GNU/Linux\n", "time_elapsed": 86.20326805114746, "tests": { "igt/gem_partial_pwrite_pread/reads-display": { "dmesg": "[ 1067.244381] [drm:valleyview_pipestat_irq_handler [i915]] *ERROR* CPU pipe B FIFO underrun", "returncode": 0, "err": "", "environment": "PIGLIT_SOURCE_DIR=\"/GFX/Test/Piglit/piglit\" PIGLIT_PLATFORM=\"mixed_glx_egl\"", "command": "/GFX/Test/Intel_gpu_tools/intel-gpu-tools/tests/gem_partial_pwrite_pread --run-subtest reads-display", "result": "dmesg-warn", "time": 85.9983479976654, "out": "IGT-Version: 1.9-g87edb51 (x86_64) (Linux: 3.19.0-rc7_drm-intel-nightly_9583cb_20150205+ x86_64)\nchecking partial reads\nSubtest reads-display: SUCCESS (85.858s)\n" gem_seqno_wrap also has this error. @test: Intel_gpu_tools/igt_gem_seqno_wrap info: @@@Returncode: 0 test case start at: Sun Jan 25 15:37:46 2015 test case end at: Sun Jan 25 15:38:24 2015 Errors: Dmesg: <3>[ 55.143550] [drm:valleyview_pipestat_irq_handler [i915]] *ERROR* CPU pipe B FIFO underrun Output: command pid dev master a uid magic Test Environment check: Succeeded. [1/1] dmesg-warn: 1 | [1/1] dmesg-warn: 1 / Thank you for running Piglit! Results have been written to /GFX/Test/Piglit/piglit/t { "results_version": 2, "uname": "Linux x-bsw01 3.19.0-rc7_drm-intel-nightly_0eafcb_20150204+ #38 SMP Wed Feb 4 11:26:26 CST 2015 x86_64 x86_64 x86_64 GNU/Linux\n", "time_elapsed": 32.82405996322632, "tests": { "igt/gem_seqno_wrap": { "dmesg": "[ 55.143550] [drm:valleyview_pipestat_irq_handler [i915]] *ERROR* CPU pipe B FIFO underrun", "returncode": 0, "err": "", "environment": "PIGLIT_SOURCE_DIR=\"/GFX/Test/Piglit/piglit\" PIGLIT_PLATFORM=\"mixed_glx_egl\"", "command": "/GFX/Test/Intel_gpu_tools/intel-gpu-tools/tests/gem_seqno_wrap", "result": "dmesg-warn", "time": 32.59163308143616, "out": "IGT-Version: 1.9-g87edb51 (x86_64) (Linux: 3.19.0-rc7_drm-intel-nightly_0eafcb_20150204+ x86_64)\n" } }, gem_userptr_blits_forked-sync-swapping-multifd-mempressure-interruptible also has this error. @test: Intel_gpu_tools/igt_gem_userptr_blits_forked-sync-swapping-multifd-mempressure-interruptible info: @@@Returncode: 0 test case start at: Sun Jan 25 15:48:40 2015 test case end at: Sun Jan 25 15:49:19 2015 Errors: Dmesg: <3>[ 711.421830] [drm:valleyview_pipestat_irq_handler [i915]] *ERROR* CPU pipe B FIFO underrun Output: command pid dev master a uid magic Test Environment check: Succeeded. [1/1] dmesg-warn: 1 | [1/1] dmesg-warn: 1 / Thank you for running Piglit! Results have been written to /GFX/Test/Piglit/piglit/t { "results_version": 2, "uname": "Linux x-bsw01 3.19.0-rc7_drm-intel-nightly_0eafcb_20150204+ #38 SMP Wed Feb 4 11:26:26 CST 2015 x86_64 x86_64 x86_64 GNU/Linux\n", "time_elapsed": 33.72999906539917, "tests": { "igt/gem_userptr_blits/forked-sync-swapping-multifd-mempressure-interruptible": { "dmesg": "[ 711.421830] [drm:valleyview_pipestat_irq_handler [i915]] *ERROR* CPU pipe B FIFO underrun", "returncode": 0, "err": "", "environment": "PIGLIT_SOURCE_DIR=\"/GFX/Test/Piglit/piglit\" PIGLIT_PLATFORM=\"mixed_glx_egl\"", "command": "/GFX/Test/Intel_gpu_tools/intel-gpu-tools/tests/gem_userptr_blits --run-subtest forked-sync-swapping-multifd-mempressure-interruptible", "result": "dmesg-warn", "time": 33.49824404716492, "out": "IGT-Version: 1.9-g87edb51 (x86_64) (Linux: 3.19.0-rc7_drm-intel-nightly_0eafcb_20150204+ x86_64)\nAperture size is 2048 MiB\nTotal RAM is 3876 MiB\nTesting unsynchronized mappings...\nTesting synchronized mappings...\nSubtest forked-sync-swapping-multifd-mempressure-interruptible: SUCCESS (33.470s)\n" } }, kms_cursor_crc_cursor-size-change also has this error. @test: Intel_gpu_tools/igt_kms_cursor_crc_cursor-size-change info: @@@Returncode: 0 test case start at: Sun Jan 25 16:06:30 2015 test case end at: Sun Jan 25 16:06:40 2015 Errors: Dmesg: <3>[ 406.217110] [drm:valleyview_pipestat_irq_handler [i915]] *ERROR* CPU pipe B FIFO underrun Output: command pid dev master a uid magic Test Environment check: Succeeded. [1/1] dmesg-fail: 1 | [1/1] dmesg-fail: 1 / Thank you for running Piglit! Results have been written to /GFX/Test/Piglit/piglit/t { "results_version": 2, "uname": "Linux x-bsw01 3.19.0-rc7_drm-intel-nightly_0eafcb_20150204+ #38 SMP Wed Feb 4 11:26:26 CST 2015 x86_64 x86_64 x86_64 GNU/Linux\n", "time_elapsed": 4.754825115203857, "tests": { "igt/kms_cursor_crc/cursor-size-change": { "dmesg": "[ 406.217110] [drm:valleyview_pipestat_irq_handler [i915]] *ERROR* CPU pipe B FIFO underrun", "returncode": 99, "err": "(kms_cursor_crc:18358) CRITICAL: Test assertion failure function test_cursor_size, file kms_cursor_crc.c:426:\n(kms_cursor_crc:18358) CRITICAL: Failed assertion: igt_crc_equal(&crc[i], &ref_crc)\n", "environment": "PIGLIT_SOURCE_DIR=\"/GFX/Test/Piglit/piglit\" PIGLIT_PLATFORM=\"mixed_glx_egl\"", "command": "/GFX/Test/Intel_gpu_tools/intel-gpu-tools/tests/kms_cursor_crc --run-subtest cursor-size-change", "result": "dmesg-fail", "time": 4.528465986251831, "out": "IGT-Version: 1.9-g87edb51 (x86_64) (Linux: 3.19.0-rc7_drm-intel-nightly_0eafcb_20150204+ x86_64)\nBeginning cursor-size-change on pipe A, connector eDP-1\n\ncursor-size-change on pipe A, connector eDP-1: PASSED\n\nBeginning cursor-size-change on pipe B, connector eDP-1\nSubtest cursor-size-change: FAIL (4.464s)\n" } }, kms_render_gpu-blit also has this error. @test: Intel_gpu_tools/igt_kms_render_gpu-blit info: @@@Returncode: 0 test case start at: Sun Jan 25 16:34:45 2015 test case end at: Sun Jan 25 16:36:07 2015 Errors: Dmesg: <6>[ 1690.121356] [drm] HPD interrupt storm detected on connector eDP-1: switching from hotplug detection to polling <3>[ 1697.299881] [drm:valleyview_pipestat_irq_handler [i915]] *ERROR* CPU pipe B FIFO underrun Output: command pid dev master a uid magic Test Environment check: Succeeded. [1/1] dmesg-warn: 1 | [1/1] dmesg-warn: 1 / Thank you for running Piglit! Results have been written to /GFX/Test/Piglit/piglit/t { "results_version": 2, "uname": "Linux x-bsw01 3.19.0-rc7_drm-intel-nightly_0eafcb_20150204+ #38 SMP Wed Feb 4 11:26:26 CST 2015 x86_64 x86_64 x86_64 GNU/Linux\n", "time_elapsed": 76.17300415039062, "tests": { "igt/kms_render/gpu-blit": { "dmesg": "[ 1697.299881] [drm:valleyview_pipestat_irq_handler [i915]] *ERROR* CPU pipe B FIFO underrun", "returncode": 0, "err": "", "environment": "PIGLIT_SOURCE_DIR=\"/GFX/Test/Piglit/piglit\" PIGLIT_PLATFORM=\"mixed_glx_egl\"", "command": "/GFX/Test/Intel_gpu_tools/intel-gpu-tools/tests/kms_render --run-subtest gpu-blit", "result": "dmesg-warn", "time": 76.0097291469574, "out": "IGT-Version: 1.9-g87edb51 (x86_64) (Linux: 3.19.0-rc7_drm-intel-nightly_0eafcb_20150204+ x86_64)\nBeginning test gpu-blit with 1920x1080 @ 60Hz / RGB565 on pipe A, encoder TMDS, connector eDP\nTest gpu-blit with 1920x1080 @ 60Hz / RGB565 on pipe A, encoder TMDS, connector eDP: PASSED\nBeginning test gpu-blit with 1920x1080 @ 60Hz / XRGB8888 on pipe A, encoder TMDS, connector eDP\nTest gpu-blit with 1920x1080 @ 60Hz / XRGB8888 on pipe A, encoder TMDS, connector eDP: PASSED\nBeginning test gpu-blit with 1920x1080 @ 60Hz / XRGB2101010 on pipe A, encoder TMDS, connector eDP\nTest gpu-blit with 1920x1080 @ 60Hz / XRGB2101010 on pipe A, encoder TMDS, connector eDP: PASSED\nBeginning test gpu-blit with 1920x1080 @ 60Hz / ARGB8888 on pipe A, encoder TMDS, connector eDP\nTest gpu-blit with 1920x1080 @ 60Hz / ARGB8888 on pipe A, encoder TMDS, connector eDP: PASSED\nBeginning test gpu-blit with 1920x1080 @ 60Hz / RGB565 on pipe B, encoder TMDS, connector eDP\nTest gpu-blit with 1920x1080 @ 60Hz / RGB565 on pipe B, encoder TMDS, connector eDP: PASSED\nBeginning test gpu-blit with 1920x1080 @ 60Hz / XRGB8888 on pipe B, encoder TMDS, connector eDP\nTest gpu-blit with 1920x1080 @ 60Hz / XRGB8888 on pipe B, encoder TMDS, connector eDP: PASSED\nBeginning test gpu-blit with 1920x1080 @ 60Hz / XRGB2101010 on pipe B, encoder TMDS, connector eDP\nTest gpu-blit with 1920x1080 @ 60Hz / XRGB2101010 on pipe B, encoder TMDS, connector eDP: PASSED\nBeginning test gpu-blit with 1920x1080 @ 60Hz / ARGB8888 on pipe B, encoder TMDS, connector eDP\nTest gpu-blit with 1920x1080 @ 60Hz / ARGB8888 on pipe B, encoder TMDS, connector eDP: PASSED\nSubtest gpu-blit: SUCCESS (74.839s)\n" } }, Once again try to disable "dynamic memory self refresh" in the BIOS and see if the problem goes away. I reproduce this error when run case kms_cursor_crc/cursor-size-change. I am unable to reproduce error when run following case manually. gem_evict_everything gem_partial_pwrite_pread_reads-display gem_seqno_wrap gem_userptr_blits_forked-sync-swapping-multifd-mempressure-interruptible kms_render_gpu-blit output: IGT-Version: 1.9-gbef692d (x86_64) (Linux: 3.19.0-rc7_drm-intel-nightly_75ce8a_20150206+ x86_64) Beginning cursor-size-change on pipe A, connector eDP-1 (kms_cursor_crc:4335) CRITICAL: Test assertion failure function test_cursor_size, file kms_cursor_crc.c:426: (kms_cursor_crc:4335) CRITICAL: Failed assertion: igt_crc_equal(&crc[i], &ref_crc) Subtest cursor-size-change: FAIL (1.672s) IGT-Version: 1.9-gbef692d (x86_64) (Linux: 3.19.0-rc7_drm-intel-nightly_75ce8a_20150206+ x86_64) Beginning cursor-size-change on pipe A, connector eDP-1 (kms_cursor_crc:4336) CRITICAL: Test assertion failure function test_cursor_size, file kms_cursor_crc.c:426: (kms_cursor_crc:4336) CRITICAL: Failed assertion: igt_crc_equal(&crc[i], &ref_crc) Subtest cursor-size-change: FAIL (1.645s) IGT-Version: 1.9-gbef692d (x86_64) (Linux: 3.19.0-rc7_drm-intel-nightly_75ce8a_20150206+ x86_64) Beginning cursor-size-change on pipe A, connector eDP-1 (kms_cursor_crc:4337) CRITICAL: Test assertion failure function test_cursor_size, file kms_cursor_crc.c:426: (kms_cursor_crc:4337) CRITICAL: Failed assertion: igt_crc_equal(&crc[i], &ref_crc) Subtest cursor-size-change: FAIL (1.691s) IGT-Version: 1.9-gbef692d (x86_64) (Linux: 3.19.0-rc7_drm-intel-nightly_75ce8a_20150206+ x86_64) Beginning cursor-size-change on pipe A, connector eDP-1 (kms_cursor_crc:4338) CRITICAL: Test assertion failure function test_cursor_size, file kms_cursor_crc.c:426: (kms_cursor_crc:4338) CRITICAL: Failed assertion: igt_crc_equal(&crc[i], &ref_crc) Subtest cursor-size-change: FAIL (1.668s) IGT-Version: 1.9-gbef692d (x86_64) (Linux: 3.19.0-rc7_drm-intel-nightly_75ce8a_20150206+ x86_64) Beginning cursor-size-change on pipe A, connector eDP-1 (kms_cursor_crc:4339) CRITICAL: Test assertion failure function test_cursor_size, file kms_cursor_crc.c:426: (kms_cursor_crc:4339) CRITICAL: Failed assertion: igt_crc_equal(&crc[i], &ref_crc) Subtest cursor-size-change: FAIL (1.636s) # dmesg -r|egrep "<[1-4]>"|grep drm <3>[ 101.338288] [drm:valleyview_pipestat_irq_handler [i915]] *ERROR* CPU pipe A FIFO underrun Disable "dynamic memory self refresh"in BIOS,then run kms_cursor_crc/cursor-size-change 10 cycles. I don't meet this error. Created attachment 113216 [details]
dmesg
Teset it on the latest nightly kernel and latest igt, It still exists. output: -------------------- root@x-bsw08:/GFX/Test/Intel_gpu_tools/intel-gpu-tools/tests# ./kms_cursor_crc --run-subtest cursor-size-change IGT-Version: 1.10-ge1ce5ea (x86_64) (Linux: 4.0.0_drm-intel-nightly_b9fe35_20150421+ x86_64) Beginning cursor-size-change on pipe A, connector eDP-1 Test assertion failure function igt_assert_crc_equal, file igt_debugfs.c:207: Failed assertion: a->crc[i] == b->crc[i] error: 0x2cae1c != 0x63f27f Stack trace: #0 [__igt_fail_assert+0xf1] #1 [igt_assert_crc_equal+0x78] #2 [test_cursor_size+0x1b1] #3 [run_test.constprop.3+0x212] #4 [__real_main556+0x1a0] #5 [main+0x21] #6 [__libc_start_main+0xf5] #7 [_start+0x29] #8 [<unknown>+0x29] Subtest cursor-size-change failed. **** DEBUG **** Test requirement passed: cursor_w <= data->cursor_max_w && cursor_h <= data->cursor_max_h display: eDP-1: set_pipe(A) display: A.3: plane_set_fb(0) display: commit { display: eDP-1: Selecting pipe A display: eDP-1: SetCursor pipe A, disabling display: } igt_create_fb_with_bo_size(width=1920, height=1080, format=0x34325258 [bpp=32], tiling=0x0, size=0 igt_create_fb_with_bo_size(handle=1, pitch=7680) display: A.0: plane_set_fb(51) display: commit { display: eDP-1: Selecting pipe A display: eDP-1: SetCrtc pipe A, fb 51, panning (0, 0), mode 1920x1080 display: } display: A.3: plane_set_fb(0) Beginning cursor-size-change on pipe A, connector eDP-1 igt_create_fb_with_bo_size(width=256, height=256, format=0x34325241 [bpp=32], tiling=0x0, size=0 igt_create_fb_with_bo_size(handle=2, pitch=1024) display: A.3: plane_set_fb(53) display: A.3: plane_set_size (256x256) display: A.3: plane_set_fb(0) display: commit { display: eDP-1: Selecting pipe A display: eDP-1: SetCursor pipe A, disabling display: } Test assertion failure function igt_assert_crc_equal, file igt_debugfs.c:207: Failed assertion: a->crc[i] == b->crc[i] error: 0x2cae1c != 0x63f27f **** END **** Subtest cursor-size-change: FAIL (1.866s) root@x-bsw08:/GFX/Test/Intel_gpu_tools/intel-gpu-tools/tests# dmesg -r | grep ERROR <3>[ 479.146745] [drm:valleyview_pipestat_irq_handler [i915]] *ERROR* CPU pipe A FIFO underrun Please try Ville's FIFO underrun elimination series [1] on top of drm-intel-nightly, also available at [2], and report back. [1] http://mid.gmane.org/1446146763-31821-1-git-send-email-ville.syrjala@linux.intel.com [2] git://github.com/vsyrjala/linux.git pch_fifo_underrun_fix_4 (In reply to Jani Nikula from comment #10) > Please try Ville's FIFO underrun elimination series [1] on top of > drm-intel-nightly, also available at [2], and report back. > > [1] > http://mid.gmane.org/1446146763-31821-1-git-send-email-ville.syrjala@linux. > intel.com > [2] git://github.com/vsyrjala/linux.git pch_fifo_underrun_fix_4 The series has been merged to drm-intel-nightly. Please retest that. The problem persists on BYT with kms_render@gpu-blit Latest graphic stack configuration Ubuntu 15.04 Kernel: 4.4.0-rc1-nightly+ Stdout IGT-Version: 1.12-gb68a642 (x86_64) (Linux: 4.4.0-rc1-nightly+ x86_64) Stack trace: #0 [__igt_fail_assert+0x101] #1 [__gem_mmap__gtt+0x0] #2 [gem_quiescent_gpu+0xa3] #3 [drm_open_driver+0x67] #4 [drm_open_driver_master+0x6] #5 [__real_main221+0x117] #6 [main+0x23] #7 [__libc_start_main+0xf0] #8 [_start+0x29] #9 [<unknown>+0x29] Subtest gpu-blit: FAIL Stderr Test assertion failure function gem_execbuf, file ioctl_wrappers.c:445: Failed assertion: result == 0 Last errno: 5, Input/output error Test kms_render failed. **** DEBUG **** (kms_render:5218) igt-core-DEBUG: Test requirement passed: !igt_run_in_simulation() Test requirement passed: fd >= 0 Test assertion failure function gem_execbuf, file ioctl_wrappers.c:445: Failed assertion: result == 0 Last errno: 5, Input/output error **** END **** Elio, is this issue still seen with latest kernel? reviewed with ww08 IGT ALL results on BYT abd BSW the test is passing in both platforms |
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.