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 ---
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