• F
    ath9k: fix pending tx frames accounting · d954cd77
    Felix Fietkau 提交于
    Packets originally buffered for the regular hardware tx queues can end
    up being transmitted through the U-APSD queue (via PS-Poll or U-APSD).
    When packets are dropped due to retransmit failures, the pending frames
    counter is not always updated properly.
    Fix this by keeping track of the queue that a frame was accounted for in
    the ath_frame_info struct, and using that on completion to decide
    whether the counter should be updated.
    This fixes some spurious transmit queue hangs.
    
    Cc: stable@vger.kernel.org
    Signed-off-by: NFelix Fietkau <nbd@openwrt.org>
    Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
    d954cd77
xmit.c 71.1 KB