On Wed, Dec 07, 2011 at 09:00:53PM +0530, Vasanthakumar Thiagarajan wrote: > > > nl80211_send_roamed(wiphy_to_dev(wdev->wiphy), wdev->netdev, bssid, > > > req_ie, req_ie_len, resp_ie, resp_ie_len, > > > GFP_KERNEL); > > > @@ -615,40 +612,65 @@ void __cfg80211_roamed(struct wireless_dev *wdev, > > > wdev->wext.prev_bssid_valid = true; > > > wireless_send_event(wdev->netdev, SIOCGIWAP, &wrqu, NULL); > > > #endif > > > + > > > + return; > > > +out: > > > + if (bss) > > > + cfg80211_put_bss(bss); > > > } > > > > Doesn't that leak the reference if you return? It'll also give you an > > smatch warning since the function assumes the "bss" pointer that was > > passed in is not NULL, no? > > Oops, sorry, i'll fix it. I may need to run smatch as well. Wait, actually we are not leaking the bss reference if we return after a successful roam notification. The reference to the current bss is released whenever we disconnect from it. Vasanth > -- 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