On Mon, Oct 26, 2009 at 10:30:55PM +0100, Michael Buesch wrote: > /* 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". Hmm, that does sound problematic. But looking at the various bitfields: #define AR5K_DESC_TX_STATUS1_DONE 0x00000001 #define AR5K_DESC_TX_STATUS1_SEQ_NUM 0x00001ffe #define AR5K_DESC_TX_STATUS1_ACK_SIG_STRENGTH 0x001fe000 #define AR5K_DESC_TX_STATUS1_FINAL_TS_INDEX 0x00600000 #define AR5K_DESC_TX_STATUS1_COMP_SUCCESS 0x00800000 #define AR5K_DESC_TX_STATUS1_XMIT_ANTENNA 0x01000000 I would be led to believe that 'done' means 'completed or error' and the comment is similarly ambiguous. The status0 word contains things like 'really did succeed, number of retries, timestamp' etc. -- Bob Copeland %% www.bobcopeland.com -- 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