usblp: Don't let suspend to kill ->used

Suspend destroys refcounting for open/release.

Signed-off-by: Pete Zaitcev <zaitcev@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Pete Zaitcev 2007-05-24 21:59:19 -07:00 committed by Greg Kroah-Hartman
parent dda034bcb5
commit 97cb95d1c4

View File

@ -347,10 +347,8 @@ static int handle_bidir (struct usblp *usblp)
if (usblp->bidir && usblp->used && !usblp->sleeping) {
usblp->readcount = 0;
usblp->readurb->dev = usblp->dev;
if (usb_submit_urb(usblp->readurb, GFP_KERNEL) < 0) {
usblp->used = 0;
if (usb_submit_urb(usblp->readurb, GFP_KERNEL) < 0)
return -EIO;
}
}
return 0;
@ -412,6 +410,7 @@ static int usblp_open(struct inode *inode, struct file *file)
usblp->readurb->status = 0;
if (handle_bidir(usblp) < 0) {
usblp->used = 0;
file->private_data = NULL;
retval = -EIO;
}