USB: TI 3410/5052 USB Serial Driver: Fix mem leak when firmware is too big.
authorJesper Juhl <jj@chaosbits.net>
Mon, 13 Jun 2011 20:50:41 +0000 (22:50 +0200)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 14 Jun 2011 21:20:30 +0000 (14:20 -0700)
If the size of the firmware exceeds TI_FIRMWARE_BUF_SIZE we'll leak 'fw_p'
by failing to call release_firmware().
This patch fixes the leak.

Signed-off-by: Jesper Juhl <jj@chaosbits.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/serial/ti_usb_3410_5052.c

index c6d92a5300869ce17aa0ce584778e484d94384bd..ea8445689c8501f82795a9fe29c95b9fbcd73183 100644 (file)
@@ -1745,6 +1745,7 @@ static int ti_download_firmware(struct ti_device *tdev)
        }
        if (fw_p->size > TI_FIRMWARE_BUF_SIZE) {
                dev_err(&dev->dev, "%s - firmware too large %zu\n", __func__, fw_p->size);
+               release_firmware(fw_p);
                return -ENOENT;
        }