> diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h > index 172aeae..d07f7f9 100644 > --- a/net/mac80211/ieee80211_i.h > +++ b/net/mac80211/ieee80211_i.h > @@ -818,6 +818,7 @@ enum txq_info_flags { > IEEE80211_TXQ_STOP, > IEEE80211_TXQ_AMPDU, > IEEE80211_TXQ_NO_AMSDU, > + IEEE80211_TXQ_PAUSED, > }; I think it would be a good idea to either rename the flags, or at least add an explanation somewhere of the difference between a paused and a stopped queue... > /** > @@ -1226,6 +1227,7 @@ struct ieee80211_local { > > struct sk_buff_head pending[IEEE80211_MAX_QUEUES]; > struct tasklet_struct tx_pending_tasklet; > + struct tasklet_struct wake_txqs_tasklet; It's not quite clear to me why a tasklet is needed? Couldn't you just call the ieee80211_wake_txqs() function at the same place where you currently schedule the tasklet? -Toke