Hi Zubair, On Tue, Sep 17, 2013 at 09:44:07AM +0500, Zubair Lutfullah wrote: > + > + ret = devm_request_threaded_irq(indio_dev->dev.parent, > + irq, > + pollfunc_th, pollfunc_bh, > + flags, indio_dev->name, > + indio_dev); > + if (ret) > + goto error_kfifo_free; > + > + indio_dev->setup_ops = setup_ops; > + indio_dev->modes |= INDIO_BUFFER_HARDWARE; > + > + ret = iio_buffer_register(indio_dev, > + indio_dev->channels, > + indio_dev->num_channels); > + if (ret) > + goto error_free_irq; > + > + return 0; > + > +error_free_irq: > + devm_free_irq(indio_dev->dev.parent, irq, indio_dev); What is the point of using devm_* here if you are doing explicit management of the resource anyway (you explicitly release it in all code paths)? Thanks. -- Dmitry -- To unsubscribe from this list: send the line "unsubscribe linux-iio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html