linux/drivers/net/wireless/rtlwifi
Larry Finger 664899786c rtlwifi: rtl8192cu: Fix schedule while atomic bug splat
When run at debug 3 or higher, rtl8192cu reports a BUG as follows:

BUG: scheduling while atomic: kworker/u:0/5281/0x00000002
INFO: lockdep is turned off.
Modules linked in: rtl8192cu rtl8192c_common rtlwifi fuse af_packet bnep bluetooth b43 mac80211 cfg80211 ipv6 snd_hda_codec_conexant kvm_amd k
vm snd_hda_intel snd_hda_codec bcma rng_core snd_pcm ssb mmc_core snd_seq snd_timer snd_seq_device snd i2c_nforce2 sr_mod pcmcia forcedeth i2c_core soundcore
 cdrom sg serio_raw k8temp hwmon joydev ac battery pcmcia_core snd_page_alloc video button wmi autofs4 ext4 mbcache jbd2 crc16 thermal processor scsi_dh_alua
 scsi_dh_hp_sw scsi_dh_rdac scsi_dh_emc scsi_dh ata_generic pata_acpi pata_amd [last unloaded: rtlwifi]
Pid: 5281, comm: kworker/u:0 Tainted: G        W    3.8.0-wl+ #119
Call Trace:
 [<ffffffff814531e7>] __schedule_bug+0x62/0x70
 [<ffffffff81459af0>] __schedule+0x730/0xa30
 [<ffffffff81326e49>] ? usb_hcd_link_urb_to_ep+0x19/0xa0
 [<ffffffff8145a0d4>] schedule+0x24/0x70
 [<ffffffff814575ec>] schedule_timeout+0x18c/0x2f0
 [<ffffffff81459ec0>] ? wait_for_common+0x40/0x180
 [<ffffffff8133f461>] ? ehci_urb_enqueue+0xf1/0xee0
 [<ffffffff810a579d>] ? trace_hardirqs_on+0xd/0x10
 [<ffffffff81459f65>] wait_for_common+0xe5/0x180
 [<ffffffff8107d1c0>] ? try_to_wake_up+0x2d0/0x2d0
 [<ffffffff8145a08e>] wait_for_completion_timeout+0xe/0x10
 [<ffffffff8132ab1c>] usb_start_wait_urb+0x8c/0x100
 [<ffffffff8132adf9>] usb_control_msg+0xd9/0x130
 [<ffffffffa057dd8d>] _usb_read_sync+0xcd/0x140 [rtlwifi]
 [<ffffffffa057de0e>] _usb_read32_sync+0xe/0x10 [rtlwifi]
 [<ffffffffa04b0555>] rtl92cu_update_hal_rate_table+0x1a5/0x1f0 [rtl8192cu]

The cause is a synchronous read from routine rtl92cu_update_hal_rate_table().
The resulting output is not critical, thus the debug statement is
deleted.

Reported-by: Jussi Kivilinna <jussi.kivilinna@mbnet.fi>
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Cc: Stable <stable@vger.kernel.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2013-03-08 15:58:07 -05:00
..
rtl8192c rtlwifi: rtl8192c: Fix W=1 warning 2013-02-01 14:27:26 -05:00
rtl8192ce mac80211: stop toggling IEEE80211_HT_CAP_SUP_WIDTH_20_40 2013-02-15 09:41:30 +01:00
rtl8192cu rtlwifi: rtl8192cu: Fix schedule while atomic bug splat 2013-03-08 15:58:07 -05:00
rtl8192de mac80211: stop toggling IEEE80211_HT_CAP_SUP_WIDTH_20_40 2013-02-15 09:41:30 +01:00
rtl8192se mac80211: stop toggling IEEE80211_HT_CAP_SUP_WIDTH_20_40 2013-02-15 09:41:30 +01:00
rtl8723ae Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2013-02-18 13:47:13 -05:00
base.c Merge branch 'for-john' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next 2013-02-15 13:59:53 -05:00
base.h rtlwifi: rtl8192ce: rtl8192cu: rtl8192se: rtl81723ae: Turn on building of the new driver 2012-11-14 14:55:31 -05:00
cam.c rtlwifi: use eth_zero_addr() to assign zero address 2012-11-16 14:29:07 -05:00
cam.h rtlwifi: Update copyright dates 2012-01-24 14:08:37 -05:00
core.c mac80211: split TX aggregation stop action 2013-01-03 13:01:42 +01:00
core.h rtlwifi: Convert to asynchronous firmware load 2012-01-30 15:48:50 -05:00
debug.c rtlwifi: Move pr_fmt macros to a single location 2012-01-30 15:48:23 -05:00
debug.h rtlwifi: Modify files for addition of rtl8723ae 2012-11-14 14:55:30 -05:00
efuse.c wireless: Remove casts to same type 2012-06-06 09:31:33 -07:00
efuse.h rtlwifi: Update copyright dates 2012-01-24 14:08:37 -05:00
Kconfig rtlwifi: Rework Kconfig 2013-02-14 14:24:06 -05:00
Makefile rtlwifi: rtl8192ce: rtl8192cu: rtl8192se: rtl81723ae: Turn on building of the new driver 2012-11-14 14:55:31 -05:00
pci.c rtlwifi: Fix warning for unchecked pci_map_single() call 2013-01-02 14:38:31 -05:00
pci.h rtlwifi: remove __dev* attributes 2012-12-06 15:06:15 -05:00
ps.c wireless: Remove casts to same type 2012-06-06 09:31:33 -07:00
ps.h rtlwifi: Update copyright dates 2012-01-24 14:08:37 -05:00
rc.c Merge branch 'for-john' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next 2013-02-15 13:59:53 -05:00
rc.h rtlwifi: Update copyright dates 2012-01-24 14:08:37 -05:00
regd.c wireless: make the reg_notifier() void 2013-01-14 11:32:44 +01:00
regd.h wireless: make the reg_notifier() void 2013-01-14 11:32:44 +01:00
stats.c rtlwifi: rtl8192ce: rtl8192cu: rtl8192se: rtl81723ae: Turn on building of the new driver 2012-11-14 14:55:31 -05:00
stats.h rtlwifi: Modify files for addition of rtl8723ae 2012-11-14 14:55:30 -05:00
usb.c rtlwifi: usb: allocate URB control message setup_packet and data buffer separately 2013-02-18 15:30:40 -05:00
usb.h rtlwifi: rtl8192cu: Fix NULL dereference BUG when using new_id 2013-02-08 14:51:34 -05:00
wifi.h rtlwifi: Fix many compile warnings when using W=1 2013-02-01 14:27:25 -05:00