From: Sriramakrishnan A G <[email protected]> Date: Tue, 12 Apr 2011 10:12:31 +0530
> The DMA cleanup function was holding the spinlock across > a busy loop where it waits for HW to indicate teardown is complete. > This generates a backtrace, when DEBUG_SPINLOCK is enabled. Make the > locking more granular. > > Signed-off-by: Sriramakrishnan A G <[email protected]> You can't really sleep in this function at all. For example, it gets invoked from the ->ndo_tx_timeout() method in davinci_emac.c, which runs from a timer. So even if you hack the spinlock usage, there are still major issues here. We could conditionalize the timeout handling, but I don't think so much complexity is worth it here. Just do a udelay()/mdelay() or similar, instead of the timed sleeps. Thanks. _______________________________________________ Davinci-linux-open-source mailing list [email protected] http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
