--- a/arch/arm/mm/dma-mapping.c +++ b/arch/arm/mm/dma-mapping.c @@ -384,7 +384,8 @@ EXPORT_SYMBOL(dma_mmap_writecombine); */ void dma_free_coherent(struct device *dev, size_t size, void *cpu_addr, dma_addr_t handle) { - WARN_ON(irqs_disabled()); + if (irqs_disabled()) /* don't want stack dumps for these! */ + printk("WARNING: at %s:%d %s()\n", __FILE__, __LINE__, __FUNCTION__); if (dma_release_from_coherent(dev, get_order(size), cpu_addr)) return;