aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric Sesterhenn <snakebyte@gmx.de>2006-10-10 14:42:50 -0700
committerGreg Kroah-Hartman <gregkh@suse.de>2006-10-17 14:46:33 -0700
commit0e185b7922ac81516c5c4653dcf6aacbf6341e73 (patch)
treeef16d187c31398203e44e884255a4a5e1a87026d
parentc0fc0ee06f6c9ab37f53afc62b0d94a700fa7a97 (diff)
downloadlinux-0e185b7922ac81516c5c4653dcf6aacbf6341e73.tar.gz
USB: Memory leak in drivers/usb/serial/airprime.c
the commit http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=5dda171202f94127e49c12daf780cdae1b4e668b added a memory leak. In case we cant allocate an urb, we dont free the buffer and leak it. Coverity id #1438 Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Acked-by: Andy Gay <andy@andynet.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--drivers/usb/serial/airprime.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/usb/serial/airprime.c b/drivers/usb/serial/airprime.c
index 392a5129af64c..ba93c72cdba08 100644
--- a/drivers/usb/serial/airprime.c
+++ b/drivers/usb/serial/airprime.c
@@ -134,6 +134,7 @@ static int airprime_open(struct usb_serial_port *port, struct file *filp)
}
urb = usb_alloc_urb(0, GFP_KERNEL);
if (!urb) {
+ kfree(buffer);
dev_err(&port->dev, "%s - no more urbs?\n",
__FUNCTION__);
result = -ENOMEM;