mac80211: Fix ps-qos network latency handling
The ps-qos latency handling is broken. It uses predetermined latency values to select specific dynamic PS timeouts. With common AP configurations, these values overlap with beacon interval and are therefore essentially useless (for network latencies less than the beacon interval, PSM is disabled.) This patch remedies the problem by replacing the predetermined network latency values with one high value (1900ms) which is used to go trigger full psm. For backwards compatibility, the value 2000ms is still mapped to a dynamic ps timeout of 100ms. Currently also the mac80211 internal value for storing user space configured dynamic PSM values is incorrectly in the driver visible ieee80211_conf struct. Move it to the ieee80211_local struct. Signed-off-by: Juuso Oikarinen <juuso.oikarinen@nokia.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
committed by
John W. Linville
parent
685429623f
commit
ff61638105
@ -850,6 +850,12 @@ struct ieee80211_local {
|
||||
struct notifier_block network_latency_notifier;
|
||||
struct notifier_block ifa_notifier;
|
||||
|
||||
/*
|
||||
* The dynamic ps timeout configured from user space via WEXT -
|
||||
* this will override whatever chosen by mac80211 internally.
|
||||
*/
|
||||
int dynamic_ps_forced_timeout;
|
||||
|
||||
int user_power_level; /* in dBm */
|
||||
int power_constr_level; /* in dBm */
|
||||
|
||||
|
Reference in New Issue
Block a user