kernel 3.4.0 oops

Andrei Popa ierdnah at gmail.com
Tue May 22 03:04:24 PDT 2012


On Tue, 2012-05-22 at 10:33 +0100, Chris Wilson wrote:
> I think I encountered this bug whilst developing "drm/i915:
> Asynchronously unpin the old framebuffer after the next vblank". Try
> 
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index afab263..9b94871 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -1865,6 +1865,7 @@ intel_pin_and_fence_fb_obj(struct drm_device *dev,
>  		goto err_unpin;
>  
>  	i915_gem_object_pin_fence(obj);
> +	drm_gem_object_reference(&obj->base);
>  
>  	dev_priv->mm.interruptible = true;
>  	return 0;
> @@ -1880,6 +1881,7 @@ void intel_unpin_fb_obj(struct drm_i915_gem_object *obj)
>  {
>  	i915_gem_object_unpin_fence(obj);
>  	i915_gem_object_unpin(obj);
> +	drm_gem_object_unreference(&obj->base);
>  }
> -Chris

With this patch my computer freezes when I start X.
Only "ALT+SysRq+b" works.




More information about the dri-devel mailing list