On Tuesday, December 11, 2012 02:55:05 PM Gabor Juhos wrote: > In commit 'mac80211: support radiotap vendor namespace RX data' > new fields were added to 'struct ieee80211_rx_status'. > The ath5k driver does not initializes those fields and ^^^^^ p54?! > this can cause unexpected behaviour. The patch ensures > that each field gets initialized with zeroes. Actually, when the skb is alloced/initialized by __alloc_skb, the skb->cb is already zeroed (which is where the ieee80211_rx_status will be stored). And while p54 recycles command response skbs, the driver does not touch the skb->cb of 802.11 skbs, until the frame is destined for ieee80211_rx_irqsave. If this issue just popped up now, I suspect that something else is silently corrupting our SKBs [or can anybody see how rt2x00 hit this issue?] > Cc: Christian Lamparter <chunkeey@xxxxxxxxxxxxxx> > Signed-off-by: Gabor Juhos <juhosg@xxxxxxxxxxx> > --- > Compile tested only. > --- > drivers/net/wireless/p54/txrx.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/net/wireless/p54/txrx.c b/drivers/net/wireless/p54/txrx.c > index 12f0a34..be2552e 100644 > --- a/drivers/net/wireless/p54/txrx.c > +++ b/drivers/net/wireless/p54/txrx.c > @@ -345,6 +345,8 @@ static int p54_rx_data(struct p54_common *priv, struct sk_buff *skb) > if (!(hdr->flags & cpu_to_le16(P54_HDR_FLAG_DATA_IN_FCS_GOOD))) > return 0; > > + memset(rx_status, 0, sizeof(*rx_status)); > + > if (hdr->decrypt_status == P54_DECRYPT_OK) > rx_status->flag |= RX_FLAG_DECRYPTED; > if ((hdr->decrypt_status == P54_DECRYPT_FAIL_MICHAEL) || > -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html