PERFORCE change 69340 for review
Sam Leffler
sam at FreeBSD.org
Wed Jan 19 17:18:20 PST 2005
http://perforce.freebsd.org/chv.cgi?CH=69340
Change 69340 by sam at sam_ebb on 2005/01/20 01:17:33
when a station is removed due to inactivity remove them from
the table so they aren't considered again
Affected files ...
.. //depot/projects/wifi/sys/net80211/ieee80211_node.c#46 edit
Differences ...
==== //depot/projects/wifi/sys/net80211/ieee80211_node.c#46 (text+ko) ====
@@ -1698,6 +1698,7 @@
void
ieee80211_node_leave(struct ieee80211com *ic, struct ieee80211_node *ni)
{
+ struct ieee80211_node_table *nt = ni->ni_table;
IEEE80211_DPRINTF(ic, IEEE80211_MSG_ASSOC | IEEE80211_MSG_DEBUG,
"[%s] station with aid %d leaves\n",
@@ -1737,8 +1738,18 @@
*/
ieee80211_sta_leave(ic, ni);
done:
- ni->ni_inact_reload = ic->ic_inact_init; /* just in case */
- ieee80211_free_node(ni);
+ /*
+ * Remove the node from any table it's recorded in and
+ * drop the caller's reference. Removal from the table
+ * is important to insure the node is not reprocessed
+ * for inactivity.
+ */
+ if (nt != NULL) {
+ IEEE80211_NODE_LOCK(nt);
+ node_reclaim(nt, ni);
+ IEEE80211_NODE_UNLOCK(nt);
+ } else
+ ieee80211_free_node(ni);
}
u_int8_t
More information about the p4-projects
mailing list