Message ID | 539B85F0.3090004@gmail.com (mailing list archive) |
---|---|
State | Not Applicable, archived |
Headers | show |
On 2014-06-13 16:14, Mathy Vanhoef wrote:
[snip]
> Just saw a spelling mistake in the comment, s/Threat/Treat.
One more mistake in the comment.
Change the word "of" to "or":
...underwent a CCK of OFDM reset...
should be
...underwent a CCK or OFDM reset...
Gus
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
I'm sure the spelling error can be fixed when applying the patch. This (and the previous patch) is useful for people using monitor mode to diagnose network problems, monitor traffic, research things, etc. So it would be nice to have it included! On Sat, Jun 14, 2014 at 2:27 AM, Gus Wirth <gwirth79@gmail.com> wrote: > On 2014-06-13 16:14, Mathy Vanhoef wrote: > [snip] >> Just saw a spelling mistake in the comment, s/Threat/Treat. > > One more mistake in the comment. > > Change the word "of" to "or": > > > ...underwent a CCK of OFDM reset... > > should be > > ...underwent a CCK or OFDM reset... > > Gus -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Mon, Jun 23, 2014 at 11:20:54PM +0200, Mathy Vanhoef wrote: > I'm sure the spelling error can be fixed when applying the patch. > > This (and the previous patch) is useful for people using monitor mode > to diagnose network problems, monitor traffic, research things, etc. > So it would be nice to have it included! It would also be nice if you could repost it properly, instead of expecting me to dig through email threads to piece together a mergeable patch...
diff --git a/drivers/net/wireless/ath/ath5k/base.c b/drivers/net/wireless/ath/ath5k/base.c index 4b18434..6e7c636 100644 --- a/drivers/net/wireless/ath/ath5k/base.c +++ b/drivers/net/wireless/ath/ath5k/base.c @@ -1457,7 +1457,20 @@ ath5k_receive_frame_ok(struct ath5k_hw *ah, struct ath5k_rx_status *rs) ah->stats.rxerr_phy++; if (rs->rs_phyerr > 0 && rs->rs_phyerr < 32) ah->stats.rxerr_phy_code[rs->rs_phyerr]++; - return false; + + /* + * Treat packets that underwent a CCK of OFDM reset as having a bad CRC. + * These restarts happen when the radio resynchronizes to a stronger frame + * while receiving a weaker frame. Here we receive the prefix of the weak + * frame. Since these are incomplete packets, mark their CRC as invalid. + */ + if (rs->rs_phyerr == AR5K_RX_PHY_ERROR_OFDM_RESTART || + rs->rs_phyerr == AR5K_RX_PHY_ERROR_CCK_RESTART) { + rs->rs_status |= AR5K_RXERR_CRC; + rs->rs_status &= ~AR5K_RXERR_PHY; + } else { + return false; + } } if (rs->rs_status & AR5K_RXERR_DECRYPT) { /*