• Felix Fietkau's avatar
    mt76: fix race condition in station removal · c2a1a5e1
    Felix Fietkau authored
    If there are still pending packets in the tx queue when removing a station,
    it could possibly lead to a call to further attempts to pull packets from
    the mac80211 tx queue after it has already been removed from the scheduling
    list.
    Prevent this from happening by calling synchronize_rcu after deleting the
    wcid pointer before further cleaning up the tx queues.
    To be extra careful, ensure that mtxq->list is always initialized properly.
    Signed-off-by: default avatarFelix Fietkau <nbd@nbd.name>
    c2a1a5e1
tx.c 14.2 KB