K 10 svn:author V 6 adrian K 8 svn:date V 27 2011-10-26T15:20:21.342531Z K 7 svn:log V 816 Now that I've done a quick audit and made sure that the calls to ath_freebuf() occur during active TX completion, migrate the busy flag clear logic to inside ath_freebuf(). ath_freebuf() is now only called for frames which have completed TX somehow (success or failure), or during TX queue flush (where we don't care about the busy flag any longer.) It must not be called for frames that haven't come from the TX completion or node flush logic. This fixes the code to compile/run/not hang w/ the TDMA option in the kernel (but I haven't tested TDMA yet, unfortunately) as now the tail buffer on the free list has the ATH_BUF_BUSY flag cleared on -each- completed subframe. (Again, this isn't the correct/full fix for using multiple TX DMA queues, but that's a later problem to fix. It's just as broken in -HEAD.) END