Bug 87694

Summary: [SNB] Crash in brw_begin_transform_feedback
Product: Mesa Reporter: nmcveity
Component: Drivers/DRI/i965Assignee: Ian Romanick <idr>
Status: RESOLVED FIXED QA Contact: Intel 3D Bugs Mailing List <intel-3d-bugs>
Severity: normal    
Priority: medium CC: itoral, nmcveity, siglesias
Version: git   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: Makefile for demo program
Demo program
Details about crash from GDB

Description nmcveity 2014-12-25 05:24:49 UTC
Created attachment 111311 [details]
Makefile for demo program

I have found a crash in the i965 gen6 code path on trunk.

The crash occurs if you attempt to perform transform feedback after 
you have rendered using a geometry shader.

The work around is to draw something without a geometry shader
before attempting to do any transform feedback.

The attached files contains a simplified demonstration program
using glut.

 > make

Will hopefully generate 'will_crash' and 'workaround' executables.

I ran 'will_crash' in gdb with debug versions of mesa trunk @b3057f8
installed on my system. I have attached the backtrace and other info
gleaned from gdb. They are in the attached CRASH.txt file.
Comment 1 nmcveity 2014-12-25 05:25:19 UTC
Created attachment 111312 [details]
Demo program
Comment 2 nmcveity 2014-12-25 05:25:41 UTC
Created attachment 111313 [details]
Details about crash from GDB
Comment 3 Iago Toral 2015-01-05 07:09:02 UTC
This seems to be a gen6 specific crash, updated summary to reflect that. I'll look into it later this week when I am back in the office where I have gen6 hardware available.
Comment 4 Iago Toral 2015-01-07 09:11:19 UTC
Sent a patch for review to the mailing list:
http://lists.freedesktop.org/archives/mesa-dev/2015-January/073847.html
Comment 5 Iago Toral 2015-01-16 13:20:55 UTC
Fixed in master with:

6367ca8b41 i965/gen6: Fix crash with VS+TF after rendering with GS

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.