From: Johannes Berg <johannes@xxxxxxxxxxxxxxxx> Date: Tue, 9 Jun 2015 21:35:44 +0200 > From: Johannes Berg <johannes.berg@xxxxxxxxx> > > Until recently, mac80211 overwrote all the statistics it could > provide when getting called, but it now relies on the struct > having been zeroed by the caller. This was always the case in > nl80211, but wext used a static struct which could even cause > values from one device leak to another. > > Using a static struct is OK (as even documented in a comment) > since the whole usage of this function and its return value is > always locked under RTNL. Not clearing the struct for calling > the driver has always been wrong though, since drivers were > free to only fill values they could report, so calling this > for one device and then for another would always have leaked > values from one to the other. > > Fix this by initializing the structure in question before the > driver method call. > > This fixes https://bugzilla.kernel.org/show_bug.cgi?id=99691 > > Cc: stable@xxxxxxxxxxxxxxx > Reported-by: Gerrit Renker <gerrit@xxxxxxxxxxxxxx> > Reported-by: Alexander Kaltsas <alexkaltsas@xxxxxxxxx> > Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx> > --- > Dave, would you mind applying this patch directly? It seems a > bit pointless to send a pull request for a single patch again. Sure, I'll do that right now. Thanks Johannes. -- 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