"Zubair Lutfullah :" <zubair.lutfullah@xxxxxxxxx> wrote: >On Wed, Sep 18, 2013 at 06:05:12PM +0100, Jonathan Cameron wrote: >> >> >> >However in this case such conversion us dangerous. With all but >IRQ >> >> >resource managed by the traditional methods they will be released >> >first >> >> >with IRQ handler deregistered very last. Therefore if device is >not >> >> >properly quiesced IRQ raised during driver unbinding is likely to >> >> >result >> >> >in kernel oops. >> >> > >> >> >IOW devm_request_irq() is very often evil (it is still useful if >> >_all_ >> >> >your resources are managed by devm_*). >> >> > >> >> >In case of your driver I'd recommend switching to >> >> >request_irq()/free_irq() instead. >> >> > >> >> >Thanks. >> >> >> >> Pretty much all resources are devm managed in here >> >> >> >> >> >>https://git.kernel.org/cgit/linux/kernel/git/jic23/iio.git/tree/drivers/iio/adc/ti_am335x_adc.c?h=togreg&id=7a1aeba7ed0d5a1e83fd5a8ee2a2869430d40347 >> > >> > >> >So we are guaranteed that that new kfifo that is being allocated >just >> >before we requesting IRQ and will be freed way before we free the >IRQ >> >will not be used by the IOTQ handler? >> > >> >Thanks. >> Good point. I forgot about that. The source of interrupts 'should' >be disabled before the kfifo is freed but I guess perhaps better to >play it safe. Would take a fair bit of review to be sure that is not >going to cause grief. >> >> A few more devm handlers need writing before it is truly useful here. >> >> Thanks for pointing this out. >> >> J > >If I understand the conclusion correctly, no devm here? No devm for the irq. The rest are fine. > >Zubair >-- >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 -- Sent from my Android phone with K-9 Mail. Please excuse my brevity. -- 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