Skip to content
  • Juuso Oikarinen's avatar
    mac80211: Fix sta->last_tx_rate setting with no-op rate control devices · 0c869808
    Juuso Oikarinen authored
    
    
    The sta->last_tx_rate is traditionally updated just before transmitting a
    frame based on information from the rate control algorithm. However, for
    hardware drivers with IEEE80211_HW_HAS_RATE_CONTROL this is not performed,
    as the rate control algorithm is not executed, and because the used rate is
    not known before the frame has actually been transmitted.
    
    This causes atleast a fixed 1Mb/s to be reported to user space. A few other
    instances of code also rely on this information.
    
    Fix this by setting the sta->last_tx_rate in tx_status handling. There, look
    for last rates entry set by the driver, and use that as value for
    sta->last_tx_rate.
    
    Signed-off-by: default avatarJuuso Oikarinen <juuso.oikarinen@nokia.com>
    Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
    0c869808