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
Attachment:
signature.asc
Description: This is a digitally signed message part