Summary: | [BDW Regression]igt/gem_render_linear_blits fails | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product: | DRI | Reporter: | Guo Jinxian <jinxianx.guo> | ||||||||||
Component: | DRM/Intel | Assignee: | Ben Widawsky <ben> | ||||||||||
Status: | CLOSED FIXED | QA Contact: | Intel GFX Bugs mailing list <intel-gfx-bugs> | ||||||||||
Severity: | normal | ||||||||||||
Priority: | highest | CC: | ben, intel-gfx-bugs | ||||||||||
Version: | unspecified | ||||||||||||
Hardware: | Other | ||||||||||||
OS: | All | ||||||||||||
Whiteboard: | |||||||||||||
i915 platform: | i915 features: | ||||||||||||
Bug Depends on: | |||||||||||||
Bug Blocks: | 78938 | ||||||||||||
Attachments: |
|
Description
Guo Jinxian
2014-05-20 05:08:47 UTC
Please bisect. With rendercopy in here also, smells alot like: https://bugs.freedesktop.org/show_bug.cgi?id=78891 Please test: http://patchwork.freedesktop.org/patch/26784/ Created attachment 100070 [details] dmesg (In reply to comment #4) > Please test: > http://patchwork.freedesktop.org/patch/26784/ The bug still able to reproduce with this patch. Output: ./gem_render_linear_blits IGT-Version: 1.6-ge4ba3b7 (x86_64) (Linux: 3.15.0-rc3_prts_92f645_20140529 x86_64) not enough RAM to run test, reducing buffer count Verifying initialisation... Cyclic blits, forward... Test assertion failure function check_bo, file gem_render_linear_blits.c:79: Last errno: 0, Success Failed assertion: linear[i] == val Expected 0x00000001, found 0x00040001 at offset 0x00000004 Ok, then please do the bisect as Chris requested. I can't reproduce this on an E2 with the latest BIOS. Guo, can you confirm what platform you're using, while doing the bisect? Can you test the same stepping? I just confirmed the same harddrive reproduces the bug on E0, but not on E2. (In reply to comment #7) > I can't reproduce this on an E2 with the latest BIOS. Guo, can you confirm > what platform you're using, while doing the bisect? Can you test the same > stepping? I am using E0, the Stepping is 4 (In reply to comment #8) > I just confirmed the same harddrive reproduces the bug on E0, but not on E2. Yes, I test it on E0. We have not E2 device. Created attachment 100138 [details] dmesg (In reply to comment #6) > Ok, then please do the bisect as Chris requested. I found the test unable exit on some commit during bisecting. and I found the first bad commit of unable exit was 78325f2d270897c9ee0887125b7abb963eb8efea commit 78325f2d270897c9ee0887125b7abb963eb8efea Author: Ben Widawsky <benjamin.widawsky@intel.com> AuthorDate: Tue Apr 29 14:52:29 2014 -0700 Commit: Daniel Vetter <daniel.vetter@ffwll.ch> CommitDate: Mon May 5 10:56:53 2014 +0200 drm/i915: Virtualize the ringbuffer signal func This abstraction again is in preparation for gen8. Gen8 will bring new semantics for doing this operation. While here, make the writes of MI_NOOPs explicit for non-existent rings. This should have been implicit before. NOTE: This is going to be removed in a few patches. Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Ben Widawsky <ben@bwidawsk.net> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Output: time ./gem_render_linear_blits IGT-Version: 1.6-g532b7e6 (x86_64) (Linux: 3.15.0-rc3_drm-intel-next-queued_78325f_20140513+ x86_64) not enough RAM to run test, reducing buffer count Verifying initialisation... Cyclic blits, forward... The commit unable to revert. You should test with i915.enable_rc6=0. Small update, I received another E2 platform, with the same BIOS, and can hit the bug. So I believe the platform I was running on is just impervious to the bug. Guo, try Chris' suggestion, and please double check the bisect is correct - it looks suspicious. I finally found a platform that can reliably reproduce, and my bisect lead to the more likely: commit 229b0489aa75a8c51d2f2e124329d3ac326f326d Author: Mika Kuoppala <mika.kuoppala@linux.intel.com> Date: Wed May 14 17:02:17 2014 +0300 drm/i915: add null render states for gen6, gen7 and gen8 I am currently working on reviewing the render state in IGT. Chris, extra eyes on that state setup would be nice if you can find the time. Oh, and rc6 doesn't effect this bug (for me) (In reply to comment #13) > You should test with i915.enable_rc6=0. Disable rc6 on latest -nightly(455a8fc4304af51a913e33763b72dd2849c11d0c), This bug still able to reproduce. Output: ./gem_render_linear_blits IGT-Version: 1.6-g532b7e6 (x86_64) (Linux: 3.15.0-rc7_drm-intel-nightly_455a8f_20140603+ x86_64) not enough RAM to run test, reducing buffer count Verifying initialisation... Cyclic blits, forward... Test assertion failure function check_bo, file gem_render_linear_blits.c:79: Last errno: 0, Success Failed assertion: linear[i] == val Expected 0x00000001, found 0x00040001 at offset 0x00000004 Created attachment 100343 [details] dmesg (In reply to comment #15) > I finally found a platform that can reliably reproduce, and my bisect lead > to the more likely: > > commit 229b0489aa75a8c51d2f2e124329d3ac326f326d > Author: Mika Kuoppala <mika.kuoppala@linux.intel.com> > Date: Wed May 14 17:02:17 2014 +0300 > > drm/i915: add null render states for gen6, gen7 and gen8 > > > I am currently working on reviewing the render state in IGT. Chris, extra > eyes on that state setup would be nice if you can find the time. I revert this commit and retest on my device. the result was pass. Please test: IGT patch http://patchwork.freedesktop.org/patch/27088/ (In reply to comment #19) > Please test: IGT patch http://patchwork.freedesktop.org/patch/27088/ Test on latest -nightly(455a8fc4304af51a913e33763b72dd2849c11d0c) use igt with this patch. the result was pass. Output: ./gem_render_linear_blits IGT-Version: 1.6-g3c70e6a (x86_64) (Linux: 3.15.0-rc7_drm-intel-nightly_455a8f_20140603+ x86_64) not enough RAM to run test, reducing buffer count Verifying initialisation... Cyclic blits, forward... Cyclic blits, backward... Random blits... The result is pass on both E0 and E2 on latest -next-queued(e4964a6e664b4c338b5ab1f1820b0477bec68396) 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.