On Mon, 2006-07-08 at 18:29 +0200, Edgar E. Iglesias wrote: > Assuming you would get the code inside the jamal ifdefs working without > deadlocks, you now have a tx_irq function which if fdesc >= tx_ring->prunet > essentially just checks for hw lockups. Let's speculate and further assume you > could do the detect_tx_hung from some other context (timer or whatever) then > you end up having a tx_irq function which most of the time does nothing. > > The next step could be to move the fdesc >= tx_ring->prunet logic into the > transmit path and completely disable the tx_irq when the condition is not met. > > Now you end up not taking the irq at all as long as fdesc >= tx_ring->prunet. > > This was the logic I tried on the cris driver but ended up with deadlocks :) >
Like i said in one of my earlier postings (first email i CCed you on), this specific test i assumed was as close to what you did. But if i understand what you describe as "deadlock" then we have a slightly different problem that can only be solved by orphaning the skbs that are determined to have been put on the DMA ring .... cheers, jamal - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html