diff options
author | Larry Finger <Larry.Finger@lwfinger.net> | 2014-09-22 09:39:18 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2014-09-26 17:22:27 -0400 |
commit | fd09ff958777cf583d7541f180991c0fc50bd2f7 (patch) | |
tree | 80822356b8fd7c16d52fd1b2adf38c3c6b5d4ada /drivers/net/wireless/rtlwifi | |
parent | 560e334dbd9907ecdd25318fbdb33179c5d5a3bd (diff) | |
download | linux-fd09ff958777cf583d7541f180991c0fc50bd2f7.tar.gz linux-fd09ff958777cf583d7541f180991c0fc50bd2f7.tar.bz2 linux-fd09ff958777cf583d7541f180991c0fc50bd2f7.zip |
rtlwifi: Remove extra workqueue for enter/leave power state
When the rtlwifi family of drivers was converted to use a workqueue when
entering or leaving power save mode (commits a269913c52, a5ffbe0a19,
41affd5286, b9116b9a2b, and 6539306b2c), the code began scheduling work from
the callback routine of a different workqueue with a resulting increase in
overhead.
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/rtlwifi')
-rw-r--r-- | drivers/net/wireless/rtlwifi/base.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/drivers/net/wireless/rtlwifi/base.c b/drivers/net/wireless/rtlwifi/base.c index 93bb384eb001..3b599b6ffbdf 100644 --- a/drivers/net/wireless/rtlwifi/base.c +++ b/drivers/net/wireless/rtlwifi/base.c @@ -1401,12 +1401,9 @@ void rtl_watchdog_wq_callback(void *data) if (((rtlpriv->link_info.num_rx_inperiod + rtlpriv->link_info.num_tx_inperiod) > 8) || (rtlpriv->link_info.num_rx_inperiod > 2)) - rtlpriv->enter_ps = true; + rtl_lps_enter(hw); else - rtlpriv->enter_ps = false; - - /* LeisurePS only work in infra mode. */ - schedule_work(&rtlpriv->works.lps_change_work); + rtl_lps_leave(hw); } rtlpriv->link_info.num_rx_inperiod = 0; |