On 2013-08-06 9:45 AM, Sujith Manoharan wrote: > Felix Fietkau wrote: >> + tx_info = IEEE80211_SKB_CB(skb); >> + tx_info->flags &= ~IEEE80211_TX_CTL_CLEAR_PS_FILT; > Why is the PS filter flag cleared here ? Because the previous value doesn't matter here. With software scheduling, clearing the ps filter is triggered via tid->ac->clear_ps_filter, and that is used to set the flag when a frame is put into the hardware queue. The IEEE80211_TX_CTL_CLEAR_PS_FILT is checked whenever a frame enters the tid queue, and if it's set, tid->ac->clear_ps_filter gets set. That way it doesn't have to loop the entire tid traffic up to the new frame through the hw queue as filtered until the destination index gets cleared. >> - txtid->paused = true; >> + txtid->paused = false; > > Why change this ? When going from aggregated to un-aggregated, the TID still needs to be scheduled, and txtid->paused == true would prevent that. - Felix -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html