summaryrefslogtreecommitdiff
path: root/drivers/usb/class
diff options
context:
space:
mode:
authorOliver Neukum <oliver@neukum.org>2008-02-12 19:08:30 +0100
committerGreg Kroah-Hartman <gregkh@suse.de>2008-02-21 15:38:48 -0800
commit1902869019918411c148c18cc3a22aade569ac9a (patch)
tree5df2039971423956a70fdf962d6102e1987dc585 /drivers/usb/class
parent2129c4e1b4469e1f9711a54e97e8ddf8b26bb62d (diff)
downloadlinux-3.10-1902869019918411c148c18cc3a22aade569ac9a.tar.gz
linux-3.10-1902869019918411c148c18cc3a22aade569ac9a.tar.bz2
linux-3.10-1902869019918411c148c18cc3a22aade569ac9a.zip
USB: fix pm counter leak in usblp
if you fail in open() you must decrement the pm counter again. Signed-off-by: Oliver Neukum <oneukum@suse.de> Cc: stable <stable@kernel.org> Signed-off-by: Pete Zaitcev <zaitcev@redhat.com>
Diffstat (limited to 'drivers/usb/class')
-rw-r--r--drivers/usb/class/usblp.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/usb/class/usblp.c b/drivers/usb/class/usblp.c
index ad632f2d6f9..0647164d36d 100644
--- a/drivers/usb/class/usblp.c
+++ b/drivers/usb/class/usblp.c
@@ -428,6 +428,7 @@ static int usblp_open(struct inode *inode, struct file *file)
usblp->rcomplete = 0;
if (handle_bidir(usblp) < 0) {
+ usb_autopm_put_interface(intf);
usblp->used = 0;
file->private_data = NULL;
retval = -EIO;