Re: iwlwifi aggregation info

Tomas Winkler
2008-07-31T19:16:23Z

On Thu, Jul 31, 2008 at 9:23 PM, Johannes Berg
<johannes@sipsolutions.net> wrote:
> On Thu, 2008-07-31 at 21:14 +0300, Tomas Winkler wrote:
>> On Thu, Jul 31, 2008 at 4:05 PM, Johannes Berg
>> <johannes@sipsolutions.net> wrote:
>> > On Wed, 2008-07-30 at 19:08 +0300, Tomas Winkler wrote:
>> >
>> >> > Can you explain how starvation happens? In what scenarios? With or
>> >> > without aggregation?
>> >>
>> >> for (queue = 0; queue < QD_NUM(hw); queue++)
>> >>
>> >> This always starts 0 prioritize dequeue the first frame. But what we
>> >> need is RR and let HW to prioritize the transmission according AC
>> >
>> > That's from the old code not having real MQ though, right? I'm totally
>> > not concerned about that.
>>
>> Correct. The bottom line is that correct behavior MQ would be shift
>> scheduling decision to the HW.
>
> Right. Which brings us back to the original point, why does the hw need
> to make the scheduling decision between agg and non-agg?

There is no scheduling between aag and legacy queue in the sense of
qdisc .The aggregation need to be taken from single stream as
explained before,
Iwlwifi has HW support for it that that's the whole story we just need
queueing support from the software buffering stopping and starting
queue and last but not least there is a classification just an
extension of the regular AC scheduling. The fairness between legacy
and agg queue must be provided by actually 'not scheduling'
If you don't want to experiment but provide QoS by spec the scheduling
is best to leave to HW.

Thanks
Tomas