Hi Adrian,

I have a patch which does what you want, but that did not fix the issue. This 
basically reads back then writes the key material for the MIC and the TKIP.
See replumb_did_not_work.diff, attached.

I tried the replumbing in ath9k_cmn_rx_skb_postprocess(), which is in 
drivers/net/wireless/ath/ath9k/common.c. That was not very successful either.
Lastly I tried ath_rx_tasklet in drivers/net/wireless/ath/ath9k/recv.c. This 
function actually invokes the ath9k_cmn_rx_skb_postprocess() function.
I'm guessing that these registers should not be written at a whim, but that 
needs an understanding of the chips workings that I lack.

I had wanted to keep track of the NL80211_STA_INFO_RX_DROP_MISC, which seems to 
radically increase when things go wrong (mind, it also increases on a working 
link sometimes). This variable seems to be derived from flags set in the ath9k 
driver, which are decoded by the mac80211 layer. Thus keeping track on a 
per-station level proved to be tricky.

As mentioned before, a patch that did fix the issue was resetting the chip when 
a key was installed. This caused a lot of packet loss and rekeying to happen.
That's here: 
https://github.com/cozybit/authsae/files/347910/ath9k-install_key-buckshot.diff.txt.


Thanks,

Michel Stam
--- Begin Message ---
Also, are you validating both the keycache entry and MIC for TKIP? Do
you have a patch you can share?


-a

On 13 July 2016 at 13:39, Adrian Chadd <adr...@freebsd.org> wrote:
> Hi!
>
> Ok, so! There's actually some bug in the keycache hardware that the
> reference driver calls  ATH_SUPPORT_KEYPLUMB_WAR. It waits to see if
> there's crypto errors upon RX and if so, it replumbs the key.
>
> I think this is a workaround that needs to be plumbed into the driver.
>
> Bug me about it again soon and I'll go extract the pertinent bits for
> someone to go reimplement.
>
>
>
> -adrian


--- End Message ---

Attachment: replumb_did_not_work.diff
Description: replumb_did_not_work.diff

_______________________________________________
ath9k-devel mailing list
ath9k-devel@lists.ath9k.org
https://lists.ath9k.org/mailman/listinfo/ath9k-devel

Reply via email to