]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/usb/usb-skeleton.c
[SK_BUFF]: Introduce skb_network_header_len
[linux-2.6-omap-h63xx.git] / drivers / usb / usb-skeleton.c
index 1b51d3187a95c8d99c87de153de5afed4a9831ea..46929a1b6f24e44ba8566c46d0db993dfd113439 100644 (file)
@@ -90,13 +90,15 @@ static int skel_open(struct inode *inode, struct file *file)
                goto exit;
        }
 
+       /* increment our usage count for the device */
+       kref_get(&dev->kref);
+
        /* prevent the device from being autosuspended */
        retval = usb_autopm_get_interface(interface);
-       if (retval)
+       if (retval) {
+               kref_put(&dev->kref, skel_delete);
                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;
@@ -158,7 +160,7 @@ exit:
        return retval;
 }
 
-static void skel_write_bulk_callback(struct urb *urb, struct pt_regs *regs)
+static void skel_write_bulk_callback(struct urb *urb)
 {
        struct usb_skel *dev;