rt2x00: don't use TXDONE_FALLBACK as success indicator

TXDONE_FALLBACK doesn't express if the frame was sent successful or not. It
only tells us that the hw used fallback rates for retries. Hence, don't use
TXDONE_FALLBACK as success indicator.

Before this patch we reported success to the rate control algorithm which
was wrong in a number of cases and might have lead to improper tx rate
selections.

Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
Acked-by: Gertjan van Wingerde <gwingerde@gmail.com>
Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
Helmut Schaa 2010-06-14 22:09:09 +02:00 committed by John W. Linville
parent 46678b197a
commit fd6dcb883a

View File

@ -236,8 +236,7 @@ void rt2x00lib_txdone(struct queue_entry *entry,
*/
success =
test_bit(TXDONE_SUCCESS, &txdesc->flags) ||
test_bit(TXDONE_UNKNOWN, &txdesc->flags) ||
test_bit(TXDONE_FALLBACK, &txdesc->flags);
test_bit(TXDONE_UNKNOWN, &txdesc->flags);
/*
* Update TX statistics.