[PATCH libdrm 1/2] amdgpu: free flink bo in bo import

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

 



On 08/14/2018 04:26 PM, Christian König wrote:
> Am 14.08.2018 um 05:00 schrieb Junwei Zhang:
>> Fix potential memory leak when handle flink bo in bo import.
>> Free the flink bo after bo import and in error handling.
>>
>> Signed-off-by: Junwei Zhang <Jerry.Zhang at amd.com>
>
> Reviewed-by: Christian König <christian.koenig at amd.com> for the series.
>
> I assume you don't have commit rights to the upstream repository?

Yes, so prepared them here again :)
(BTW, thanks for your support about last patches in libdrm.)

Regards,
Jerry

>
> Christian.
>
>> ---
>>   amdgpu/amdgpu_bo.c | 5 +++++
>>   1 file changed, 5 insertions(+)
>>
>> diff --git a/amdgpu/amdgpu_bo.c b/amdgpu/amdgpu_bo.c
>> index b790e9b..d9556ec 100644
>> --- a/amdgpu/amdgpu_bo.c
>> +++ b/amdgpu/amdgpu_bo.c
>> @@ -255,6 +255,7 @@ int amdgpu_bo_import(amdgpu_device_handle dev,
>>                struct amdgpu_bo_import_result *output)
>>   {
>>       struct drm_gem_open open_arg = {};
>> +    struct drm_gem_close close_arg = {};
>>       struct amdgpu_bo *bo = NULL;
>>       int r;
>>       int dma_fd;
>> @@ -342,15 +343,19 @@ int amdgpu_bo_import(amdgpu_device_handle dev,
>>           bo->handle = open_arg.handle;
>>           if (dev->flink_fd != dev->fd) {
>> +            close_arg.handle = open_arg.handle;
>>               r = drmPrimeHandleToFD(dev->flink_fd, bo->handle, DRM_CLOEXEC, &dma_fd);
>>               if (r) {
>>                   free(bo);
>> +                drmIoctl(dev->flink_fd, DRM_IOCTL_GEM_CLOSE,
>> +                     &close_arg);
>>                   pthread_mutex_unlock(&dev->bo_table_mutex);
>>                   return r;
>>               }
>>               r = drmPrimeFDToHandle(dev->fd, dma_fd, &bo->handle );
>>               close(dma_fd);
>> +            drmIoctl(dev->flink_fd, DRM_IOCTL_GEM_CLOSE, &close_arg);
>>               if (r) {
>>                   free(bo);
>


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

  Powered by Linux