[Mesa-dev] [PATCH] i965: Actually emit PIPELINE_SELECT and 3DSTATE_VF_STATISTICS.

Ben Widawsky ben at bwidawsk.net
Tue Apr 29 17:42:17 PDT 2014


On Tue, Apr 29, 2014 at 02:39:30PM -0700, Kenneth Graunke wrote:
> For platforms using hardware contexts (currently Gen6+), we failed to
> emit PIPELINE_SELECT and 3DSTATE_VF_STATISTICS, instead emitting MI_NOOP
> for both.
> 
> During one of the context initialization reordering patches, we
> accidentally moved brw_init_state before we set brw->CMD_PIPELINE_SELECT
> and brw->CMD_VF_STATISTICS.  So, when brw_init_state uploaded initial
> GPU state (brw_init_state -> brw_upload_initial_gpu_state ->
> brw_upload_invariant_state), these would be 0 (MI_NOOP).
> 
> Storing the commands in the context is not worthwhile.  We have many
> generation checks in our state upload code, and for platforms with
> hardware contexts, this only gets called once per GL context anyway.
> The cost is negligable, and it's easy to botch context creation
> ordering.
> 
> This may fix hangs on Gen6+ when using the media pipeline.
> 
> Cc: "10.0 10.1" <mesa-stable at lists.freedesktop.org>
> Cc: Ben Widawsky <ben at bwidawsk.net>
> Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>

Doesn't this potentially fix issues going back further than gen6?
Reviewed-by: Ben Widawsky <ben at bwidawsk.net>

[snip]


-- 
Ben Widawsky, Intel Open Source Technology Center


More information about the mesa-dev mailing list