• Michal Kazior's avatar
    ath10k: wake up queue upon vif creation · 6d2d51ec
    Michal Kazior authored
    Vif's vdev_id is used as queue number. However due
    to the tx pausing design in ath10k it was possible
    for a new interface to be created with its tx
    queue stopped (via ieee80211_stop_queues). This
    could in turn leave the interface inoperable until
    ath10k_mac_tx_unlock() was called.
    
    This problem only affected multi-vif scenarios when
    new interfaces were created some time later after
    other interfaces have been running for some time
    and had Tx queue full at some point prior.
    
    Possible manifestation of the bug was
    authentication timeout for a client vif.
    
    Fixes: 96d828d4 ("ath10k: rework tx queue locking")
    Signed-off-by: default avatarMichal Kazior <michal.kazior@tieto.com>
    Signed-off-by: default avatarKalle Valo <kvalo@qca.qualcomm.com>
    6d2d51ec
mac.c 179 KB