Message ID | 1371675987-28732-1-git-send-email-greearb@candelatech.com (mailing list archive) |
---|---|
State | Not Applicable, archived |
Headers | show |
On Wed, 2013-06-19 at 14:06 -0700, greearb@candelatech.com wrote: > From: Ben Greear <greearb@candelatech.com> > > Otherwise, we can leak a bss reference. Applied all 3, still trying to make up my mind about the debugfs one patch :) johannes -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 06/24/2013 06:56 AM, Johannes Berg wrote: > On Wed, 2013-06-19 at 14:06 -0700, greearb@candelatech.com wrote: >> From: Ben Greear <greearb@candelatech.com> >> >> Otherwise, we can leak a bss reference. > > Applied all 3, still trying to make up my mind about the debugfs one > patch :) With regard to that one, how about I allow it to be enabled based on cfg80211 module option (and only when cfg80211 debugfs is enabled). That way, no new kernel option, and no significant hit to any runtime performance unless users specifically enable the feature. Thanks for applying the other three. Thanks, Ben > > johannes >
diff --git a/net/wireless/sme.c b/net/wireless/sme.c index c0bf781..32dac8c 100644 --- a/net/wireless/sme.c +++ b/net/wireless/sme.c @@ -557,6 +557,7 @@ static DECLARE_WORK(cfg80211_disconnect_work, disconnect_work); * SME event handling */ +/* This method must consume bss one way or another */ void __cfg80211_connect_result(struct net_device *dev, const u8 *bssid, const u8 *req_ie, size_t req_ie_len, const u8 *resp_ie, size_t resp_ie_len, @@ -572,8 +573,10 @@ void __cfg80211_connect_result(struct net_device *dev, const u8 *bssid, ASSERT_WDEV_LOCK(wdev); if (WARN_ON(wdev->iftype != NL80211_IFTYPE_STATION && - wdev->iftype != NL80211_IFTYPE_P2P_CLIENT)) + wdev->iftype != NL80211_IFTYPE_P2P_CLIENT)) { + cfg80211_put_bss(wdev->wiphy, bss); return; + } nl80211_send_connect_result(wiphy_to_dev(wdev->wiphy), dev, bssid, req_ie, req_ie_len,