Created attachment 94186 [details] dmesg system Environment: -------------------------- Platform: Pineview Kernel:(drm-intel-fixes)f51a44b9a6c4982cc25bfb3727de9bb893621ebc Bug detailed description: ----------------------------- kms_pipe_crc_basic/read-crc-pipe-A-frame-sequence is slow on pineview with -fixes and -nightly kernel. Run more than 30 minutes, It doesn't exit testing. The latest known good commit: 3670d6dbff7b829d71ce84d6c9cb88cd5abdbc53 The latest known bad commit: 959783684e2010326d91db2aa55f424f7e041c84 output: IGT-Version: 1.5-g9597836 (i686) (Linux: 3.13.0-rc8_drm-intel-fixes_f51a44_20140217+ i686) read-crc-pipe-A-frame-sequence: Testing connector LVDS-1 using pipe A Reproduce steps: ---------------------------- 1. ./kms_pipe_crc_basic --run-subtest read-crc-pipe-A-frame-sequence
can you strace the test and confirm that it's blcoking in a read() syscall? If so, this can be alleviated by implementing poll() support for this debugsfs file to be able to timeout.
Bisect shows: 417987353ec2bf637839990553967474ccf1528e is the first bad commit. commit 417987353ec2bf637839990553967474ccf1528e Author: Damien Lespiau <damien.lespiau@intel.com> Date: Mon Jan 27 16:32:09 2014 +0000 kms_pipe_crc_basic: Port to the new modeset API Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
I think this is another case of the new framework's failure to handle the "encoder can't be used on all pipes" restriction correctly. I see the hang on all my gen2/3 lvds machines. If we restrict the pipe of any connector on modern platforms it'll likely blow up exactly the same way. Poking Damien harder.
*** Bug 78282 has been marked as a duplicate of this bug. ***
This will block igt_kms testing on chv since that platform reintroduced pipe limits on certain outputs ...
*** Bug 77475 has been marked as a duplicate of this bug. ***
This bug still able to reproduce on BSW on latest -nightly(eb2af97968f0321622cf3aeb29991ad78cfdc1ca) [root@x-bsw01 tests]# time ./kms_plane --run-subtest plane-position-covered-pipe-A-plane-1 IGT-Version: 1.7-ge48c495 (x86_64) (Linux: 3.16.0-rc6_drm-intel-nightly_eb2af9_20140730+ x86_64) Testing connector HDMI-A-3 using pipe A plane 1 Subtest plane-position-covered-pipe-A-plane-1: TIMEOUT real 0m5.984s user 0m0.018s sys 0m0.151s
Test timeout while run cases below on BSW on latest -nightly(49ceddc7b3b0e3f7eb21b9fb4c9b840cff630047) Case list: igt/kms_pipe_crc_basic/hang-read-crc-pipe-B igt/kms_pipe_crc_basic/hang-read-crc-pipe-C igt/kms_pipe_crc_basic/suspend-read-crc-pipe-B igt/kms_pipe_crc_basic/suspend-read-crc-pipe-C Output: [root@x-hsw24 tests]# time ./kms_pipe_crc_basic --run-subtest hang-read-crc-pipe-B IGT-Version: 1.7-g4d2f511 (x86_64) (Linux: 3.17.0-rc1_drm-intel-nightly_49cedd_20140821+ x86_64) hang-read-crc-pipe-B: Testing connector VGA-1 using pipe B Subtest hang-read-crc-pipe-B: TIMEOUT real 0m11.384s user 0m0.002s sys 0m0.008s
Cc'ing Damien on the bug due to comment #3...
(In reply to Guo Jinxian from comment #8) > Test timeout while run cases below on BSW on latest > -nightly(49ceddc7b3b0e3f7eb21b9fb4c9b840cff630047) > > Case list: > igt/kms_pipe_crc_basic/hang-read-crc-pipe-B > igt/kms_pipe_crc_basic/hang-read-crc-pipe-C > igt/kms_pipe_crc_basic/suspend-read-crc-pipe-B > igt/kms_pipe_crc_basic/suspend-read-crc-pipe-C > > Output: > [root@x-hsw24 tests]# time ./kms_pipe_crc_basic --run-subtest > hang-read-crc-pipe-B > IGT-Version: 1.7-g4d2f511 (x86_64) (Linux: > 3.17.0-rc1_drm-intel-nightly_49cedd_20140821+ x86_64) > hang-read-crc-pipe-B: Testing connector VGA-1 using pipe B > Subtest hang-read-crc-pipe-B: TIMEOUT > > real 0m11.384s > user 0m0.002s > sys 0m0.008s What is this? You say BSW, hostname says hsw. BSW does not support VGA. So please retest on BSW and attach the correct log.
Created attachment 109014 [details] dmesg(BSW) > What is this? You say BSW, hostname says hsw. BSW does not support VGA. So > please retest on BSW and attach the correct log. Both BDW and BSW have this issue. comment 6's bug 77475 mentioned HSW. Comment 8 says BSW also has this issue, in order to illustrate BSW's test status. Test on BSW with latest -nightly kernel, the timeout is unstable. output: [root@x-bsw01 tests]# time ./kms_pipe_crc_basic --run-subtest read-crc-pipe-A-frame-sequence IGT-Version: 1.8-ga973aab (x86_64) (Linux: 3.18.0-rc3_drm-intel-nightly_0642a5_20141106+ x86_64) read-crc-pipe-A-frame-sequence: Testing connector eDP-1 using pipe A Test assertion failure function test_read_crc_for_output, file kms_pipe_crc_basic.c:188: Failed assertion: igt_crc_equal(&crcs[j], &crcs[j + 1]) Subtest read-crc-pipe-A-frame-sequence: FAIL (2.051s) real 0m4.587s user 0m0.010s sys 0m0.074s [root@x-bsw01 tests]# time ./kms_pipe_crc_basic --run-subtest read-crc-pipe-A-frame-sequence IGT-Version: 1.8-ga973aab (x86_64) (Linux: 3.18.0-rc3_drm-intel-nightly_0642a5_20141106+ x86_64) read-crc-pipe-A-frame-sequence: Testing connector eDP-1 using pipe A Subtest read-crc-pipe-A-frame-sequence: TIMEOUT (6.993s) real 0m9.537s user 0m0.015s sys 0m0.062s
Hm, I guess I didn't manage to guilt-trip Damien into fixing this. [RFC] More structure for igt_kms tests http://lists.freedesktop.org/archives/intel-gfx/2014-July/048891.html is what we need. I guess we need to track this in a Jira.
Actually the original regression is fixed iirc from Ville, this is just plain and simple a bsw/bdw crc bug. Please file new bug reports for this.
Test on PNV the timeout goes away, but some subcases fail, file bug 86365 track it. Test on BSW, some subcases still timeout, they will be tracked in bug 83519. Close this bug.
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.