Bug 71374 - [Bisected]igt/gem_evict_everything/forked-interruptible causes <3>[ 172.855126] [drm:i915_set_reset_status] *ERROR* blitter ring hung inside bo (0x60690000 ctx 0) at 0x60690020
Summary: [Bisected]igt/gem_evict_everything/forked-interruptible causes <3>[ 172.8551...
Status: CLOSED FIXED
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: unspecified
Hardware: All Linux (All)
: high major
Assignee: Ben Widawsky
QA Contact: Intel GFX Bugs mailing list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-11-08 05:01 UTC by lu hua
Modified: 2017-08-14 08:30 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments
dmesg (84.24 KB, text/plain)
2013-11-08 05:01 UTC, lu hua
no flags Details
gem_cpu_reloc dmesg (70.67 KB, text/plain)
2013-11-13 02:28 UTC, lu hua
no flags Details

Description lu hua 2013-11-08 05:01:08 UTC
Created attachment 88872 [details]
dmesg

System Environment:
--------------------------
Platform: Pineview/GM45/Ironlake/Sandybridge/Ivybridge/Haswell/Baytrail
Kernel: (drm-intel-nightly)2f29640dfa2e434361a834fb40c89eedd66cb235

Bug detailed description:
-------------------------
It fails on all platforms with -fixes, -nightly and -queued kernel.
Following  cases also have this issue:
igt/gem_evict_everything/forked-mempressure-interruptible
igt/gem_evict_everything/forked-mempressure-normal
igt/gem_evict_everything/forked-multifd-interruptible
igt/gem_evict_everything/forked-multifd-mempressure-interruptible
igt/gem_evict_everything/forked-multifd-mempressure-normal
igt/gem_evict_everything/forked-multifd-normal
igt/gem_evict_everything/forked-normal
igt/gem_evict_everything/forked-swapping-interruptible
igt/gem_evict_everything/forked-swapping-mempressure-interruptible
igt/gem_evict_everything/forked-swapping-mempressure-normal
igt/gem_evict_everything/forked-swapping-multifd-interruptible
igt/gem_evict_everything/forked-swapping-multifd-mempressure-interruptible
igt/gem_evict_everything/forked-swapping-multifd-mempressure-normal
igt/gem_evict_everything/forked-swapping-multifd-normal
igt/gem_evict_everything/forked-swapping-normal
igt/gem_evict_everything/major-interruptible
igt/gem_evict_everything/major-normal
igt/gem_evict_everything/minor-interruptible
igt/gem_evict_everything/minor-normal
igt/gem_evict_everything/swapping-interruptible
igt/gem_evict_alignment/major-interruptible
igt/gem_evict_alignment/major-normal
igt/gem_evict_alignment/minor-interruptible
igt/gem_evict_alignment/minor-normal
igt/gem_linear_blits/interruptible
igt/gem_linear_blits/normal

Bisect shows:
f4dfa37e8578419b94a7c84fbcea7d4b70aa68b9 is the first bad commit
commit f4dfa37e8578419b94a7c84fbcea7d4b70aa68b9
Author:     Ben Widawsky <benjamin.widawsky@intel.com>
AuthorDate: Tue Oct 8 15:02:07 2013 -0700
Commit:     Ben Widawsky <benjamin.widawsky@intel.com>
CommitDate: Wed Nov 6 09:34:35 2013 -0800

    bdw: Update obvious missing blit support

    This provides a macro that allows us to update all the arbitrary blit
    commands we have stuck throughout the code. It assumes we don't actually
    use 64b relocs (which is currently true). This also allows us to easily find
    all the areas we need to update later when we really use the upper dword.

    This block was done mostly with a sed job, and represents the easier
    in test blit implementations.

    v2 by Oscar: s/OUT_BATCH/BEGIN_BATCH in BLIT_COPY_BATCH_START

    CC: Chris Wilson <chris@chris-wilson.co.uk>
    Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
    Signed-off-by: Oscar Mateo <oscar.mateo@intel.com>

output:
Subtest forked-interruptible: SUCCESS

Reproduce steps:
-------------------------
1. ./gem_evict_everything --run-subtest forked-interruptible
Comment 1 lu hua 2013-11-08 06:10:56 UTC
gem_cpu_reloc also fail with same bisect commit.
Comment 2 lu hua 2013-11-08 06:24:26 UTC
gem_cs_prefetch also fail with same bisect commit.
Comment 3 Daniel Vetter 2013-11-08 07:21:35 UTC
Should be fixed with

commit 7c41331364ea2ea7a5c7c76c0b66bbc590eade60
Author: Ben Widawsky <benjamin.widawsky@intel.com>
Date:   Thu Nov 7 22:59:25 2013 -0800

    gem_evict_everything: Fix broken blit generalization
Comment 4 lu hua 2013-11-12 02:43:19 UTC
It still happens on latest -nightly kernel(commit 06653b713abe)
Comment 5 Daniel Vetter 2013-11-12 08:36:49 UTC
This is a i-g-t regression, so can you please retest with latest i-g-t? Kernel should be irrelevant.
Comment 6 Daniel Vetter 2013-11-12 08:37:24 UTC
Also please make a new detailed lists of the failing testcases, at least some of them should be fixed.

And if we still have hangs please attach the relevant error states.
Comment 7 lu hua 2013-11-13 02:27:44 UTC
run ./gem_cpu_reloc
output:
gem_cpu_reloc:   0%Test assertion failure function exec, file gem_cpu_reloc.c:116:
Failed assertion: (drmIoctl(fd, (((1U) << (((0+8)+8)+14)) | ((('d')) << (0+8)) | (((0x40 + 0x29)) << 0) | ((((sizeof(struct drm_i915_gem_execbuffer2)))) << ((0+8)+8))), &execbuf)) == 0
Test assertion failure function gem_quiescent_gpu, file drmtest.c:149:
Failed assertion: drmIoctl((fd), ((((1U) << (((0+8)+8)+14)) | ((('d')) << (0+8)) | (((0x40 + 0x29)) << 0) | ((((sizeof(struct drm_i915_gem_execbuffer2)))) << ((0+8)+8)))), (&execbuf)) == 0
Comment 8 lu hua 2013-11-13 02:28:22 UTC
Created attachment 89112 [details]
gem_cpu_reloc dmesg
Comment 9 Ben Widawsky 2013-11-13 21:46:28 UTC
Please retest with latest igt.
Comment 10 lu hua 2013-11-15 07:58:58 UTC
Verified.Fixed.
Comment 11 Jari Tahvanainen 2017-08-14 08:30:30 UTC
Moving old bug from Verified to Closed.


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.