Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 12 Aug 2008 16:06:44 GMT
From:      Sam Leffler <sam@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 147238 for review
Message-ID:  <200808121606.m7CG6iZn040518@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=147238

Change 147238 by sam@sam_ebb on 2008/08/12 16:06:36

	using an ifqueue for a holding q when aggregating turns out
	to be a bad idea; remove it

Affected files ...

.. //depot/projects/vap/sys/net80211/ieee80211_freebsd.h#29 edit
.. //depot/projects/vap/sys/net80211/ieee80211_ht.c#28 edit
.. //depot/projects/vap/sys/net80211/ieee80211_ht.h#15 edit

Differences ...

==== //depot/projects/vap/sys/net80211/ieee80211_freebsd.h#29 (text+ko) ====

@@ -148,13 +148,6 @@
 	_AGEQ_ENQUEUE(&ni->ni_savedq, _m, _qlen, _age);		\
 } while (0)
 
-#define	IEEE80211_TAPQ_INIT(_tap) do {				\
-	mtx_init(&(tap)->txa_q.ifq_mtx, "ampdu tx queue", NULL, MTX_DEF); \
-	(_tap)->txa_q.ifq_maxlen = IEEE80211_AGGR_BAWMAX;	\
-} while (0)
-#define	IEEE80211_TAPQ_DESTROY(_tap) \
-	mtx_destroy(&(_tap)->txa_q.ifq_mtx)
-
 #ifndef IF_PREPEND_LIST
 #define _IF_PREPEND_LIST(ifq, mhead, mtail, mcount) do {	\
 	(mtail)->m_nextpkt = (ifq)->ifq_head;			\

==== //depot/projects/vap/sys/net80211/ieee80211_ht.c#28 (text+ko) ====

@@ -818,7 +818,6 @@
 			 * to reclaim any resources it might have allocated.
 			 */
 			ic->ic_addba_stop(ni, &ni->ni_tx_ampdu[i]);
-			IEEE80211_TAPQ_DESTROY(tap);
 			tap->txa_lastsample = 0;
 			tap->txa_avgpps = 0;
 			/* NB: clearing NAK means we may re-send ADDBA */ 
@@ -1384,8 +1383,7 @@
 	/* XXX locking */
 	addba_stop_timeout(tap);
 	if (tap->txa_flags & IEEE80211_AGGR_RUNNING) {
-		/* clear aggregation queue */
-		ieee80211_drain_ifq(&tap->txa_q);
+		/* XXX clear aggregation queue */
 		tap->txa_flags &= ~IEEE80211_AGGR_RUNNING;
 	}
 	tap->txa_attempts = 0;
@@ -1651,7 +1649,6 @@
 	/* XXX locking */
 	if ((tap->txa_flags & IEEE80211_AGGR_SETUP) == 0) {
 		/* do deferred setup of state */
-		IEEE80211_TAPQ_INIT(tap);
 		callout_init(&tap->txa_timer, CALLOUT_MPSAFE);
 		tap->txa_flags |= IEEE80211_AGGR_SETUP;
 	}

==== //depot/projects/vap/sys/net80211/ieee80211_ht.h#15 (text+ko) ====

@@ -56,7 +56,6 @@
 	uint16_t	txa_wnd;	/* BA window size */
 	uint8_t		txa_attempts;	/* # ADDBA requests w/o a response */
 	int		txa_nextrequest;/* soonest to make next ADDBA request */
-	struct ifqueue	txa_q;		/* packet queue */
 	struct callout	txa_timer;
 	void		*txa_private;	/* driver-private storage */
 };



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200808121606.m7CG6iZn040518>