• Zumeng Chen's avatar
    mfd: ti_am335x_tscadc: Fix struct clk memory leak · ab140bd2
    Zumeng Chen authored
    [ Upstream commit c2b1509c ]
    
    Use devm_elk_get() to let Linux manage struct clk memory to avoid the following
    memory leakage report:
    
    unreferenced object 0xdd75efc0 (size 64):
      comm "systemd-udevd", pid 186, jiffies 4294945126 (age 1195.750s)
      hex dump (first 32 bytes):
        61 64 63 5f 74 73 63 5f 66 63 6b 00 00 00 00 00  adc_tsc_fck.....
        00 00 00 00 92 03 00 00 00 00 00 00 00 00 00 00  ................
      backtrace:
        [<c0a15260>] kmemleak_alloc+0x40/0x74
        [<c0287a10>] __kmalloc_track_caller+0x198/0x388
        [<c0255610>] kstrdup+0x40/0x5c
        [<c025565c>] kstrdup_const+0x30/0x3c
        [<c0636630>] __clk_create_clk+0x60/0xac
        [<c0630918>] clk_get_sys+0x74/0x144
        [<c0630cdc>] clk_get+0x5c/0x68
        [<bf0ac540>] ti_tscadc_probe+0x260/0x468 [ti_am335x_tscadc]
        [<c06f3c0c>] platform_drv_probe+0x60/0xac
        [<c06f1abc>] driver_probe_device+0x214/0x2dc
        [<c06f1c18>] __driver_attach+0x94/0xc0
        [<c06efe2c>] bus_for_each_dev+0x90/0xa0
        [<c06f1470>] driver_attach+0x28/0x30
        [<c06f1030>] bus_add_driver+0x184/0x1ec
        [<c06f2b74>] driver_register+0xb0/0xf0
        [<c06f3b4c>] __platform_driver_register+0x40/0x54
    Signed-off-by: default avatarZumeng Chen <zumeng.chen@gmail.com>
    Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
    Signed-off-by: default avatarSasha Levin <alexander.levin@microsoft.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    ab140bd2
ti_am335x_tscadc.c 9.52 KB