lkml.org 
[lkml]   [2020]   [Jun]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.4 165/178] drm/amd: fix potential memleak in err branch
    Date
    From: Bernard Zhao <bernard@vivo.com>

    commit b5b78a6c8d8cb9c307bc6b16a754603424459d6e upstream.

    The function kobject_init_and_add alloc memory like:
    kobject_init_and_add->kobject_add_varg->kobject_set_name_vargs
    ->kvasprintf_const->kstrdup_const->kstrdup->kmalloc_track_caller
    ->kmalloc_slab, in err branch this memory not free. If use
    kmemleak, this path maybe catched.
    These changes are to add kobject_put in kobject_init_and_add
    failed branch, fix potential memleak.

    Signed-off-by: Bernard Zhao <bernard@vivo.com>
    Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com>
    Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Cc: stable@vger.kernel.org
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    drivers/gpu/drm/amd/amdkfd/kfd_process.c | 1 +
    1 file changed, 1 insertion(+)

    diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_process.c b/drivers/gpu/drm/amd/amdkfd/kfd_process.c
    index 40e3fc0c69421..aa0a617b8d445 100644
    --- a/drivers/gpu/drm/amd/amdkfd/kfd_process.c
    +++ b/drivers/gpu/drm/amd/amdkfd/kfd_process.c
    @@ -312,6 +312,7 @@ struct kfd_process *kfd_create_process(struct file *filep)
    (int)process->lead_thread->pid);
    if (ret) {
    pr_warn("Creating procfs pid directory failed");
    + kobject_put(process->kobj);
    goto out;
    }

    --
    2.25.1
    \
     
     \ /
      Last update: 2020-06-29 21:55    [W:3.643 / U:0.316 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site