Bug 88096

Summary: [BDW ppgtt Bisected]igt/pm_rps/reset crash when execlists enabled
Product: DRI Reporter: lu hua <huax.lu>
Component: DRM/IntelAssignee: Thomas Daniel <thomas.daniel>
Status: CLOSED FIXED QA Contact: Intel GFX Bugs mailing list <intel-gfx-bugs>
Severity: normal    
Priority: high CC: intel-gfx-bugs, przanoni, xunx.fang
Version: unspecified   
Hardware: All   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
dmesg none

Description lu hua 2015-01-06 07:50:36 UTC
Created attachment 111831 [details]
dmesg

==System Environment==
--------------------------
Regression: yes

Non-working platforms: BDW

==kernel==
--------------------------
drm-intel-nightly/07d0c831d9207c937595f081c8fddbddbf53756f
commit 07d0c831d9207c937595f081c8fddbddbf53756f
Author: Jani Nikula <jani.nikula@intel.com>
Date:   Tue Dec 30 15:02:01 2014 +0200

    drm-intel-nightly: 2014y-12m-30d-13h-01m-34s UTC integration manifest

==Bug detailed description==
-----------------------------
It's crash on BDW with drm-intel-nightly kernel and drm-intel-next-queued kernel.
Bisect shows: 27401d126b5b1c8dd4df98bbb60b09ff2b3d5e60 is the first bad commit. This case also has bug 77869 and 84896.
commit 27401d126b5b1c8dd4df98bbb60b09ff2b3d5e60
Author:     Thomas Daniel <thomas.daniel@intel.com>
AuthorDate: Thu Dec 11 12:48:35 2014 +0000
Commit:     Daniel Vetter <daniel.vetter@ffwll.ch>
CommitDate: Mon Dec 15 11:25:28 2014 +0100

    drm/i915/bdw: Enable execlists by default where supported
    
    Execlist support in the i915 driver is now considered good enough for the
    feature to be enabled by default on Gen8 and later and routinely tested.
    Adjusted i915 parameters structure initialization to reflect this and updated
    the comment in intel_sanitize_enable_execlists().
    
    There's still work to do before we can let the wider massive onto it,
    but there's still time left before the 3.20 cutoff.
    
    v2: Update the MODULE_PARM_DESC too.

output:
IGT-Version: 1.9-gcb512b6 (x86_64) (Linux: 3.19.0-rc2_drm-intel-nightly_07d0c8_20150105+ x86_64)
Test assertion failure function intel_batchbuffer_flush_on_ring, file intel_batchbuffer.c:180:
Failed assertion: (drm_intel_gem_bo_context_exec(batch->bo, ctx, used, ring)) == 0
Last errno: 16, Device or resource busy
Subtest reset: FAIL (84.113s)
Test assertion failure function loaded_check, file pm_rps.c:509:
Failed assertion: freqs[CUR] == freqs[MAX]
error: 450 != 900
Subtest reset: FAIL (87.116s)
Test assertion failure function load_helper_stop, file pm_rps.c:290:
Failed assertion: igt_wait_helper(&lh.igt_proc) == 0
Last errno: 10, No child processes
pm_rps: igt_core.c:870: igt_fail: Assertion `!test_with_subtests || in_fixture' failed.
Aborted (core dumped)


Reproduce steps:
---------------------------- 
1. ./pm_rps --run-subtest reset
Comment 1 Daniel Vetter 2015-01-08 07:57:28 UTC
Please retest with

commit 9ed67ab76f24ec1bf9b0414e3c8ac39c843f4d55
Author: Thomas Daniel <thomas.daniel@intel.com>
Date:   Wed Jan 7 16:09:30 2015 +0000

    drm/i915: Reset CSB read pointer when enabling contexts
Comment 2 Daniel Vetter 2015-01-08 08:00:26 UTC
Strike that, please instead test this patch

http://lists.freedesktop.org/archives/intel-gfx/2015-January/058125.html
Comment 3 fangxun 2015-01-09 05:07:08 UTC
It still fails with the patch.

output:
Test assertion failure function intel_batchbuffer_flush_on_ring, file intel_batchbuffer.c:180:
Failed assertion: (drm_intel_gem_bo_context_exec(batch->bo, ctx, used, ring)) == 0
Last errno: 16, Device or resource busy
Subtest reset: FAIL (84.118s)
Test assertion failure function loaded_check, file pm_rps.c:509:
Failed assertion: freqs[CUR] == freqs[MAX]
error: 500 != 900
Subtest reset: FAIL (87.123s)
Test assertion failure function load_helper_stop, file pm_rps.c:290:
Failed assertion: igt_wait_helper(&lh.igt_proc) == 0
Last errno: 10, No child processes
pm_rps: igt_core.c:880: igt_fail: Assertion `!test_with_subtests || in_fixture' failed.
Aborted (core dumped)
Comment 4 lu hua 2015-02-09 08:03:53 UTC
add i915.enable_ppgtt=0,it works well.
IGT-Version: 1.9-gbef692d (x86_64) (Linux: 3.19.0-rc5_drm-intel-nightly_98592c_20150122+ x86_64)
Subtest reset: SUCCESS (45.260s)
Comment 5 Thomas Daniel 2015-02-16 16:19:23 UTC
Proposed fix is here : https://patchwork.kernel.org/patch/5833911/
Comment 6 Paulo Zanoni 2015-02-24 18:25:03 UTC
The patch mentioned in commment #5 was merged. Please retest against -nightly.
Comment 7 Ding Heng 2015-02-27 06:14:34 UTC
pass with latest nightly branch b18ca534ab790c19aefe8ecbec46d1bc7a31ce1e(2015-02-26). Change state to verified.
Comment 8 Elizabeth 2017-10-06 14:32:36 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.