[Intel-gfx] [RFC 0/3] render state initialization (bdw rc6)

Kristen Carlson Accardi kristen at linux.intel.com
Thu Apr 24 20:51:45 CEST 2014


On Tue, 22 Apr 2014 20:19:41 +0300
Mika Kuoppala <mika.kuoppala at linux.intel.com> wrote:

> Hi,
> 
> Here are patches to initialize first render context to a hopefully, 
> valid state. If pipeline/context is not initialized and we enter rc6 on bdw,
> the render ring can hung on the first batch submitted. That is atleast
> the hypothesis this work is based on.
> 
> The states are stripped from rendercopy_genX's from i-g-t/lib and
> the state generators are part of i-g-t also. The states are
> propably overshoot from what can be consider the minimal valid
> (null) state on the pipeline. I just initialized everything rendercopy
> does and haven't really put effort on optimizing the state until
> I get some test results that this indeed solves anything.
> 
> The state generators can be found here but they are not needed for testing.
> http://cgit.freedesktop.org/~miku/intel-gpu-tools/log/?h=null_state_gen
> 
> Gen7 and Gen8 seems to atleast survive the boot but Gen6 is totally
> untested.
> 
> Here is the branch for testing:
> http://cgit.freedesktop.org/~miku/drm-intel/log/?h=render_state
> 
> I am interested to know if these patches make matters better/worse for those
> who have issues with first batch hanging on bdw, but as always, any feedback
> is greatly appreciated.

I tested these on a system which has experienced the hang, and they
worked fine for me.

Tested-by:  Kristen Carlson Accardi <kristen at linux.intel.com>

> 
> Mika Kuoppala (3):
>   drm/i915: export vmap_batch from command parser
>   drm/i915: add render state initialization
>   drm/i915: add null render states for gen6, gen7 and gen8
> 
>  drivers/gpu/drm/i915/Makefile                 |    1 +
>  drivers/gpu/drm/i915/i915_cmd_parser.c        |    4 +-
>  drivers/gpu/drm/i915/i915_drv.h               |    3 +
>  drivers/gpu/drm/i915/i915_gem_context.c       |    7 +
>  drivers/gpu/drm/i915/i915_gem_render_state.c  |  222 ++++++++++++
>  drivers/gpu/drm/i915/intel_renderstate_gen6.h |  290 +++++++++++++++
>  drivers/gpu/drm/i915/intel_renderstate_gen7.h |  254 +++++++++++++
>  drivers/gpu/drm/i915/intel_renderstate_gen8.h |  480 +++++++++++++++++++++++++
>  8 files changed, 1259 insertions(+), 2 deletions(-)
>  create mode 100644 drivers/gpu/drm/i915/i915_gem_render_state.c
>  create mode 100644 drivers/gpu/drm/i915/intel_renderstate_gen6.h
>  create mode 100644 drivers/gpu/drm/i915/intel_renderstate_gen7.h
>  create mode 100644 drivers/gpu/drm/i915/intel_renderstate_gen8.h
> 




More information about the Intel-gfx mailing list