From: Antonio Quartulli <antonio@xxxxxxxxxxxxx> It may be the case that the same IBSS (same bssid and essid) exists on two different channels (i.e. two IBSSes created with different but fixed freq) and therefore the latter must be also used to distinguish them. Fix wdev->current_bss assignment by passing the channel to cfg80211_get_bss() on ibss_joined. This ensures that cfg80211_get_bss() picks up the proper bss object. Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxx> --- net/wireless/ibss.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/wireless/ibss.c b/net/wireless/ibss.c index 403fe29..12c878b 100644 --- a/net/wireless/ibss.c +++ b/net/wireless/ibss.c @@ -28,7 +28,7 @@ void __cfg80211_ibss_joined(struct net_device *dev, const u8 *bssid) if (!wdev->ssid_len) return; - bss = cfg80211_get_bss(wdev->wiphy, NULL, bssid, + bss = cfg80211_get_bss(wdev->wiphy, wdev->channel, bssid, wdev->ssid, wdev->ssid_len, WLAN_CAPABILITY_IBSS, WLAN_CAPABILITY_IBSS); -- 1.8.3.2 -- 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