[PATCH] drm/amdgpu: release parent fence reference

Christian König deathsimple at vodafone.de
Mon Oct 24 09:13:35 UTC 2016


Am 24.10.2016 um 04:25 schrieb zhoucm1:
>
>
> On 2016年10月24日 02:31, Grazvydas Ignotas wrote:
>> It's done in amd_sched_hw_job_reset(), but not in normal job processing.
>> Leak reported by CONFIG_SLUB_DEBUG.
>>
>> Signed-off-by: Grazvydas Ignotas <notasas at gmail.com>
>> ---
>>   CONFIG_SLUB_DEBUG reports more leaks related to ioctls,
>>   but I was unable to track them down...
>>
>>   drivers/gpu/drm/amd/scheduler/gpu_scheduler.c | 2 ++
>>   1 file changed, 2 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c 
>> b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
>> index 910b8d5..cfb686e 100644
>> --- a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
>> +++ b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
>> @@ -522,6 +522,8 @@ static void amd_sched_process_job(struct fence 
>> *f, struct fence_cb *cb)
>>         trace_amd_sched_process_job(s_fence);
>>       fence_put(&s_fence->finished);
>> +    fence_put(s_fence->parent);
> If I remember correctly, parent was put in sched fence release.

Yes, exactly. It's only released in amd_sched_hw_job_reset() because we 
want to assign a new parent fence.

So this is a clear NAK.

Regards,
Christian.

>
> Regards,
> David Zhou
>> +    s_fence->parent = NULL;
>>       wake_up_interruptible(&sched->wake_up_worker);
>>   }
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx




More information about the amd-gfx mailing list