Search Linux Wireless

Re: [PATCH 10/12] ath9k: use software queues for un-aggregated data packets

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2013-08-06 10:44 AM, Sujith Manoharan wrote:
> Felix Fietkau wrote:
>> +		aggr = !!(tx_info->flags & IEEE80211_TX_CTL_AMPDU);
>> +		if ((aggr && txq->axq_ampdu_depth >= ATH_AGGR_MIN_QDEPTH) ||
>> +		    (!aggr && txq->axq_depth >= ATH_NON_AGGR_MIN_QDEPTH))
>> +			break;
>> +
>> +		ath_set_rates(tid->an->vif, tid->an->sta, bf);
>> +		if (aggr)
>> +			last = ath_tx_form_aggr(sc, txq, tid, &bf_q, bf,
>> +						tid_q, &aggr_len);
>> +		else
>> +			ath_tx_form_burst(sc, txq, tid, &bf_q, bf, tid_q);
>> +
>> +		if (list_empty(&bf_q))
>> +			return;
> 
> Handling non-AMPDU and AMPDU packets in the same path makes the code hard
> to follow. Since a TID can either have aggregated or unaggregated packets,
> why not separate the logic early, maybe in the schedule() function ?
When aggregation is enabled on a TID, it can still hold some
non-aggregated packets that need to be sent out first until it starts
forming A-MPDUs. I think separating this early doesn't work.

- 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




[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux