diff options
| -rw-r--r-- | drivers/usb/usb-skeleton.c | 13 | 
1 files changed, 4 insertions, 9 deletions
diff --git a/drivers/usb/usb-skeleton.c b/drivers/usb/usb-skeleton.c index 0616f235bd6..ce310170829 100644 --- a/drivers/usb/usb-skeleton.c +++ b/drivers/usb/usb-skeleton.c @@ -105,20 +105,15 @@ static int skel_open(struct inode *inode, struct file *file)  		goto exit;  	} -	/* increment our usage count for the device */ -	kref_get(&dev->kref); - -	/* lock the device to allow correctly handling errors -	 * in resumption */ -	mutex_lock(&dev->io_mutex); -  	retval = usb_autopm_get_interface(interface);  	if (retval) -		goto out_err; +		goto exit; + +	/* increment our usage count for the device */ +	kref_get(&dev->kref);  	/* save our object in the file's private structure */  	file->private_data = dev; -	mutex_unlock(&dev->io_mutex);  exit:  	return retval;  |