[PATCH drm-next 3/3] drm/i915/contexts: Fixup merge with commit b6c7488df68a

Sedat Dilek sedat.dilek at gmail.com
Sun Aug 26 12:13:49 PDT 2012


On Sun, Aug 26, 2012 at 8:42 PM, Daniel Vetter <daniel at ffwll.ch> wrote:
> On Sat, Aug 25, 2012 at 12:16:24AM +0200, Sedat Dilek wrote:
>> This is a fixup patch for the merge of drm-next into linux-next caused
>> by commit b6c7488df68a ("drm/i915/contexts: fix list corruption").
>>
>> Reported-By: Stephen Rothwell <sfr at canb.auug.org.au>
>> Signed-off-by: Sedat Dilek <sedat.dilek at gmail.com>
>
> This is wrong, switch_context _must_ happen before ring_idle, otherwise
> all hell can break loose on resume.

I followed what's in drm-intel-next not what was in Linus-tree.

- Sedat -

http://cgit.freedesktop.org/~danvet/drm-intel/tree/drivers/gpu/drm/i915/i915_gem.c?h=drm-intel-next#n2432

> -Daniel
>
>> ---
>>  drivers/gpu/drm/i915/i915_gem.c |    4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
>> index 4f6841d..e8a5cb2 100644
>> --- a/drivers/gpu/drm/i915/i915_gem.c
>> +++ b/drivers/gpu/drm/i915/i915_gem.c
>> @@ -2273,11 +2273,11 @@ int i915_gpu_idle(struct drm_device *dev)
>>
>>       /* Flush everything onto the inactive list. */
>>       for_each_ring(ring, dev_priv, i) {
>> -             ret = i915_switch_context(ring, NULL, DEFAULT_CONTEXT_ID);
>> +             ret = i915_ring_idle(ring);
>>               if (ret)
>>                       return ret;
>>
>> -             ret = i915_ring_idle(ring);
>> +             ret = i915_switch_context(ring, NULL, DEFAULT_CONTEXT_ID);
>>               if (ret)
>>                       return ret;
>>
>> --
>> 1.7.9.5
>>
>> _______________________________________________
>> dri-devel mailing list
>> dri-devel at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/dri-devel
>
> --
> Daniel Vetter
> Mail: daniel at ffwll.ch
> Mobile: +41 (0)79 365 57 48


More information about the dri-devel mailing list