Johannes Berg a écrit : > On Sat, 2008-10-11 at 03:48 +0300, Jouni Malinen wrote: >> On Sat, Oct 11, 2008 at 02:38:06AM +0200, Johannes Berg wrote: >>>> - ieee80211_rx_bss_put(sdata->local, bss); >>>> + if (bss) >>>> + ieee80211_rx_bss_put(sdata->local, bss); >>> I keep falling into that trap, maybe the put function should just handle >>> NULL instead... >> I though about that for half a second or so ;-) and ended up doing this >> instead after checking that other ieee80211_rx_bss_put() calls were only >> passing in non-NULL values. Anyway, I would be fine with _put() being >> able to handle NULL, too. > > I looked at it before and for some reason decided against it too. Let's > stick to this patch, I'll re-evaluate making it handle NULL. > >> PS. >> >> I don't know what exactly was triggering this oops (or well, what was >> triggering ieee80211_bss_info_update() to return NULL to be more exact), >> but it was happening very consistently in our office (but not anywhere >> else I've been this week). > > Strange. You probably have a mesh network with bogus mesh config or mesh > ID IEs, I can't see the allocation fail consistently in your office ;) > >> It was kind of funny to see that oops at the >> very moment when I was convincing people in a meeting that we can change >> mac80211 and should do so if it is the best location for something and >> makes it easier to implement something in a driver.. ;-) > > Ouch, sorry :) > > johannes Acked-by: Benoit Papillault <benoit.papillault@xxxxxxx> BTW, This is indeed Mesh Config IE received with incorrect mesh_id_len (8 bytes instead of 19 bytes as expected). I really think the current patch is the correct one. Regards, Benoit -- 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