diff options
author | Larry Finger <Larry.Finger@lwfinger.net> | 2013-03-25 07:06:41 +0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2013-04-02 00:20:00 +0400 |
commit | a269913c52ad37952a4d9953bb6d748f7299c304 (patch) | |
tree | 8f15190009b592607ea25fd6971cad4ef8dc55a8 /drivers/net/wireless/rtlwifi/wifi.h | |
parent | 3a16b41240aa893b2c397ea3bd07d86e95e7694b (diff) | |
download | linux-a269913c52ad37952a4d9953bb6d748f7299c304.tar.xz |
rtlwifi: Rework rtl_lps_leave() and rtl_lps_enter() to use work queue
In commit a5ffbe0, some of the calls to rtl_lps_leave() were switched
to be called from a work queue to avoid a scheduling while atomic bug.
This patch converts the remaining calls to use the work queue. In
addition, the call to rtl_lps_enter() is also switched to the work
queue. None of these newly converted calls had triggered the bug (yet),
but this change make all of them fit a single pattern.
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Cc: jcheung@suse.com
Cc: machen@suse.com
Cc: mmarek@suse.cz
Cc: zhiyuan_yang@realsil.com.cn
Cc: page_he@realsil.com.cn
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/rtlwifi/wifi.h')
-rw-r--r-- | drivers/net/wireless/rtlwifi/wifi.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/wireless/rtlwifi/wifi.h b/drivers/net/wireless/rtlwifi/wifi.h index 7ec95cb1ee1b..70193a519547 100644 --- a/drivers/net/wireless/rtlwifi/wifi.h +++ b/drivers/net/wireless/rtlwifi/wifi.h @@ -1796,7 +1796,7 @@ struct rtl_works { struct delayed_work ps_rfon_wq; struct delayed_work fwevt_wq; - struct work_struct lps_leave_work; + struct work_struct lps_change_work; }; struct rtl_debug { @@ -1966,6 +1966,7 @@ struct rtl_priv { bool bt_operation_on; }; }; + bool enter_ps; /* true when entering PS */ /*This must be the last item so that it points to the data allocated |