Search Linux Wireless

Re: [PATCH] mac80211: add ieee80211_set_dyn_ps_timeout()

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

 



On Mon, Sep 19, 2011 at 6:41 PM, Kalle Valo <kvalo@xxxxxxxxxx> wrote:
> Luciano Coelho <coelho@xxxxxx> writes:
>
>> On Sun, 2011-09-18 at 15:03 +0300, Eliad Peller wrote:
>>> In some cases the driver might want to change the
>>> default dynamic ps timeout (e.g. coex activity adds
>>> latency to the rx/tx path, which might result in
>>> redundant psm entrance).
>>>
>>> Introduce a new ieee80211_set_dyn_ps_timeout() function
>>> to let low-level drivers change the default timeout.
>>>
>>> Signed-off-by: Eliad Peller <eliad@xxxxxxxxxx>
>>> ---
>>
>>
>> Let's see what Johannes is going to say about this change in mac80211,
>> but IIRC this timeout used to exist with WEXT, but it was not
>> implemented in nl80211.  We (at Nokia, probably Juuso) tried to
>> implement it a long time ago, but after some discussions with Johannes,
>> it was decided that this value wouldn't be settable from userspace at
>> least.  I don't know if it was considered setting it from the driver
>> side, though.
>
> My first thought about this was: "This is so wrong." :)
>
yeah, mine too :)

> So we now have the wext interface for setting the timeout, we also use
> the PM QoS framework to set it and with this patch even from drivers
> can set it. That's quite a mess.
>
> What are these "some cases" referred above? I'm just worried that this
> is just a workaround for an issue and adding the extra complexity is a
> high cost just to workaround something. Please remember that mac80211
> power save is a big problem already now.
>
AFAIU from the coex guys, the scenario is something like this:
upon coex activity, the fw might delay its rx and tx paths. this means
that the fw might get a frame within the 100ms of the dyn ps, but
delay its processing and pass it up to the driver only later.
this will cause redundant psm enter (after 100ms) and psm exit (after
the fw passed the packet).
i'm not sure about the exact effect during coex operation, but
eventually these psm enter/exit affect the throughput.

another point here, is that during a specific period (during auto_mode
on), there might or might not be coex activity. thus, we can't just
disable dyn_ps, as it will hurt throughput (when there is no coex
activity).

bottom line - i'm not sure about all the details, but according to
their tests - it does improve the throughput.
(i can try getting better details if you have additional questions)

Eliad.
--
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 Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux