Bug 88859 - [BSW]igt/kms_rotation_crc/cursor-rotation sporadically timeout and causes *ERROR* CPU pipe B FIFO underrun
Summary: [BSW]igt/kms_rotation_crc/cursor-rotation sporadically timeout and causes *ER...
Status: CLOSED FIXED
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: unspecified
Hardware: All Linux (All)
: medium normal
Assignee: Intel GFX Bugs mailing list
QA Contact: Intel GFX Bugs mailing list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-01-29 07:51 UTC by lu hua
Modified: 2016-10-10 10:42 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
dmesg (124.93 KB, text/plain)
2015-01-29 07:51 UTC, lu hua
no flags Details

Description lu hua 2015-01-29 07:51:54 UTC
Created attachment 112930 [details]
dmesg

==System Environment==
--------------------------
Regression: not sure

Non-working platforms: BSW

==kernel==
--------------------------
drm-intel-nightly/70438b51bdd44180b83f10591c3bdc1832d11dc2
commit 70438b51bdd44180b83f10591c3bdc1832d11dc2
Author: Daniel Vetter <daniel.vetter@ffwll.ch>
Date:   Tue Jan 27 12:11:03 2015 +0100

    drm-intel-nightly: 2015y-01m-27d-11h-10m-41s UTC integration manifest

==Bug detailed description==
-----------------------------
Run 5 cycles on BSW with the latest -nightly kernel. fail rate: 2/5, it also has bug 86767 
It also has following error:
<3>[ 2768.795405] [drm:valleyview_pipestat_irq_handler [i915]] *ERROR* CPU pipe B FIFO underrun

IGT-Version: 1.9-g7848d21 (x86_64) (Linux: 3.19.0-rc6_drm-intel-nightly_70438b_20150128+ x86_64)
Subtest cursor-rotation: TIMEOUT (13.084s)

==Reproduce steps==
---------------------------- 
./kms_rotation_crc --run-subtest cursor-rotation
Comment 1 Thomas Wood 2015-04-22 10:14:33 UTC
The timeout behaviour of the tests has been changed in commit cff102e (lib: use test failure status for igt_set_timeout). Please re-test with this commit.
Comment 2 ye.tian 2015-04-23 02:54:33 UTC
Test it on the latest nightly kernel and latest igt (e1ce5ea),this problem does not exists. but this case will fail, I will file as a new bug.

output:
---------------
root@x-bsw08:/GFX/Test/Intel_gpu_tools/intel-gpu-tools/tests# time ./kms_rotation_crc
IGT-Version: 1.10-ge1ce5ea (x86_64) (Linux: 4.0.0_drm-intel-nightly_b9fe35_20150421+ x86_64)
Test assertion failure function igt_assert_crc_equal, file igt_debugfs.c:207:
Failed assertion: a->crc[i] == b->crc[i]
error: 0x5ea185 != 0x57205c
Stack trace:
  #0 [__igt_fail_assert+0xf1]
  #1 [igt_assert_crc_equal+0x78]
  #2 [test_plane_rotation+0x143]
  #3 [__real_main362+0x60c]
  #4 [main+0x21]
  #5 [__libc_start_main+0xf5]
  #6 [_start+0x29]
  #7 [<unknown>+0x29]
Subtest primary-rotation-180 failed.
**** DEBUG ****
Test requirement passed: data->display.has_universal_planes
display: eDP-1: set_pipe(A)
Test requirement passed: igt_plane_supports_rotation(plane)
display: eDP-1: set_pipe(A)
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: }
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=2, pitch=7680)
igt_create_fb_with_bo_size(width=128, height=128, format=0x34325241 [bpp=32], tiling=0x0, size=0
igt_create_fb_with_bo_size(handle=3, pitch=512)
display: A.0: plane_set_fb(53)
display: A.0: plane_set_position(0,0)
Test requirement passed: data->display.has_universal_planes
display: commit {
display:     eDP-1: Selecting pipe A
display:     eDP-1: SetPlane A.0, fb 53, src = (0, 0) 1920x1080 dst = (0, 0) 1920x1080
display: }
display: A.0: plane_set_fb(53)
display: commit {
display:     eDP-1: Selecting pipe A
display:     eDP-1: SetPlane A.0, fb 53, src = (0, 0) 1920x1080 dst = (0, 0) 1920x1080
display: }
display: A.0: plane_set_rotation(180°)
display: commit {
display:     eDP-1: Selecting pipe A
display: }
Test assertion failure function igt_assert_crc_equal, file igt_debugfs.c:207:
Failed assertion: a->crc[i] == b->crc[i]
error: 0x5ea185 != 0x57205c
****  END  ****
Subtest primary-rotation-180: FAIL (1.552s)
Timed out
Subtest sprite-rotation-180 failed.
**** DEBUG ****
display: eDP-1: set_pipe(A)
Test requirement passed: igt_plane_supports_rotation(plane)
display: eDP-1: set_pipe(A)
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=4, pitch=7680)
display: A.0: plane_set_fb(55)
display: commit {
display:     eDP-1: Selecting pipe A
display:     eDP-1: SetCrtc pipe A, fb 55, panning (0, 0), mode 1920x1080
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=5, pitch=7680)
igt_create_fb_with_bo_size(width=128, height=128, format=0x34325241 [bpp=32], tiling=0x0, size=0
igt_create_fb_with_bo_size(handle=6, pitch=512)
display: A.1: plane_set_fb(56)
display: A.1: plane_set_position(0,0)
display: commit {
display:     eDP-1: Selecting pipe A
display:     eDP-1: SetPlane A.1, fb 56, src = (0, 0) 1920x1080 dst = (0, 0) 1920x1080
display: }
display: A.1: plane_set_fb(56)
display: commit {
display:     eDP-1: Selecting pipe A
display:     eDP-1: SetPlane A.1, fb 56, src = (0, 0) 1920x1080 dst = (0, 0) 1920x1080
display: }
display: A.1: plane_set_rotation(180°)
display: commit {
display:     eDP-1: Selecting pipe A
display: }
VT: original mode 0x0 restored
VT: graphics mode set (mode was 0x0)
display: eDP-1: set_pipe(A)
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=7, pitch=7680)
display: A.0: plane_set_fb(58)
display: commit {
display:     eDP-1: Selecting pipe A
display:     eDP-1: SetCrtc pipe A, fb 58, panning (0, 0), mode 1920x1080
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=8, pitch=7680)
igt_create_fb_with_bo_size(width=128, height=128, format=0x34325241 [bpp=32], tiling=0x0, size=0
igt_create_fb_with_bo_size(handle=9, pitch=512)
display: A.1: plane_set_fb(59)
display: A.1: plane_set_position(0,0)
display: commit {
display:     eDP-1: Selecting pipe A
display:     eDP-1: SetPlane A.1, fb 59, src = (0, 0) 1920x1080 dst = (0, 0) 1920x1080
display: }
display: A.1: plane_set_fb(59)
display: A.0: plane_set_fb(0)
display: A.1: plane_set_fb(0)
display: eDP-1: set_pipe(any)
display: commit {
display:     eDP-1: Selecting pipe A
display:     eDP-1: SetCrtc pipe A, disabling
display:     eDP-1: SetPlane pipe A, plane 1, disabling
display: }
display: eDP-1: set_pipe(B)
Test requirement passed: igt_plane_supports_rotation(plane)
display: eDP-1: set_pipe(B)
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=7, pitch=7680)
display: B.0: plane_set_fb(58)
display: commit {
display:     eDP-1: Selecting pipe B
display:     eDP-1: SetCrtc pipe B, fb 58, panning (0, 0), mode 1920x1080
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=8, pitch=7680)
igt_create_fb_with_bo_size(width=128, height=128, format=0x34325241 [bpp=32], tiling=0x0, size=0
igt_create_fb_with_bo_size(handle=9, pitch=512)
display: B.1: plane_set_fb(59)
display: B.1: plane_set_position(0,0)
display: commit {
display:     eDP-1: Selecting pipe B
display:     eDP-1: SetPlane B.1, fb 59, src = (0, 0) 1920x1080 dst = (0, 0) 1920x1080
display: }
display: B.1: plane_set_fb(59)
display: commit {
display:     eDP-1: Selecting pipe B
display:     eDP-1: SetPlane B.1, fb 59, src = (0, 0) 1920x1080 dst = (0, 0) 1920x1080
display: }
display: B.1: plane_set_rotation(180°)
display: commit {
display:     eDP-1: Selecting pipe B
display: }
VT: original mode 0x0 restored
VT: graphics mode set (mode was 0x0)
display: eDP-1: set_pipe(B)
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=10, pitch=7680)
display: B.0: plane_set_fb(61)
display: commit {
display:     eDP-1: Selecting pipe B
display:     eDP-1: SetCrtc pipe B, fb 61, panning (0, 0), mode 1920x1080
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=11, pitch=7680)
igt_create_fb_with_bo_size(width=128, height=128, format=0x34325241 [bpp=32], tiling=0x0, size=0
igt_create_fb_with_bo_size(handle=12, pitch=512)
display: B.1: plane_set_fb(62)
display: B.1: plane_set_position(0,0)
display: commit {
display:     eDP-1: Selecting pipe B
display:     eDP-1: SetPlane B.1, fb 62, src = (0, 0) 1920x1080 dst = (0, 0) 1920x1080
display: }
display: B.1: plane_set_fb(62)
display: B.0: plane_set_fb(0)
display: B.1: plane_set_fb(0)
display: eDP-1: set_pipe(any)
display: commit {
display:     eDP-1: Selecting pipe A
display: }
display: eDP-1: set_pipe(C)
Test requirement passed: igt_plane_supports_rotation(plane)
display: eDP-1: set_pipe(C)
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=10, pitch=7680)
display: C.0: plane_set_fb(61)
display: commit {
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=11, pitch=7680)
igt_create_fb_with_bo_size(width=128, height=128, format=0x34325241 [bpp=32], tiling=0x0, size=0
igt_create_fb_with_bo_size(handle=12, pitch=512)
display: C.1: plane_set_fb(62)
display: C.1: plane_set_position(0,0)
display: commit {
display: }
Timed out
****  END  ****
Subtest sprite-rotation-180: FAIL (11.947s)
Test requirement not met in function test_plane_rotation, file kms_rotation_crc.c:359:
Test requirement: valid_tests
no valid crtc/connector combinations found
Subtest cursor-rotation-180: SKIP (0.000s)
Test requirement not met in function __real_main362, file kms_rotation_crc.c:395:
Test requirement: gen >= 9
Subtest primary-rotation-90: SKIP (0.000s)
Test requirement not met in function __real_main362, file kms_rotation_crc.c:401:
Test requirement: gen >= 9
Subtest primary-rotation-270: SKIP (0.000s)
Test requirement not met in function __real_main362, file kms_rotation_crc.c:407:
Test requirement: gen >= 9
Subtest sprite-rotation-90: SKIP (0.000s)
Test requirement not met in function __real_main362, file kms_rotation_crc.c:413:
Test requirement: gen >= 9
Subtest sprite-rotation-270: SKIP (0.000s)
Test requirement not met in function __real_main362, file kms_rotation_crc.c:419:
Test requirement: gen >= 9
Subtest sprite-rotation-90-pos-100-0: SKIP (0.000s)
Test requirement not met in function __real_main362, file kms_rotation_crc.c:427:
Test requirement: gen >= 9
Subtest 90-rotation-unsupported-tiling-pixel-format: SKIP (0.000s)

real    0m14.127s
user    0m0.075s
sys     0m0.296s
Comment 3 Jari Tahvanainen 2016-10-10 10:42:37 UTC
Closing verified+fixed.


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.