Search Linux Wireless

Re: [PATCH] rtlwifi: Fix scheduling while atomic error from commit 49f86ec21c01

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

 



Larry Finger <Larry.Finger@xxxxxxxxxxxx> writes:

> Commit 49f86ec21c01 ("rtlwifi: Change long delays to sleeps") was correct
> for most cases; however, driver rtl8192ce calls the affected routines while
> in atomic context. The kernel bug output is as follows:
>
> BUG: scheduling while atomic: wpa_supplicant/627/0x00000002
> [...]
>   [<ffffffff815c2b39>] __schedule+0x899/0xad0
>   [<ffffffff815c2dac>] schedule+0x3c/0x90
>   [<ffffffff815c5bb2>] schedule_hrtimeout_range_clock+0xa2/0x120
>   [<ffffffff810e8b80>] ? hrtimer_init+0x120/0x120
>   [<ffffffff815c5ba6>] ? schedule_hrtimeout_range_clock+0x96/0x120
>   [<ffffffff815c5c43>] schedule_hrtimeout_range+0x13/0x20
>   [<ffffffff815c568f>] usleep_range+0x4f/0x70
>   [<ffffffffa0667218>] rtl_rfreg_delay+0x38/0x50 [rtlwifi]
>   [<ffffffffa06dd0e7>] rtl92c_phy_config_rf_with_headerfile+0xc7/0xe0 [rtl8192ce]
>
> To fix this bug, three of the changes from delay to sleep are reverted.
> Unfortunately, one of the changes involves a delay of 50 msec. The calling
> code will be modified so that this long delay can be avoided; however,
> this change is being pushed now to fix the problem in kernel 4.6.0.
>
> Fixes: 49f86ec21c01 ("rtlwifi: Change long delays to sleeps")
> Reported-by: James Feeney <james@xxxxxxxxxxx>
> Signed-off-by: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
> Cc: James Feeney <james@xxxxxxxxxxx>
> Cc: Stable <stable@xxxxxxxxxxxxxxx> [4.6+]

I'm planning to queue this to 4.7.

-- 
Kalle Valo
--
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 Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux