• Sara Sharon's avatar
    iwlwifi: mvm: fix pending frame counter calculation · 94c3e614
    Sara Sharon authored
    In DQA mode the check whether to decrement the pending frames
    counter relies on the tid status and not on the txq id.
    This may result in an inconsistent state of the pending frames
    counter in case frame is queued on a non aggregation queue but
    with this TID, and will be followed by a failure to remove the
    station and later on SYSASSERT 0x3421 when trying to remove the
    MAC.
    Such frames are for example bar and qos NDPs.
    Fix it by aligning the condition of incrementing the counter
    with the condition of decrementing it - rely on TID state for
    DQA mode.
    Also, avoid internal error like this affecting station removal
    for DQA mode - since we can know for sure it is an internal
    error.
    
    Fixes: cf961e16 ("iwlwifi: mvm: support dqa-mode agg on non-shared queue")
    Signed-off-by: default avatarSara Sharon <sara.sharon@intel.com>
    Signed-off-by: default avatarLuca Coelho <luciano.coelho@intel.com>
    94c3e614
sta.c 93.4 KB