In this function, il_sta is not expected to be NULL. Add a defensive WARN_ON_ONCE() to catch this unexpected condition and aid debugging. Signed-off-by: Tuo Li --- v3: * Replace plain NULL check with WARN_ON_ONCE() and update subject to better reflect defensive nature of the check. Thanks to Johannes Berg and Stanislaw Gruszka for helpful advice. v2: * Return early for uninitialized STA il data and align D_RATE messages with il3945_rs_tx_status(). Add a wifi: prefix to the patch title. Thanks to Stanislaw Gruszka for the helpful advice. --- drivers/net/wireless/intel/iwlegacy/3945-rs.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/net/wireless/intel/iwlegacy/3945-rs.c b/drivers/net/wireless/intel/iwlegacy/3945-rs.c index 1826c37c090c..463565ce14af 100644 --- a/drivers/net/wireless/intel/iwlegacy/3945-rs.c +++ b/drivers/net/wireless/intel/iwlegacy/3945-rs.c @@ -626,6 +626,9 @@ il3945_rs_get_rate(void *il_r, struct ieee80211_sta *sta, void *il_sta, D_RATE("enter\n"); + if (WARN_ON_ONCE(!il_sta)) + return; + /* Treat uninitialized rate scaling data same as non-existing. */ if (rs_sta && !rs_sta->il) { D_RATE("Rate scaling information not initialized yet.\n"); -- 2.43.0