• Pavel Skripkin's avatar
    drivers: net: fix memory leak in peak_usb_create_dev · a0b96b4a
    Pavel Skripkin authored
    syzbot reported memory leak in peak_usb.
    The problem was in case of failure after calling
    ->dev_init()[2] in peak_usb_create_dev()[1]. The data
    allocated int dev_init() wasn't freed, so simple
    ->dev_free() call fix this problem.
    
    backtrace:
        [<0000000079d6542a>] kmalloc include/linux/slab.h:552 [inline]
        [<0000000079d6542a>] kzalloc include/linux/slab.h:682 [inline]
        [<0000000079d6542a>] pcan_usb_fd_init+0x156/0x210 drivers/net/can/usb/peak_usb/pcan_usb_fd.c:868   [2]
        [<00000000c09f9057>] peak_usb_create_dev drivers/net/can/usb/peak_usb/pcan_usb_core.c:851 [inline] [1]
        [<00000000c09f9057>] peak_usb_probe+0x389/0x490 drivers/net/can/usb/peak_usb/pcan_usb_core.c:949
    
    Reported-by: syzbot+91adee8d9ebb9193d22d@syzkaller.appspotmail.com
    Signed-off-by: default avatarPavel Skripkin <paskripkin@gmail.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    a0b96b4a
pcan_usb_core.c 24.2 KB