Bug 81663 - [BYT Bisected]igt/kms_fbc_crc some subcases cause system hang
Summary: [BYT Bisected]igt/kms_fbc_crc some subcases cause system hang
Status: CLOSED FIXED
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: unspecified
Hardware: Other All
: high critical
Assignee: Dave Airlie
QA Contact: Intel GFX Bugs mailing list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-07-23 09:07 UTC by Guo Jinxian
Modified: 2017-10-06 14:37 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
dmesg (41.29 KB, text/plain)
2014-07-24 06:08 UTC, lu hua
no flags Details

Description Guo Jinxian 2014-07-23 09:07:00 UTC
==System Environment==
--------------------------
Regression: Yes

Good commit on -next-queued: 91565c85b66db820f01894a971d39aaef60c4325
the result on this commit is skip.

Non-working platforms: BYT

==kernel==
--------------------------
origin/drm-intel-nightly: d62845db2ec40e15a76e5d5ebfe1a039ea2538c4(fails)
    drm-intel-nightly: 2014y-07m-22d-17h-58m-03s integration manifest
origin/drm-intel-next-queued: 1dd7389e898de2b7ceb90054fd96e4c3329b77ef(fails)
    drm/i915: Replace HAS_PCH_SPLIT which incorrectly lets some platforms in   
origin/drm-intel-fixes: a0d036b074b4a5a933e37fcb9bdd6b3cc80a0387(skips)
    drm/i915: Reorder the semaphore deadlock check, again

==Bug detailed description==
-----------------------------
igt/kms_fbc_crc some subcases cause system hang

Because system hang, unable to get dmesg.

Output:
root@x-byt06:/GFX/Test/Intel_gpu_tools/intel-gpu-tools/tests# time ./kms_fbc_crc --run-subtest blt
IGT-Version: 1.7-g4d4f4b2 (x86_64) (Linux: 3.16.0-rc6_drm-intel-nightly_d62845_20140723+ x86_64)

Beginning blt on pipe A, connector eDP-1
FBC not enabled


Reproduce steps:
-------------------------
1../kms_fbc_crc --run-subtest blt
Comment 1 lu hua 2014-07-24 06:08:01 UTC
Created attachment 103378 [details]
dmesg
Comment 2 Guo Jinxian 2014-08-04 07:51:34 UTC
13cf550448b58abf8f44f5d6a560f2d20871c965 is the first bad commit 
commit 13cf550448b58abf8f44f5d6a560f2d20871c965 
Author: Dave Airlie <airlied@redhat.com> 
AuthorDate: Wed Jun 18 11:29:35 2014 +1000 
Commit: Daniel Vetter <daniel.vetter@ffwll.ch> 
CommitDate: Mon Jul 7 15:08:51 2014 +0200

drm/i915: rework digital port IRQ handling (v2) 

The digital ports from Ironlake and up have the ability to distinguish 
between long and short HPD pulses. Displayport 1.1 only uses the short 
form to request link retraining usually, so we haven't really needed 
support for it until now. 

However with DP 1.2 MST we need to handle the short irqs on their 
own outside the modesetting locking the long hpd's involve. This 
patch adds the framework to distinguish between short/long to the 
current code base, to lay the basis for future DP 1.2 MST work. 

This should mean we get better bisectability in case of regression 
due to the new irq handling. 

v2: add GM45 support (untested, due to lack of hw) 

Signed-off-by: Dave Airlie <airlied@redhat.com> 
Reviewed-by: Todd Previte <tprevite@gmail.com> 
[danvet: Fix conflicts in i915_irq.c with Oscar Mateo's irq handling 
race fixes and a trivial one in intel_drv.h with the psr code.] 
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> 

:040000 040000 7be50985e66c24e64d4de3cccbdcd521ef59903b 8e9cf7373e1c96e78989fd0514e8da8debaad1c4 M drivers 


The commit unable to revert. It's parents commit(564ed191f5d816d24501664296991ec70327e2bc) unable to causes system hang.
Comment 3 lu hua 2014-08-22 05:43:48 UTC
Test on latest -nightly kernel, the hang goes away.
 ./kms_fbc_crc
IGT-Version: 1.7-g4d2f511 (x86_64) (Linux: 3.17.0-rc1_drm-intel-nightly_257d90_20140822+ x86_64)
Beginning page_flip on pipe A, connector eDP-1
FBC not enabled
page_flip on pipe A, connector eDP-1: SKIPPED
Beginning page_flip on pipe B, connector eDP-1
FBC not enabled
page_flip on pipe B, connector eDP-1: SKIPPED
Test requirement not met in function run_test, file kms_fbc_crc.c:487:
Test requirement: !(valid_tests)
no valid crtc/connector combinations found
Subtest page_flip: SKIP
Beginning mmap_cpu on pipe A, connector eDP-1
FBC not enabled
mmap_cpu on pipe A, connector eDP-1: SKIPPED
Beginning mmap_cpu on pipe B, connector eDP-1
FBC not enabled
mmap_cpu on pipe B, connector eDP-1: SKIPPED
Test requirement not met in function run_test, file kms_fbc_crc.c:487:
Test requirement: !(valid_tests)
no valid crtc/connector combinations found
Subtest mmap_cpu: SKIP
Beginning mmap_gtt on pipe A, connector eDP-1
FBC not enabled
mmap_gtt on pipe A, connector eDP-1: SKIPPED
Beginning mmap_gtt on pipe B, connector eDP-1
FBC not enabled
mmap_gtt on pipe B, connector eDP-1: SKIPPED
Test requirement not met in function run_test, file kms_fbc_crc.c:487:
Test requirement: !(valid_tests)
no valid crtc/connector combinations found
Subtest mmap_gtt: SKIP
Beginning blt on pipe A, connector eDP-1
FBC not enabled
blt on pipe A, connector eDP-1: SKIPPED
Beginning blt on pipe B, connector eDP-1
FBC not enabled
blt on pipe B, connector eDP-1: SKIPPED
Test requirement not met in function run_test, file kms_fbc_crc.c:487:
Test requirement: !(valid_tests)
no valid crtc/connector combinations found
Subtest blt: SKIP
Beginning render on pipe A, connector eDP-1
FBC not enabled
render on pipe A, connector eDP-1: SKIPPED
Beginning render on pipe B, connector eDP-1
FBC not enabled
render on pipe B, connector eDP-1: SKIPPED
Test requirement not met in function run_test, file kms_fbc_crc.c:487:
Test requirement: !(valid_tests)
no valid crtc/connector combinations found
Subtest render: SKIP
Beginning context on pipe A, connector eDP-1
FBC not enabled
context on pipe A, connector eDP-1: SKIPPED
Beginning context on pipe B, connector eDP-1
FBC not enabled
context on pipe B, connector eDP-1: SKIPPED
Test requirement not met in function run_test, file kms_fbc_crc.c:487:
Test requirement: !(valid_tests)
no valid crtc/connector combinations found
Subtest context: SKIP
Beginning page_flip_and_mmap_cpu on pipe A, connector eDP-1
FBC not enabled
page_flip_and_mmap_cpu on pipe A, connector eDP-1: SKIPPED
Beginning page_flip_and_mmap_cpu on pipe B, connector eDP-1
FBC not enabled
page_flip_and_mmap_cpu on pipe B, connector eDP-1: SKIPPED
Test requirement not met in function run_test, file kms_fbc_crc.c:487:
Test requirement: !(valid_tests)
no valid crtc/connector combinations found
Subtest page_flip_and_mmap_cpu: SKIP
Beginning page_flip_and_mmap_gtt on pipe A, connector eDP-1
FBC not enabled
page_flip_and_mmap_gtt on pipe A, connector eDP-1: SKIPPED
Beginning page_flip_and_mmap_gtt on pipe B, connector eDP-1
FBC not enabled
page_flip_and_mmap_gtt on pipe B, connector eDP-1: SKIPPED
Test requirement not met in function run_test, file kms_fbc_crc.c:487:
Test requirement: !(valid_tests)
no valid crtc/connector combinations found
Subtest page_flip_and_mmap_gtt: SKIP
Beginning page_flip_and_blt on pipe A, connector eDP-1
FBC not enabled
page_flip_and_blt on pipe A, connector eDP-1: SKIPPED
Beginning page_flip_and_blt on pipe B, connector eDP-1
FBC not enabled
page_flip_and_blt on pipe B, connector eDP-1: SKIPPED
Test requirement not met in function run_test, file kms_fbc_crc.c:487:
Test requirement: !(valid_tests)
no valid crtc/connector combinations found
Subtest page_flip_and_blt: SKIP
Beginning page_flip_and_render on pipe A, connector eDP-1
FBC not enabled
page_flip_and_render on pipe A, connector eDP-1: SKIPPED
Beginning page_flip_and_render on pipe B, connector eDP-1
FBC not enabled
page_flip_and_render on pipe B, connector eDP-1: SKIPPED
Test requirement not met in function run_test, file kms_fbc_crc.c:487:
Test requirement: !(valid_tests)
no valid crtc/connector combinations found
Subtest page_flip_and_render: SKIP
Beginning page_flip_and_context on pipe A, connector eDP-1
FBC not enabled
page_flip_and_context on pipe A, connector eDP-1: SKIPPED
Beginning page_flip_and_context on pipe B, connector eDP-1
FBC not enabled
page_flip_and_context on pipe B, connector eDP-1: SKIPPED
Test requirement not met in function run_test, file kms_fbc_crc.c:487:
Test requirement: !(valid_tests)
no valid crtc/connector combinations found
Subtest page_flip_and_context: SKIP
Comment 4 Guo Jinxian 2014-08-22 08:25:59 UTC
(In reply to comment #3)
> Test on latest -nightly kernel, the hang goes away.
>  ./kms_fbc_crc
> IGT-Version: 1.7-g4d2f511 (x86_64) (Linux:
> 3.17.0-rc1_drm-intel-nightly_257d90_20140822+ x86_64)
> Beginning page_flip on pipe A, connector eDP-1
> FBC not enabled
> page_flip on pipe A, connector eDP-1: SKIPPED
> Beginning page_flip on pipe B, connector eDP-1
> FBC not enabled
> page_flip on pipe B, connector eDP-1: SKIPPED
> Test requirement not met in function run_test, file kms_fbc_crc.c:487:
> Test requirement: !(valid_tests)
> no valid crtc/connector combinations found
> Subtest page_flip: SKIP
> Beginning mmap_cpu on pipe A, connector eDP-1
> FBC not enabled
> mmap_cpu on pipe A, connector eDP-1: SKIPPED
> Beginning mmap_cpu on pipe B, connector eDP-1
> FBC not enabled
> mmap_cpu on pipe B, connector eDP-1: SKIPPED
> Test requirement not met in function run_test, file kms_fbc_crc.c:487:
> Test requirement: !(valid_tests)
> no valid crtc/connector combinations found
> Subtest mmap_cpu: SKIP
> Beginning mmap_gtt on pipe A, connector eDP-1
> FBC not enabled
> mmap_gtt on pipe A, connector eDP-1: SKIPPED
> Beginning mmap_gtt on pipe B, connector eDP-1
> FBC not enabled
> mmap_gtt on pipe B, connector eDP-1: SKIPPED
> Test requirement not met in function run_test, file kms_fbc_crc.c:487:
> Test requirement: !(valid_tests)
> no valid crtc/connector combinations found
> Subtest mmap_gtt: SKIP
> Beginning blt on pipe A, connector eDP-1
> FBC not enabled
> blt on pipe A, connector eDP-1: SKIPPED
> Beginning blt on pipe B, connector eDP-1
> FBC not enabled
> blt on pipe B, connector eDP-1: SKIPPED
> Test requirement not met in function run_test, file kms_fbc_crc.c:487:
> Test requirement: !(valid_tests)
> no valid crtc/connector combinations found
> Subtest blt: SKIP
> Beginning render on pipe A, connector eDP-1
> FBC not enabled
> render on pipe A, connector eDP-1: SKIPPED
> Beginning render on pipe B, connector eDP-1
> FBC not enabled
> render on pipe B, connector eDP-1: SKIPPED
> Test requirement not met in function run_test, file kms_fbc_crc.c:487:
> Test requirement: !(valid_tests)
> no valid crtc/connector combinations found
> Subtest render: SKIP
> Beginning context on pipe A, connector eDP-1
> FBC not enabled
> context on pipe A, connector eDP-1: SKIPPED
> Beginning context on pipe B, connector eDP-1
> FBC not enabled
> context on pipe B, connector eDP-1: SKIPPED
> Test requirement not met in function run_test, file kms_fbc_crc.c:487:
> Test requirement: !(valid_tests)
> no valid crtc/connector combinations found
> Subtest context: SKIP
> Beginning page_flip_and_mmap_cpu on pipe A, connector eDP-1
> FBC not enabled
> page_flip_and_mmap_cpu on pipe A, connector eDP-1: SKIPPED
> Beginning page_flip_and_mmap_cpu on pipe B, connector eDP-1
> FBC not enabled
> page_flip_and_mmap_cpu on pipe B, connector eDP-1: SKIPPED
> Test requirement not met in function run_test, file kms_fbc_crc.c:487:
> Test requirement: !(valid_tests)
> no valid crtc/connector combinations found
> Subtest page_flip_and_mmap_cpu: SKIP
> Beginning page_flip_and_mmap_gtt on pipe A, connector eDP-1
> FBC not enabled
> page_flip_and_mmap_gtt on pipe A, connector eDP-1: SKIPPED
> Beginning page_flip_and_mmap_gtt on pipe B, connector eDP-1
> FBC not enabled
> page_flip_and_mmap_gtt on pipe B, connector eDP-1: SKIPPED
> Test requirement not met in function run_test, file kms_fbc_crc.c:487:
> Test requirement: !(valid_tests)
> no valid crtc/connector combinations found
> Subtest page_flip_and_mmap_gtt: SKIP
> Beginning page_flip_and_blt on pipe A, connector eDP-1
> FBC not enabled
> page_flip_and_blt on pipe A, connector eDP-1: SKIPPED
> Beginning page_flip_and_blt on pipe B, connector eDP-1
> FBC not enabled
> page_flip_and_blt on pipe B, connector eDP-1: SKIPPED
> Test requirement not met in function run_test, file kms_fbc_crc.c:487:
> Test requirement: !(valid_tests)
> no valid crtc/connector combinations found
> Subtest page_flip_and_blt: SKIP
> Beginning page_flip_and_render on pipe A, connector eDP-1
> FBC not enabled
> page_flip_and_render on pipe A, connector eDP-1: SKIPPED
> Beginning page_flip_and_render on pipe B, connector eDP-1
> FBC not enabled
> page_flip_and_render on pipe B, connector eDP-1: SKIPPED
> Test requirement not met in function run_test, file kms_fbc_crc.c:487:
> Test requirement: !(valid_tests)
> no valid crtc/connector combinations found
> Subtest page_flip_and_render: SKIP
> Beginning page_flip_and_context on pipe A, connector eDP-1
> FBC not enabled
> page_flip_and_context on pipe A, connector eDP-1: SKIPPED
> Beginning page_flip_and_context on pipe B, connector eDP-1
> FBC not enabled
> page_flip_and_context on pipe B, connector eDP-1: SKIPPED
> Test requirement not met in function run_test, file kms_fbc_crc.c:487:
> Test requirement: !(valid_tests)
> no valid crtc/connector combinations found
> Subtest page_flip_and_context: SKIP

Verified
Comment 5 Elizabeth 2017-10-06 14:37:04 UTC
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.