]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/usb/misc/iowarrior.c
Merge branch 'master' into tk71
[mv-sheeva.git] / drivers / usb / misc / iowarrior.c
index bc88c79875a146712cae5fcb7461325501f20ad7..e573e470401528134dc55a69a6921e3849ed45eb 100644 (file)
@@ -374,7 +374,7 @@ static ssize_t iowarrior_write(struct file *file,
        case USB_DEVICE_ID_CODEMERCS_IOWPV2:
        case USB_DEVICE_ID_CODEMERCS_IOW40:
                /* IOW24 and IOW40 use a synchronous call */
-               buf = kmalloc(8, GFP_KERNEL);   /* 8 bytes are enough for both products */
+               buf = kmalloc(count, GFP_KERNEL);
                if (!buf) {
                        retval = -ENOMEM;
                        goto exit;
@@ -553,6 +553,7 @@ static long iowarrior_ioctl(struct file *file, unsigned int cmd,
                        /* needed for power consumption */
                        struct usb_config_descriptor *cfg_descriptor = &dev->udev->actconfig->desc;
 
+                       memset(&info, 0, sizeof(info));
                        /* directly from the descriptor */
                        info.vendor = le16_to_cpu(dev->udev->descriptor.idVendor);
                        info.product = dev->product_id;
@@ -730,6 +731,7 @@ static const struct file_operations iowarrior_fops = {
        .open = iowarrior_open,
        .release = iowarrior_release,
        .poll = iowarrior_poll,
+       .llseek = noop_llseek,
 };
 
 static char *iowarrior_devnode(struct device *dev, mode_t *mode)
@@ -767,7 +769,7 @@ static int iowarrior_probe(struct usb_interface *interface,
        int i;
        int retval = -ENOMEM;
 
-       /* allocate memory for our device state and intialize it */
+       /* allocate memory for our device state and initialize it */
        dev = kzalloc(sizeof(struct iowarrior), GFP_KERNEL);
        if (dev == NULL) {
                dev_err(&interface->dev, "Out of memory\n");