Commit 0845735e authored by Felix Fietkau's avatar Felix Fietkau Committed by John W. Linville

ath9k: fix crash in ath_update_survey_stats

If ah->curchan is uninitialized, the channel index is bogus, which leads
to invalid memory access when the cycle counters are updated.
Signed-off-by: default avatarFelix Fietkau <nbd@openwrt.org>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 2d3fca18
...@@ -182,6 +182,9 @@ static void ath_update_survey_stats(struct ath_softc *sc) ...@@ -182,6 +182,9 @@ static void ath_update_survey_stats(struct ath_softc *sc)
struct ath_cycle_counters *cc = &common->cc_survey; struct ath_cycle_counters *cc = &common->cc_survey;
unsigned int div = common->clockrate * 1000; unsigned int div = common->clockrate * 1000;
if (!ah->curchan)
return;
if (ah->power_mode == ATH9K_PM_AWAKE) if (ah->power_mode == ATH9K_PM_AWAKE)
ath_hw_cycle_counters_update(common); ath_hw_cycle_counters_update(common);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment