Patchwork [QUANTAL] Revert "drm/i915: GFX_MODE Flush TLB Invalidate Mode must be '1' for scanline waits"

login
register
mail settings
Submitter Steve Conklin
Date April 23, 2013, 2:56 p.m.
Message ID <1366728991-12089-1-git-send-email-sconklin@canonical.com>
Download mbox | patch
Permalink /patch/238936/
State New
Headers show

Comments

Steve Conklin - April 23, 2013, 2:56 p.m.
This reverts commit 4c443ec9afe7f6fab41106c617136aca44d69a7b.

This commit has been shown to cause GPU hangs on Sandy Bridge GPUs
---
 drivers/gpu/drm/i915/intel_ringbuffer.c |    5 -----
 1 file changed, 5 deletions(-)
Brad Figg - April 23, 2013, 2:59 p.m.
On 04/23/2013 07:56 AM, Steve Conklin wrote:
> This reverts commit 4c443ec9afe7f6fab41106c617136aca44d69a7b.
> 
> This commit has been shown to cause GPU hangs on Sandy Bridge GPUs
> ---
>  drivers/gpu/drm/i915/intel_ringbuffer.c |    5 -----
>  1 file changed, 5 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
> index 83eaa1d..102b6a7 100644
> --- a/drivers/gpu/drm/i915/intel_ringbuffer.c
> +++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
> @@ -435,11 +435,6 @@ static int init_render_ring(struct intel_ring_buffer *ring)
>  	if (INTEL_INFO(dev)->gen >= 6)
>  		I915_WRITE(MI_MODE, _MASKED_BIT_ENABLE(ASYNC_FLIP_PERF_DISABLE));
>  
> -	/* Required for the hardware to program scanline values for waiting */
> -	if (INTEL_INFO(dev)->gen == 6)
> -		I915_WRITE(GFX_MODE,
> -			   _MASKED_BIT_ENABLE(GFX_TLB_INVALIDATE_ALWAYS));
> -
>  	if (IS_GEN7(dev))
>  		I915_WRITE(GFX_MODE_GEN7,
>  			   _MASKED_BIT_DISABLE(GFX_TLB_INVALIDATE_ALWAYS) |
> 

This is causing a lot of people grief right now.
Luis Henriques - April 23, 2013, 3:04 p.m.
On Tue, Apr 23, 2013 at 09:56:31AM -0500, Steve Conklin wrote:
> This reverts commit 4c443ec9afe7f6fab41106c617136aca44d69a7b.
> 
> This commit has been shown to cause GPU hangs on Sandy Bridge GPUs
> ---
>  drivers/gpu/drm/i915/intel_ringbuffer.c |    5 -----
>  1 file changed, 5 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
> index 83eaa1d..102b6a7 100644
> --- a/drivers/gpu/drm/i915/intel_ringbuffer.c
> +++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
> @@ -435,11 +435,6 @@ static int init_render_ring(struct intel_ring_buffer *ring)
>  	if (INTEL_INFO(dev)->gen >= 6)
>  		I915_WRITE(MI_MODE, _MASKED_BIT_ENABLE(ASYNC_FLIP_PERF_DISABLE));
>  
> -	/* Required for the hardware to program scanline values for waiting */
> -	if (INTEL_INFO(dev)->gen == 6)
> -		I915_WRITE(GFX_MODE,
> -			   _MASKED_BIT_ENABLE(GFX_TLB_INVALIDATE_ALWAYS));
> -
>  	if (IS_GEN7(dev))
>  		I915_WRITE(GFX_MODE_GEN7,
>  			   _MASKED_BIT_DISABLE(GFX_TLB_INVALIDATE_ALWAYS) |
> -- 
> 1.7.9.5
> 
> 
> -- 
> kernel-team mailing list
> kernel-team@lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team

Cheers,
--
Luis
Steve Conklin - April 23, 2013, 3:31 p.m.
On 04/23/2013 09:56 AM, Steve Conklin wrote:
> This reverts commit 4c443ec9afe7f6fab41106c617136aca44d69a7b.
> 
> This commit has been shown to cause GPU hangs on Sandy Bridge GPUs
> ---
>  drivers/gpu/drm/i915/intel_ringbuffer.c |    5 -----
>  1 file changed, 5 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
> index 83eaa1d..102b6a7 100644
> --- a/drivers/gpu/drm/i915/intel_ringbuffer.c
> +++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
> @@ -435,11 +435,6 @@ static int init_render_ring(struct intel_ring_buffer *ring)
>  	if (INTEL_INFO(dev)->gen >= 6)
>  		I915_WRITE(MI_MODE, _MASKED_BIT_ENABLE(ASYNC_FLIP_PERF_DISABLE));
>  
> -	/* Required for the hardware to program scanline values for waiting */
> -	if (INTEL_INFO(dev)->gen == 6)
> -		I915_WRITE(GFX_MODE,
> -			   _MASKED_BIT_ENABLE(GFX_TLB_INVALIDATE_ALWAYS));
> -
>  	if (IS_GEN7(dev))
>  		I915_WRITE(GFX_MODE_GEN7,
>  			   _MASKED_BIT_DISABLE(GFX_TLB_INVALIDATE_ALWAYS) |
>

Patch

diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
index 83eaa1d..102b6a7 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -435,11 +435,6 @@  static int init_render_ring(struct intel_ring_buffer *ring)
 	if (INTEL_INFO(dev)->gen >= 6)
 		I915_WRITE(MI_MODE, _MASKED_BIT_ENABLE(ASYNC_FLIP_PERF_DISABLE));
 
-	/* Required for the hardware to program scanline values for waiting */
-	if (INTEL_INFO(dev)->gen == 6)
-		I915_WRITE(GFX_MODE,
-			   _MASKED_BIT_ENABLE(GFX_TLB_INVALIDATE_ALWAYS));
-
 	if (IS_GEN7(dev))
 		I915_WRITE(GFX_MODE_GEN7,
 			   _MASKED_BIT_DISABLE(GFX_TLB_INVALIDATE_ALWAYS) |