diff options
author | Kulikov Vasiliy <segooon@gmail.com> | 2010-08-11 12:02:10 +0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-09-01 01:51:52 +0400 |
commit | c2c6a66a51da4d7311aa4508c1cd56c2397cf708 (patch) | |
tree | a11dac74f2492a6faf1aeb71f271c97dd91250c2 /drivers | |
parent | 211673991ec168c293791a94ad7aa31998907768 (diff) | |
download | linux-c2c6a66a51da4d7311aa4508c1cd56c2397cf708.tar.xz |
staging: usbip: fix memory leak
If stub_probe() failed then do not increase interf_count. In original
code sdev was leaked as its interf_count never reaches 0.
Signed-off-by: Kulikov Vasiliy <segooon@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/staging/usbip/stub_dev.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/staging/usbip/stub_dev.c b/drivers/staging/usbip/stub_dev.c index b6b753a49346..b186b5fed2b9 100644 --- a/drivers/staging/usbip/stub_dev.c +++ b/drivers/staging/usbip/stub_dev.c @@ -427,11 +427,11 @@ static int stub_probe(struct usb_interface *interface, if (busid_priv->status == STUB_BUSID_ALLOC) { - busid_priv->interf_count++; sdev = busid_priv->sdev; if (!sdev) return -ENODEV; + busid_priv->interf_count++; dev_info(&interface->dev, "USB/IP Stub: register a new interface " "(bus %u dev %u ifn %u)\n", udev->bus->busnum, udev->devnum, |