[PATCH libdrm 2/2] [RFC] amdgpu: do not free flink bo for flink_fd

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

 



On 08/13/2018 11:03 AM, Zhang, Jerry (Junwei) wrote:
> On 08/10/2018 10:20 PM, Christian König wrote:
>> Am 10.08.2018 um 07:05 schrieb Junwei Zhang:
>>> the flink bo is used to export
>>
>> Why should we do this? That makes no sense, this way we would create a memory leak.
>
> Get the thought from bo_import code, but neglected the detail of DRM_IOCTL_GEM_CLOSE IOCTL,
> that will remove the bo handle from filp->object_idr rather than filp->dev->object_name_idr.

If so, shall we close the flink bo handle(open_arg.handle) in bo import, when fails to find bo in flink handle table?
{{{
args.handle = open_arg.handle;
drmIoctl(dev->flink_fd, DRM_IOCTL_GEM_CLOSE, &args);
}}}

Regards,
Jerry

> Then make sense now. Sorry for the noise.
>
> Jerry
>
>>
>> Christian.
>>
>>>
>>> Signed-off-by: Junwei Zhang <Jerry.Zhang at amd.com>
>>> ---
>>>   amdgpu/amdgpu_bo.c | 6 ------
>>>   1 file changed, 6 deletions(-)
>>>
>>> diff --git a/amdgpu/amdgpu_bo.c b/amdgpu/amdgpu_bo.c
>>> index 6f0baf1..5b91cfc 100644
>>> --- a/amdgpu/amdgpu_bo.c
>>> +++ b/amdgpu/amdgpu_bo.c
>>> @@ -219,12 +219,6 @@ static int amdgpu_bo_export_flink(amdgpu_bo_handle bo)
>>>       bo->flink_name = flink.name;
>>> -    if (bo->dev->flink_fd != bo->dev->fd) {
>>> -        struct drm_gem_close args = {};
>>> -        args.handle = handle;
>>> -        drmIoctl(bo->dev->flink_fd, DRM_IOCTL_GEM_CLOSE, &args);
>>> -    }
>>> -
>>>       pthread_mutex_lock(&bo->dev->bo_table_mutex);
>>>       r = handle_table_insert(&bo->dev->bo_flink_names, bo->flink_name, bo);
>>>       pthread_mutex_unlock(&bo->dev->bo_table_mutex);
>>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx


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

  Powered by Linux