Re: [PATCH] drm/i915: Try to stop rings before reset

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Apr 30, 2014 at 8:56 AM, Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> wrote:
> On Tue, Apr 29, 2014 at 04:38:21PM +0200, Daniel Vetter wrote:
>>  int intel_gpu_reset(struct drm_device *dev)
>>  {
>> +     struct drm_i915_private *dev_priv = dev->dev_private;
>> +     struct intel_ring_buffer *ring;
>> +     int i;
>> +
>> +     for_each_ring(ring, dev_priv, i)
>> +             __intel_stop_ring_buffer(ring);
>
> intel_gpu_reset() is called after i915_gem_reset() in the normal reset
> sequence (when the GPU is hung) so what was the error in using the
> currently exported function?

I wanted to keep intel_gpu_reset as a hw-resetting function only, and
the ring_idle looked fragile in there. Atm it should work, but I still
prefer we only do the hw-level ring stopping here since that is what
seems to help. This way we have a clear separation of concerns between
the sw state reset and the hw reset, and then later on the restore
procedure.
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/intel-gfx




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux