Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
rtlwifi: Fix scheduling while atomic bug
Kernel commits 41affd5 and 6539306 changed the locking in rtl_lps_leave() from a spinlock to a mutex by doing the calls indirectly from a work queue to reduce the time that interrupts were disabled. This change was fine for most systems; however a scheduling while atomic bug was reported in https://bugzilla.redhat.com/show_bug.cgi?id=903881. The backtrace indicates that routine rtl_is_special(), which calls rtl_lps_leave() in three places was entered in atomic context. These direct calls are replaced by putting a request on the appropriate work queue. Signed-off-by: Larry Finger <[email protected]> Reported-and-tested-by: Nathaniel Doherty <[email protected]> Cc: Nathaniel Doherty <[email protected]> Cc: Stanislaw Gruszka <[email protected]> Cc: Stable <[email protected]> Signed-off-by: John W. Linville <[email protected]>
- Loading branch information