[natty] Broadcom STA Driver: divide error: 0000

Bug #790054 reported by Edmundo on 2011-05-30
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
bcmwl (Ubuntu)
Undecided
Unassigned

Bug Description

Hi!

I've been using the bcmwl driver since Maverick on this laptop without much problem, however on Natty I hadn't been using it much (I updated to natty a few days before the final release and I keep it updated). Today I started using it to connect to internet and I'm noticing that after a while one ksoftirqd process starts taking 100% CPU time and I will lose wireless connection and so on... in a few words, I have to reboot it (wait for the computer to _not_ finish rebooting and I will send alt-sysrq key combinations to reboot it after a while).

I went into dmesg after one of this process hang events and this is what I found:

[ 1757.127398] divide error: 0000 [#1] SMP
[ 1757.127534] last sysfs file: /sys/devices/system/cpu/cpu1/cache/index2/shared_cpu_map
[ 1757.127757] Modules linked in: cryptd aes_i586 aes_generic nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack iptable_filter ip_tables x_tables rfcomm sco bnep l2cap parport_pc ppdev dm_crypt wl(P) lib80211 arc4 snd_hda_codec_realtek snd_hda_intel snd_hda_codec joydev snd_hwdep snd_pcm btusb snd_seq_midi bluetooth uvcvideo snd_rawmidi snd_seq_midi_event psmouse snd_seq videodev brcm80211(C) mac80211 serio_raw snd_timer snd_seq_device snd cfg80211 soundcore snd_page_alloc lp parport i915 ahci drm_kms_helper drm libahci sky2 i2c_algo_bit video
[ 1757.129388]
[ 1757.129439] Pid: 0, comm: swapper Tainted: P C 2.6.38-8-generic #42-Ubuntu SAMSUNG ELECTRONICS CO., LTD. N150P/N210P/N220P /N150P/N210P/N220P
[ 1757.131284] EIP: 0060:[<f862c0fe>] EFLAGS: 00010246 CPU: 0
[ 1757.131284] EIP is at minstrel_ht_update_stats.clone.5+0x1fe/0x430 [mac80211]
[ 1757.145583] EAX: 0000006c EBX: 0000006c ECX: eec10050 EDX: 00000000
[ 1757.145583] ESI: 00000000 EDI: eec10068 EBP: f3c0bed4 ESP: f3c0be90
[ 1757.145583] DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
[ 1757.145583] Process swapper (pid: 0, ti=f3c0a000 task=c1731f60 task.ti=c172c000)
[ 1757.145583] Stack:
[ 1757.145583] 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[ 1757.145583] 00004858 00000000 eec10000 eec10000 00000000 00000001 f075c800 eec10000
[ 1757.145583] 00000003 f3c0bf10 f862c744 00000001 f3c0bf20 00000000 00000001 ed980228
[ 1757.145583] Call Trace:
[ 1757.145583] [<f862c744>] minstrel_ht_tx_status+0x414/0x4a0 [mac80211]
[ 1757.145583] [<f8603538>] ieee80211_tx_status+0x1c8/0x880 [mac80211]
[ 1757.145583] [<f8b4df6a>] ? wlc_bmac_txstatus+0xba/0x1a0 [brcm80211]
[ 1757.145583] [<f8b11faa>] ? wlc_ps_check+0x2a/0x160 [brcm80211]
[ 1757.145583] [<c14258a0>] ? skb_dequeue+0x50/0x70
[ 1757.145583] [<f8602aa7>] ieee80211_tasklet_handler+0x97/0xc0 [mac80211]
[ 1757.145583] [<c1509716>] ? _raw_spin_unlock_bh+0x16/0x20
[ 1757.145583] [<f8b1f8a8>] ? wl_dpc+0x58/0xb0 [brcm80211]
[ 1757.145583] [<c1055ee5>] tasklet_action+0x55/0xe0
[ 1757.145583] [<c1056622>] __do_softirq+0x82/0x170
[ 1757.145583] [<c10565a0>] ? __do_softirq+0x0/0x170
[ 1757.145583] <IRQ>
[ 1757.145583] [<c10567ed>] ? irq_exit+0x6d/0x80
[ 1757.145583] [<c15107ab>] ? do_IRQ+0x4b/0xc0
[ 1757.145583] [<c107cbca>] ? tick_notify+0x11a/0x1d0
[ 1757.145583] [<c1003670>] ? common_interrupt+0x30/0x38
[ 1757.145583] [<c105007b>] ? console_unlock+0xdb/0xe0
[ 1757.145583] [<c12c2508>] ? intel_idle+0xb8/0x110
[ 1757.145583] [<c14061fd>] ? cpuidle_idle_call+0x7d/0x160
[ 1757.145583] [<c10019ca>] ? cpu_idle+0x8a/0xc0
[ 1757.145583] [<c1038d2e>] ? complete+0x4e/0x60
[ 1757.145583] [<c14f0d2d>] ? rest_init+0x5d/0x70
[ 1757.145583] [<c178d7e1>] ? start_kernel+0x35f/0x366
[ 1757.145583] [<c178d3d5>] ? pass_all_bootoptions+0x0/0xa
[ 1757.145583] [<c178d0e0>] ? i386_start_kernel+0xe0/0xe8
[ 1757.145583] Code: 51 04 89 41 fc 8b 5f 08 81 fb 98 19 00 00 89 5d dc 0f 86 16 ff ff ff 8b 55 e4 8b 45 e4 8b 5a 1c 31 d2 0f b7 40 0a 89 45 d4 89 d8 <f7> 75 d4 8b 55 d8 89 c3 b8 40 42 0f 00 03 9c b2 a8 fd 62 f8 31
[ 1757.145583] EIP: [<f862c0fe>] minstrel_ht_update_stats.clone.5+0x1fe/0x430 [mac80211] SS:ESP 0068:f3c0be90
[ 1757.145583] BUG: scheduling while atomic: swapper/0/0x10000100
[ 1757.145583] Modules linked in: cryptd aes_i586 aes_generic nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack iptable_filter ip_tables x_tables rfcomm sco bnep l2cap parport_pc ppdev dm_crypt wl(P) lib80211 arc4 snd_hda_codec_realtek snd_hda_intel snd_hda_codec joydev snd_hwdep snd_pcm btusb snd_seq_midi bluetooth uvcvideo snd_rawmidi snd_seq_midi_event psmouse snd_seq videodev brcm80211(C) mac80211 serio_raw snd_timer snd_seq_device snd cfg80211 soundcore snd_page_alloc lp parport i915 ahci drm_kms_helper drm libahci sky2 i2c_algo_bit video
[ 1757.145583] Modules linked in: cryptd aes_i586 aes_generic nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack iptable_filter ip_tables x_tables rfcomm sco bnep l2cap parport_pc ppdev dm_crypt wl(P) lib80211 arc4 snd_hda_codec_realtek snd_hda_intel snd_hda_codec joydev snd_hwdep snd_pcm btusb snd_seq_midi bluetooth uvcvideo snd_rawmidi snd_seq_midi_event psmouse snd_seq videodev brcm80211(C) mac80211 serio_raw snd_timer snd_seq_device snd cfg80211 soundcore snd_page_alloc lp parport i915 ahci drm_kms_helper drm libahci sky2 i2c_algo_bit video
[ 1757.145583]
[ 1757.145583] Pid: 0, comm: swapper Tainted: P C 2.6.38-8-generic #42-Ubuntu SAMSUNG ELECTRONICS CO., LTD. N150P/N210P/N220P /N150P/N210P/N220P
[ 1757.145583] EIP: 0060:[<c12c2508>] EFLAGS: 00000246 CPU: 0
[ 1757.145583] EIP is at intel_idle+0xb8/0x110
[ 1757.145583] EAX: 00000000 EBX: 00000000 ECX: 0000028d EDX: 00000000
[ 1757.145583] ESI: 12226bb7 EDI: 00000004 EBP: c172df60 ESP: c172df48
[ 1757.145583] DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
[ 1757.145583] Process swapper (pid: 0, ti=f3c0a000 task=c1731f60 task.ti=c172c000)
[ 1757.145583] Stack:
[ 1757.145583] 0000028d 00000000 00000000 c1788e4c f700ab5c 36e97000 c172df80 c14061fd
[ 1757.145583] f700ac1c 00000000 00000002 c1788e4c 00000000 36e97000 c172dfa0 c10019ca
[ 1757.145583] c1038d2e 00000000 42a3b622 1d66713b c17cda60 34716712 c172dfa8 c14f0d2d
[ 1757.145583] Call Trace:
[ 1757.145583] [<c14061fd>] cpuidle_idle_call+0x7d/0x160
[ 1757.145583] [<c10019ca>] cpu_idle+0x8a/0xc0
[ 1757.145583] [<c1038d2e>] ? complete+0x4e/0x60
[ 1757.145583] [<c14f0d2d>] rest_init+0x5d/0x70
[ 1757.145583] [<c178d7e1>] start_kernel+0x35f/0x366
[ 1757.145583] [<c178d3d5>] ? pass_all_bootoptions+0x0/0xa
[ 1757.145583] [<c178d0e0>] i386_start_kernel+0xe0/0xe8
[ 1757.145583] Code: c9 e8 3d 5a db ff 29 d8 bb 40 42 0f 00 19 f2 e8 9f 28 d9 ff 89 d1 f7 eb 89 cb c1 fb 1f 89 45 e8 01 4d e8 89 55 ec 11 5d ec fb 90 <8d> 74 26 00 85 3d 20 15 76 c1 75 0d 8d 55 f0 b8 05 00 00 00 e8
[ 1757.145583] Call Trace:
[ 1757.145583] [<c14061fd>] cpuidle_idle_call+0x7d/0x160
[ 1757.145583] [<c10019ca>] cpu_idle+0x8a/0xc0
[ 1757.145583] [<c1038d2e>] ? complete+0x4e/0x60
[ 1757.145583] [<c14f0d2d>] rest_init+0x5d/0x70
[ 1757.145583] [<c178d7e1>] start_kernel+0x35f/0x366
[ 1757.145583] [<c178d3d5>] ? pass_all_bootoptions+0x0/0xa
[ 1757.145583] [<c178d0e0>] i386_start_kernel+0xe0/0xe8
[ 1758.489595] Associated: False
[ 1758.572228] cfg80211: All devices are disconnected, going to restore regulatory settings
[ 1758.577251] cfg80211: Restoring regulatory settings
[ 1758.585943] cfg80211: Calling CRDA to update world regulatory domain
[ 1758.608158] cfg80211: Updating information on frequency 2412 MHz for a 20 MHz width channel with regulatory rule:
[ 1758.611987] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (300 mBi, 2700 mBm)
[ 1758.616038] cfg80211: Updating information on frequency 2417 MHz for a 20 MHz width channel with regulatory rule:
[ 1758.619990] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (300 mBi, 2700 mBm)
[ 1758.623921] cfg80211: Updating information on frequency 2422 MHz for a 20 MHz width channel with regulatory rule:
[ 1758.628035] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (300 mBi, 2700 mBm)
[ 1758.632071] cfg80211: Updating information on frequency 2427 MHz for a 20 MHz width channel with regulatory rule:
[ 1758.636307] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (300 mBi, 2700 mBm)
[ 1758.640609] cfg80211: Updating information on frequency 2432 MHz for a 20 MHz width channel with regulatory rule:
[ 1758.644991] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (300 mBi, 2700 mBm)
[ 1758.649290] cfg80211: Updating information on frequency 2437 MHz for a 20 MHz width channel with regulatory rule:
[ 1758.653842] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (300 mBi, 2700 mBm)
[ 1758.658249] cfg80211: Updating information on frequency 2442 MHz for a 20 MHz width channel with regulatory rule:
[ 1758.662969] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (300 mBi, 2700 mBm)
[ 1758.667656] cfg80211: Updating information on frequency 2447 MHz for a 20 MHz width channel with regulatory rule:
[ 1758.672463] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (300 mBi, 2700 mBm)
[ 1758.677273] cfg80211: Updating information on frequency 2452 MHz for a 20 MHz width channel with regulatory rule:
[ 1758.681987] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (300 mBi, 2700 mBm)
[ 1758.686801] cfg80211: Updating information on frequency 2457 MHz for a 20 MHz width channel with regulatory rule:
[ 1758.692051] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (300 mBi, 2700 mBm)
[ 1758.697296] cfg80211: Updating information on frequency 2462 MHz for a 20 MHz width channel with regulatory rule:
[ 1758.702766] cfg80211: 2402000 KHz - 2472000 KHz @ KHz), (300 mBi, 2700 mBm)
[ 1758.708464] cfg80211: Disabling freq 2467 MHz
[ 1758.713873] cfg80211: Disabling freq 2472 MHz
[ 1758.719067] cfg80211: Disabling freq 2484 MHz
[ 1758.724290] cfg80211: World regulatory domain updated:
[ 1758.729389] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
[ 1758.734602] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 1758.739825] cfg80211: (2457000 KHz - 2482000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[ 1758.745119] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[ 1758.750174] cfg80211: (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 1758.755417] cfg80211: (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)

Sounds like a bug on the driver, doesn't it?

A top from the moment when I noticed the bug had gone off a few seconds later:
top - 22:18:12 up 32 min, 4 users, load average: 1.06, 0.59, 0.36
Tasks: 155 total, 2 running, 153 sleeping, 0 stopped, 0 zombie
Cpu(s): 10.1%us, 54.3%sy, 0.0%ni, 35.6%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 2050004k total, 1185792k used, 864212k free, 78356k buffers
Swap: 3952636k total, 0k used, 3952636k free, 662680k cached

  PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
    3 root 20 0 0 0 0 R 100 0.0 3:42.70 ksoftirqd/0
  915 root 20 0 51128 16m 5252 S 12 0.8 3:44.20 Xorg
 1701 antoranz 20 0 129m 23m 16m S 8 1.2 0:15.13 konsole
 1570 antoranz 20 0 383m 86m 37m S 3 4.3 2:09.93 plasma-desktop
 1532 antoranz 20 0 296m 25m 16m S 2 1.3 0:36.78 knotify4
 1525 antoranz 20 0 194m 36m 26m S 1 1.8 0:14.52 kwin
 1988 antoranz 20 0 40588 10m 8824 S 1 0.5 0:14.83 gkrellm
 2684 antoranz 20 0 260m 62m 32m S 1 3.1 0:35.03 ktorrent
 3410 antoranz 20 0 2632 1156 860 R 1 0.1 0:01.54 top
etc

ProblemType: Bug
DistroRelease: Ubuntu 11.04
Package: bcmwl-kernel-source 5.100.82.38+bdcom-0ubuntu3
ProcVersionSignature: Ubuntu 2.6.38-8.42-generic 2.6.38.2
Uname: Linux 2.6.38-8-generic i686
NonfreeKernelModules: wl
Architecture: i386
Date: Sun May 29 22:28:37 2011
InstallationMedia: Kubuntu 10.10 "Maverick Meerkat" - Release i386 (20101007)
ProcEnviron:
 LANGUAGE=
 LANG=es_CO.UTF-8
 SHELL=/bin/bash
SourcePackage: bcmwl
UpgradeStatus: No upgrade log present (probably fresh install)

Edmundo (eantoranz) wrote :

If you pay less attention to:
[ 1757.127398] divide error: 0000 [#1] SMP

And focus on:
[ 1757.145583] BUG: scheduling while atomic: swapper/0/0x10000100

You will find others with this issue too.

BUG: scheduling while atomic 2.6.39-rc7 (iwl3945_irq_tasklet)
http://lkml.org/lkml/2011/5/13/393

That bug report is also "scheduling while atomic" (during softirq) but with iwl3945 wifi driver instead of scsi. Was abandoned because too hard to reproduce.

Re: rtlwifi: regression 39-rc5 (rtl8192ce)
https://lkml.org/lkml/2011/5/2/135

Again "scheduling while atomic" and abandoned because too hard to reproduce.

Only not iwl3945 wifi but rtl8192ce wifi.

For you bcmwl. Also LP: #793796 is "scheduling while atomic" (during softirq) but not wifi at all.

Adam Porter (alphapapa) on 2013-06-09
Changed in bcmwl (Ubuntu):
status: New → Invalid
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers