When an skb survived a round-trip through the driver and needs to be re-used, its control information is definitely not valid any more, the driver will have overwritten it. Signed-off-by: Johannes Berg <johannes@xxxxxxxxxxxxxxxx> --- net/mac80211/status.c | 8 ++++++++ 1 file changed, 8 insertions(+) --- wireless-testing.orig/net/mac80211/status.c 2009-12-15 20:09:33.000000000 +0100 +++ wireless-testing/net/mac80211/status.c 2009-12-15 20:13:51.000000000 +0100 @@ -69,6 +69,14 @@ static void ieee80211_handle_filtered_fr */ goto drop; + /* + * This skb 'survived' a round-trip through the driver, and + * hopefully the driver didn't mangle it too badly. However, + * we can definitely not rely on the the control information + * being correct. Clear it so we don't get junk there. + */ + memset(&info->control, 0, sizeof(info->control)); + sta->tx_filtered_count++; /* -- 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