lkml.org 
[lkml]   [2020]   [Feb]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.4 46/66] RDMA/hfi1: Fix memory leak in _dev_comp_vect_mappings_create
    Date
    From: Kamal Heib <kamalheib1@gmail.com>

    commit 8a4f300b978edbbaa73ef9eca660e45eb9f13873 upstream.

    Make sure to free the allocated cpumask_var_t's to avoid the following
    reported memory leak by kmemleak:

    $ cat /sys/kernel/debug/kmemleak
    unreferenced object 0xffff8897f812d6a8 (size 8):
    comm "kworker/1:1", pid 347, jiffies 4294751400 (age 101.703s)
    hex dump (first 8 bytes):
    00 00 00 00 00 00 00 00 ........
    backtrace:
    [<00000000bff49664>] alloc_cpumask_var_node+0x4c/0xb0
    [<0000000075d3ca81>] hfi1_comp_vectors_set_up+0x20f/0x800 [hfi1]
    [<0000000098d420df>] hfi1_init_dd+0x3311/0x4960 [hfi1]
    [<0000000071be7e52>] init_one+0x25e/0xf10 [hfi1]
    [<000000005483d4c2>] local_pci_probe+0xd4/0x180
    [<000000007c3cbc6e>] work_for_cpu_fn+0x51/0xa0
    [<000000001d626905>] process_one_work+0x8f0/0x17b0
    [<000000007e569e7e>] worker_thread+0x536/0xb50
    [<00000000fd39a4a5>] kthread+0x30c/0x3d0
    [<0000000056f2edb3>] ret_from_fork+0x3a/0x50

    Fixes: 5d18ee67d4c1 ("IB/{hfi1, rdmavt, qib}: Implement CQ completion vector support")
    Link: https://lore.kernel.org/r/20200205110530.12129-1-kamalheib1@gmail.com
    Signed-off-by: Kamal Heib <kamalheib1@gmail.com>
    Reviewed-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
    Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/infiniband/hw/hfi1/affinity.c | 2 ++
    1 file changed, 2 insertions(+)

    --- a/drivers/infiniband/hw/hfi1/affinity.c
    +++ b/drivers/infiniband/hw/hfi1/affinity.c
    @@ -479,6 +479,8 @@ static int _dev_comp_vect_mappings_creat
    rvt_get_ibdev_name(&(dd)->verbs_dev.rdi), i, cpu);
    }

    + free_cpumask_var(available_cpus);
    + free_cpumask_var(non_intr_cpus);
    return 0;

    fail:

    \
     
     \ /
      Last update: 2022-09-17 16:07    [W:4.208 / U:0.580 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site