• Johannes Berg's avatar
    mac80211: fix last RX rate data consistency · 4f6b1b3d
    Johannes Berg authored
    When storing the last_rate_* values in the RX code, there's nothing
    to guarantee consistency, so a concurrent reader could see, e.g.
    last_rate_idx on the new value, but last_rate_flag still on the old,
    getting completely bogus values in the end.
    
    To fix this, I lifted the sta_stats_encode_rate() function from my
    old rate statistics code, which encodes the entire rate data into a
    single 16-bit value, avoiding the consistency issue.
    Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
    4f6b1b3d
rx.c 105 KB