Skip to content

Commit 3f203f0

Browse files
committed
USB: serial: kl5kusb105: fix memleak on open
Fix memory leak of control-message transfer buffer on successful open(). Fixes: 6774d5f ("USB: serial: kl5kusb105: fix open error path") Cc: stable@vger.kernel.org Signed-off-by: Johan Hovold <johan@kernel.org>
1 parent bf193bf commit 3f203f0

1 file changed

Lines changed: 4 additions & 6 deletions

File tree

drivers/usb/serial/kl5kusb105.c

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -276,12 +276,12 @@ static int klsi_105_open(struct tty_struct *tty, struct usb_serial_port *port)
276276
priv->cfg.unknown2 = cfg->unknown2;
277277
spin_unlock_irqrestore(&priv->lock, flags);
278278

279+
kfree(cfg);
280+
279281
/* READ_ON and urb submission */
280282
rc = usb_serial_generic_open(tty, port);
281-
if (rc) {
282-
retval = rc;
283-
goto err_free_cfg;
284-
}
283+
if (rc)
284+
return rc;
285285

286286
rc = usb_control_msg(port->serial->dev,
287287
usb_sndctrlpipe(port->serial->dev, 0),
@@ -324,8 +324,6 @@ static int klsi_105_open(struct tty_struct *tty, struct usb_serial_port *port)
324324
KLSI_TIMEOUT);
325325
err_generic_close:
326326
usb_serial_generic_close(port);
327-
err_free_cfg:
328-
kfree(cfg);
329327

330328
return retval;
331329
}

0 commit comments

Comments
 (0)