Revert "staging:r8188eu: Use lib80211 to encrypt (CCMP) tx frames"
On a Raven Ridge system with a r8188eu usb wifi device
commit
515ce733e86e ("staging:r8188eu: Use lib80211 to encrypt (CCMP) tx frames")
is causing two bugs and a warning in dmesg:
[ 22.618465] BUG: scheduling while atomic: NetworkManager/489/0x00000202
[ 22.618466] Modules linked in: amdkfd amd_iommu_v2 amdgpu nls_iso8859_1 nls_cp437 vfat fat r8188eu(C) edac_mce_amd
chash kvm_amd gpu_sched i2c_algo_bit ccp ttm rng_core lib80211 kvm snd_hda_codec_realtek snd_hda_codec_generic cfg80211
snd_hda_codec_hdmi snd_hda_intel input_leds drm_kms_helper irqbypass snd_hda_codec crct10dif_pclmul crc32_pclmul
ghash_clmulni_intel pcbc rfkill led_class mousedev joydev wmi_bmof snd_hda_core drm aesni_intel snd_hwdep aes_x86_64
crypto_simd cryptd glue_helper snd_pcm pcspkr sp5100_tco snd_timer r8169 k10temp agpgart i2c_piix4 snd mii syscopyarea
sysfillrect sysimgblt fb_sys_fops soundcore rtc_cmos evdev gpio_amdpt pinctrl_amd mac_hid wmi pcc_cpufreq acpi_cpufreq
crypto_user ip_tables x_tables ext4 crc32c_generic crc16 mbcache jbd2 fscrypto hid_generic usbhid hid sd_mod
[ 22.618549] ahci xhci_pci libahci xhci_hcd crc32c_intel libata usbcore scsi_mod usb_common
[ 22.618554] Preemption disabled at:
[ 22.618558] [<
ffffffff94600954>] __dev_queue_xmit+0x74/0x910
[ 22.618561] CPU: 3 PID: 489 Comm: NetworkManager Tainted: G C 4.18.0-rc7-staging+ #14
[ 22.618562] Hardware name: Gigabyte Technology Co., Ltd. A320M-S2H/A320M-S2H-CF, BIOS F23d 04/17/2018
[ 22.618563] Call Trace:
[ 22.618569] dump_stack+0x5c/0x80
[ 22.618571] ? __dev_queue_xmit+0x74/0x910
[ 22.618574] __schedule_bug.cold.14+0x82/0x9b
[ 22.618576] __schedule+0x6fd/0x8b0
[ 22.618578] ? enqueue_task_fair+0xc3/0x730
[ 22.618580] schedule+0x32/0x90
[ 22.618581] schedule_timeout+0x311/0x4a0
[ 22.618583] ? _raw_spin_unlock_irqrestore+0x20/0x40
[ 22.618585] ? try_to_wake_up+0x231/0x480
[ 22.618586] wait_for_common+0x15f/0x190
[ 22.618588] ? wake_up_q+0x70/0x70
[ 22.618597] ? rtw_aes_encrypt+0x26f/0x290 [r8188eu]
[ 22.618598] wait_for_completion_killable+0x19/0x30
[ 22.618601] call_usermodehelper_exec+0x115/0x160
[ 22.618603] __request_module+0x1ac/0x3e2
[ 22.618606] ? netlink_broadcast_filtered+0x142/0x400
[ 22.618607] ? netlink_broadcast+0xf/0x20
[ 22.618615] rtw_aes_encrypt+0x26f/0x290 [r8188eu]
[ 22.618622] ? rtw_get_stainfo+0xe6/0x130 [r8188eu]
[ 22.618629] rtw_xmitframe_coalesce+0x950/0xb00 [r8188eu]
[ 22.618631] ? _raw_spin_lock_irqsave+0x25/0x50
[ 22.618638] rtw_hal_xmit+0x83/0x130 [r8188eu]
[ 22.618645] rtw_xmit+0x258/0x5d0 [r8188eu]
[ 22.618652] rtw_xmit_entry+0xe8/0x2e7 [r8188eu]
[ 22.618654] dev_hard_start_xmit+0xa5/0x240
[ 22.618657] sch_direct_xmit+0x150/0x340
[ 22.618658] __dev_queue_xmit+0x2f6/0x910
[ 22.618661] packet_sendmsg+0x948/0x15a7
[ 22.618663] ? attach_to_pi_owner+0x38/0x180
[ 22.618666] sock_sendmsg+0x33/0x40
[ 22.618668] __sys_sendto+0xee/0x160
[ 22.618670] ? memzero_explicit+0xa/0x10
[ 22.618672] ? urandom_read+0x120/0x270
[ 22.618675] __x64_sys_sendto+0x24/0x30
[ 22.618677] do_syscall_64+0x5b/0x170
[ 22.618678] entry_SYSCALL_64_after_hwframe+0x44/0xa9
[ 22.618680] RIP: 0033:0x7f0942790c12
[ 22.618680] Code: 48 83 ec 18 44 89 4c 24 08 e8 9a f5 ff ff 44 8b 4c 24 08 4d 89 f8 45 89 f2 89 c5 4c 89 ea 4c 89 e6
89 df b8 2c 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 3a 89 ef 48 89 44 24 08 e8 ca f5 ff ff 48 8b
[ 22.618700] RSP: 002b:
00007ffe2051be30 EFLAGS:
00000293 ORIG_RAX:
000000000000002c
[ 22.618701] RAX:
ffffffffffffffda RBX:
0000000000000011 RCX:
00007f0942790c12
[ 22.618702] RDX:
0000000000000148 RSI:
0000559278761700 RDI:
0000000000000011
[ 22.618703] RBP:
0000000000000000 R08:
00005592787aa860 R09:
0000000000000014
[ 22.618703] R10:
0000000000000000 R11:
0000000000000293 R12:
0000559278761700
[ 22.618704] R13:
0000000000000148 R14:
0000000000000000 R15:
00005592787aa860
[ 22.620488] lib80211_crypt: registered algorithm 'CCMP'
[ 22.620735] ------------[ cut here ]------------
[ 22.620738] DEBUG_LOCKS_WARN_ON(val > preempt_count())
[ 22.620744] WARNING: CPU: 3 PID: 489 at kernel/sched/core.c:3246 preempt_count_sub+0x5a/0x90
[ 22.620749] Modules linked in: lib80211_crypt_ccmp amdkfd amd_iommu_v2 amdgpu nls_iso8859_1 nls_cp437 vfat fat
r8188eu(C) edac_mce_amd chash kvm_amd gpu_sched i2c_algo_bit ccp ttm rng_core lib80211 kvm snd_hda_codec_realtek
snd_hda_codec_generic cfg80211 snd_hda_codec_hdmi snd_hda_intel input_leds drm_kms_helper irqbypass snd_hda_codec
crct10dif_pclmul crc32_pclmul ghash_clmulni_intel pcbc rfkill led_class mousedev joydev wmi_bmof snd_hda_core drm
aesni_intel snd_hwdep aes_x86_64 crypto_simd cryptd glue_helper snd_pcm pcspkr sp5100_tco snd_timer r8169 k10temp
agpgart i2c_piix4 snd mii syscopyarea sysfillrect sysimgblt fb_sys_fops soundcore rtc_cmos evdev gpio_amdpt pinctrl_amd
mac_hid wmi pcc_cpufreq acpi_cpufreq crypto_user ip_tables x_tables ext4 crc32c_generic crc16 mbcache jbd2 fscrypto
hid_generic
[ 22.620792] usbhid hid sd_mod ahci xhci_pci libahci xhci_hcd crc32c_intel libata usbcore scsi_mod usb_common
[ 22.620803] CPU: 3 PID: 489 Comm: NetworkManager Tainted: G WC 4.18.0-rc7-staging+ #14
[ 22.620804] Hardware name: Gigabyte Technology Co., Ltd. A320M-S2H/A320M-S2H-CF, BIOS F23d 04/17/2018
[ 22.620808] RIP: 0010:preempt_count_sub+0x5a/0x90
[ 22.620809] Code: 14 f7 6b c3 e8 57 89 2d 00 85 c0 74 f6 8b 15 55 6a 5a 01 85 d2 75 ec 48 c7 c6 2e 01 e7 94 48 c7 c7
db b2 e5 94 e8 90 77 fd ff <0f> 0b c3 84 d2 75 c9 e8 2a 89 2d 00 85 c0 74 c9 8b 05 28 6a 5a 01
[ 22.620842] RSP: 0018:
ffffa1904133bc48 EFLAGS:
00010286
[ 22.620844] RAX:
0000000000000000 RBX:
0000000000000000 RCX:
0000000000000001
[ 22.620846] RDX:
0000000080000001 RSI:
ffffffff94e82606 RDI:
00000000ffffffff
[ 22.620847] RBP:
ffff8eb4449eac00 R08:
0000001af4246984 R09:
00000000000003f1
[ 22.620849] R10:
ffffffff955f7700 R11:
0000000000000000 R12:
ffff8eb4449eacac
[ 22.620850] R13:
ffff8eb4565da800 R14:
ffff8eb453ca2000 R15:
0000000000000003
[ 22.620852] FS:
00007f0944d69000(0000) GS:
ffff8eb45ecc0000(0000) knlGS:
0000000000000000
[ 22.620853] CS: 0010 DS: 0000 ES: 0000 CR0:
0000000080050033
[ 22.620854] CR2:
00007ffe20518fa8 CR3:
0000000207844000 CR4:
00000000003406e0
[ 22.620855] Call Trace:
[ 22.620859] _raw_spin_unlock+0x16/0x30
[ 22.620862] sch_direct_xmit+0x178/0x340
[ 22.620866] __dev_queue_xmit+0x2f6/0x910
[ 22.620870] packet_sendmsg+0x948/0x15a7
[ 22.620873] ? attach_to_pi_owner+0x38/0x180
[ 22.620877] sock_sendmsg+0x33/0x40
[ 22.620880] __sys_sendto+0xee/0x160
[ 22.620885] ? memzero_explicit+0xa/0x10
[ 22.620887] ? urandom_read+0x120/0x270
[ 22.620891] __x64_sys_sendto+0x24/0x30
[ 22.620893] do_syscall_64+0x5b/0x170
[ 22.620896] entry_SYSCALL_64_after_hwframe+0x44/0xa9
[ 22.620898] RIP: 0033:0x7f0942790c12
[ 22.620899] Code: 48 83 ec 18 44 89 4c 24 08 e8 9a f5 ff ff 44 8b 4c 24 08 4d 89 f8 45 89 f2 89 c5 4c 89 ea 4c 89 e6
89 df b8 2c 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 3a 89 ef 48 89 44 24 08 e8 ca f5 ff ff 48 8b
[ 22.620925] RSP: 002b:
00007ffe2051be30 EFLAGS:
00000293 ORIG_RAX:
000000000000002c
[ 22.620928] RAX:
ffffffffffffffda RBX:
0000000000000011 RCX:
00007f0942790c12
[ 22.620929] RDX:
0000000000000148 RSI:
0000559278761700 RDI:
0000000000000011
[ 22.620930] RBP:
0000000000000000 R08:
00005592787aa860 R09:
0000000000000014
[ 22.620931] R10:
0000000000000000 R11:
0000000000000293 R12:
0000559278761700
[ 22.620933] R13:
0000000000000148 R14:
0000000000000000 R15:
00005592787aa860
[ 22.620936] ---[ end trace
ecf9299fa6cc3176 ]---
[ 22.620940] BUG: using __this_cpu_read() in preemptible [
00000000] code: NetworkManager/489
[ 22.620942] caller is __local_bh_enable_ip+0x50/0x80
[ 22.620945] CPU: 3 PID: 489 Comm: NetworkManager Tainted: G WC 4.18.0-rc7-staging+ #14
[ 22.620946] Hardware name: Gigabyte Technology Co., Ltd. A320M-S2H/A320M-S2H-CF, BIOS F23d 04/17/2018
[ 22.620947] Call Trace:
[ 22.620950] dump_stack+0x5c/0x80
[ 22.620955] check_preemption_disabled.cold.0+0x46/0x51
[ 22.620958] __local_bh_enable_ip+0x50/0x80
[ 22.620961] __dev_queue_xmit+0x450/0x910
[ 22.620964] packet_sendmsg+0x948/0x15a7
[ 22.620967] ? attach_to_pi_owner+0x38/0x180
[ 22.620971] sock_sendmsg+0x33/0x40
[ 22.620973] __sys_sendto+0xee/0x160
[ 22.620976] ? memzero_explicit+0xa/0x10
[ 22.620978] ? urandom_read+0x120/0x270
[ 22.620982] __x64_sys_sendto+0x24/0x30
[ 22.620984] do_syscall_64+0x5b/0x170
[ 22.620986] entry_SYSCALL_64_after_hwframe+0x44/0xa9
[ 22.620990] RIP: 0033:0x7f0942790c12
[ 22.620991] Code: 48 83 ec 18 44 89 4c 24 08 e8 9a f5 ff ff 44 8b 4c 24 08 4d 89 f8 45 89 f2 89 c5 4c 89 ea 4c 89 e6
89 df b8 2c 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 3a 89 ef 48 89 44 24 08 e8 ca f5 ff ff 48 8b
[ 22.621017] RSP: 002b:
00007ffe2051be30 EFLAGS:
00000293 ORIG_RAX:
000000000000002c
[ 22.621020] RAX:
ffffffffffffffda RBX:
0000000000000011 RCX:
00007f0942790c12
[ 22.621021] RDX:
0000000000000148 RSI:
0000559278761700 RDI:
0000000000000011
[ 22.621024] RBP:
0000000000000000 R08:
00005592787aa860 R09:
0000000000000014
[ 22.621025] R10:
0000000000000000 R11:
0000000000000293 R12:
0000559278761700
[ 22.621026] R13:
0000000000000148 R14:
0000000000000000 R15:
00005592787aa860
Revert the commit fixes the issues and dmesg looks good again.
Fixes:
515ce733e86e ("staging:r8188eu: Use lib80211 to encrypt (CCMP) tx frames")
Signed-off-by: Michael Straube <straube.linux@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>