diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c index e71b43aa1af777bee1eebbb9cd7d061fe3c07ec7..70f35b683eef7a2e6fd3d44ef861742022c5874e 100644 --- a/net/wireless/nl80211.c +++ b/net/wireless/nl80211.c @@ -14056,6 +14056,8 @@ static int nl80211_set_coalesce(struct sk_buff *skb, struct genl_info *info) error: for (i = 0; i < new_coalesce.n_rules; i++) { tmp_rule = &new_coalesce.rules[i]; + if (!tmp_rule) + continue; for (j = 0; j < tmp_rule->n_patterns; j++) kfree(tmp_rule->patterns[j].mask); kfree(tmp_rule->patterns);