If the comedi_driver (*auto_attach) fails, the comedi core will call the (*detach) function to do any cleanup. It's not necessary to do the cleanup in the (*auto_attach). Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx> Cc: Ian Abbott <abbotti@xxxxxxxxx> Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxx> --- drivers/staging/comedi/drivers/usbdux.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/drivers/staging/comedi/drivers/usbdux.c b/drivers/staging/comedi/drivers/usbdux.c index 8102efb..6a7d7f4 100644 --- a/drivers/staging/comedi/drivers/usbdux.c +++ b/drivers/staging/comedi/drivers/usbdux.c @@ -2294,17 +2294,14 @@ static int usbdux_auto_attach(struct comedi_device *dev, } ret = usbdux_alloc_usb_buffers(devpriv); - if (ret) { - tidy_up(devpriv); + if (ret) return ret; - } /* setting to alternate setting 3: enabling iso ep and bulk ep. */ ret = usb_set_interface(devpriv->usbdev, devpriv->ifnum, 3); if (ret < 0) { dev_err(dev->class_dev, "could not set alternate setting 3 in high speed\n"); - tidy_up(devpriv); return ret; } -- 1.8.3.2 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel