diff --git a/net/wireless/mlme.c b/net/wireless/mlme.c
index 525e8e247b30e6f921c76a81314fe2bd9d22f110..b44b6c024c14c7926ea8866f1ff834d03f2280ce 100644
--- a/net/wireless/mlme.c
+++ b/net/wireless/mlme.c
@@ -198,7 +198,7 @@ static void __cfg80211_send_disassoc(struct net_device *dev,
 		return;
 
 	if (wdev->current_bss &&
-	    memcmp(wdev->current_bss, bssid, ETH_ALEN) == 0) {
+	    memcmp(wdev->current_bss->pub.bssid, bssid, ETH_ALEN) == 0) {
 		for (i = 0; i < MAX_AUTH_BSSES; i++) {
 			if (wdev->authtry_bsses[i] || wdev->auth_bsses[i])
 				continue;