Messages in this thread | | | Date | Wed, 18 Sep 2013 11:54:07 +0500 | From | "Zubair Lutfullah :" <> | Subject | Re: [PATCH 2/2] iio: ti_am335x_adc: Add continuous sampling support |
| |
On Tue, Sep 17, 2013 at 09:27:27PM -0700, Dmitry Torokhov wrote: > 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
I admit I am unaware at the moment about how it works.
I use devm and simply ignore the error path?
The devm function header description said something about using devm_free when freeing. And this is the way I am used to seeing error handling.
Zubair
| |