On Tue, 3 Jan 2012, Jan Steinhoff wrote: [ ... snip ... ] > +static int synusb_setup_iurb(struct synusb *synusb, > + struct usb_endpoint_descriptor *endpoint) > +{ > + char *buf; > + > + if (endpoint->wMaxPacketSize < 8) > + return 0; > + if (synusb->iurb) { > + synusb_warn(synusb, "Found more than one possible " > + "int in endpoint"); > + return 0; > + } > + synusb->iurb = usb_alloc_urb(0, GFP_KERNEL); > + if (synusb->iurb == NULL) > + return -ENOMEM; > + buf = usb_alloc_coherent(synusb->udev, 8, GFP_ATOMIC, > + &synusb->iurb->transfer_dma); > + if (buf == NULL) > + return -ENOMEM; You seem to leak synusb->iurb here. -- Jiri Kosina SUSE Labs -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html