broken TX in HEAD (AR5212)

Adrian Chadd adrian at freebsd.org
Mon Sep 24 02:56:07 UTC 2012


Hm, ok.

Change this bit in if_ath_tx.c:

-	flags = HAL_TXDESC_CLRDMASK;		/* XXX needed for crypto errs */
+	//flags = HAL_TXDESC_CLRDMASK;		/* XXX needed for crypto errs */
+	flags = 0;

to just

flags = HAL_TXDESC_CLRDMASK;

See if that works.

Hmph. I thought I caught all the filtered frames weirdness. Obviously
I didn't..

Oh for gods sake. I know what I did wrong. Yes, do the above for now.
I totally screwed up; I thought I had set CLRDMASK correctly for
non-aggregate traffic.

Ok, here's what I did wrong - I didn't set the CLRDMASK
unconditionally for non-aggregate traffic. So the non-11n
(non-aggregate path) has it selectively set - but there's no
completion handler which is putting the traffic on the filtered frames
list and setting the CLRDMASK bit again.

So do the above and please, please file a bug with what you've
gathered. I'll add this to the email and I'll fix it in -HEAD.

Thanks for pointing this out!



Adrian


More information about the freebsd-wireless mailing list