Ticket #1069: node_saveq_drain_crash_fix.diff
| File node_saveq_drain_crash_fix.diff, 0.8 kB (added by rozteck@interia.pl, 2 years ago) |
|---|
-
madwifi-svn-r1860/net80211/ieee80211_power.c
old new 110 110 ieee80211_node_saveq_drain(struct ieee80211_node *ni) 111 111 { 112 112 struct sk_buff *skb; 113 int qlen; 114 113 int qlen = 0; 114 115 if (ni == NULL) { 116 printk("ieee80211_node_saveq_drain: ni is null!"); 117 return qlen; 118 } 119 115 120 IEEE80211_NODE_SAVEQ_LOCK(ni); 116 121 qlen = skb_queue_len(&ni->ni_savedq); 117 122 while ((skb = __skb_dequeue(&ni->ni_savedq)) != NULL) { 118 ieee80211_free_node(ni); 119 dev_kfree_skb_any(skb); 123 if (ni != NULL) 124 ieee80211_free_node(ni); 125 if (skb != NULL) 126 dev_kfree_skb_any(skb); 120 127 } 121 128 IEEE80211_NODE_SAVEQ_UNLOCK(ni); 122 129
