USB: fix pm counter leak in usblp
authorOliver Neukum <oliver@neukum.org>
Fri, 22 Feb 2008 00:35:05 +0000 (00:35 +0000)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 26 Feb 2008 00:19:00 +0000 (16:19 -0800)
commit 1902869019918411c148c18cc3a22aade569ac9a upstream

if you fail in open() you must decrement the pm counter again.

Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Pete Zaitcev <zaitcev@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/class/usblp.c

index ad632f2d6f94534e61a5ff6241a9671f517b1eea..0647164d36db562758cde201619d98e5ed9327a1 100644 (file)
@@ -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;