On Monday 26 October 2009 21:52:39 David Srbecky wrote: > I am getting this error as well. Ok, I looked at the code a bit and this looks strange to me. There's the TX status handler in base.c which basically looks like this: loop_over_queued_packets() { ret = sc->ah->ah_proc_rx_desc(sc->ah, ds, &rs); if (unlikely(ret == -EINPROGRESS)) break; free_packet_and_return_bufferhead_to_pool(); } So the ah_proc_rx_desc callback looks like this: ah_proc_rx_..._desc() { ... /* No frame has been send or error */ if (unlikely(!(tx_status->tx_status_1 & AR5K_DESC_TX_STATUS1_DONE))) return -EINPROGRESS; ... } Notice the comment and how it says "or error". So does that mean that if the hardware produces some kind of error on one frame, the driver will stop processing any TX status reports (because the loop always breaks early)? This would result in a buffer queue underrun, which is reported by the printk. -- Greetings, Michael. -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html