• Sujith Manoharan's avatar
    mac80211: Fix IBSS disconnect · d4c80d9d
    Sujith Manoharan authored
    Currently, when a station leaves an IBSS network, the
    corresponding BSS is not dropped from cfg80211 if there are
    other active stations in the network. But, the small
    window that is present when trying to determine a station's
    status based on IEEE80211_IBSS_MERGE_INTERVAL introduces
    a race.
    
    Instead of trying to keep the BSS, always remove it when
    leaving an IBSS network. There is not much benefit to retain
    the BSS entry since it will be added with a subsequent join
    operation.
    
    This fixes an issue where a dangling BSS entry causes ath9k
    to wait for a beacon indefinitely.
    
    Cc: <stable@vger.kernel.org>
    Reported-by: default avatarSimon Wunderlich <sw@simonwunderlich.de>
    Signed-off-by: default avatarSujith Manoharan <c_manoha@qca.qualcomm.com>
    Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
    d4c80d9d
ibss.c 47 KB