Thread (1 message) 1 message, 1 author, 2011-10-18

Re: BUG: All network processes hang (brcmsmac/wpa_supplicant)

From: Eric Dumazet <hidden>
Date: 2011-10-18 12:24:12
Also in: lkml

Le mardi 18 octobre 2011 à 13:14 +0200, Nico Schottelius a écrit :
Dear LKML,

there is a rather nasty bug in all recent kernels (probably older as
well):

If wpa_supplicant looses the connection to an AP, all network calls
hang, uninterruptle.

This is a snippet of running fetchmail after the problem started:

socket(PF_NETLINK, SOCK_RAW, 0)         = 4
bind(4, {sa_family=AF_NETLINK, pid=0, groups=00000000}, 12) = 0
getsockname(4, {sa_family=AF_NETLINK, pid=9734, groups=00000000}, [12]) = 0
sendto(4, "\24\0\0\0\26\0\1\3\225\\\235N\0\0\0\0\0\0\0\0", 20, 0, {sa_family=AF_NETLINK, pid=0, groups=00000000}, 12

[12:59] brief:linux-2.6% ps aux | grep fetchmail
nico      9063  0.0  0.0  20652  1492 pts/3    D+   12:55   0:00 fetchmail
nico      9564  0.0  0.0  20652  1496 pts/15   D+   13:01   0:00 fetchmail
nico      9731  0.0  0.0   4288   724 pts/34   S+   13:01   0:00 strace -fF fetchmail
nico      9734  0.0  0.0  20652  1492 pts/34   D+   13:01   0:00 fetchmail

This is particular nasty, because even calling "sudo -i" does a sendto() call
and thus hangs, as well as trying to send this mail with sendmail makes mutt hang.

I've seen that on stock Archlinux kernel (linux 3.0.6-2),
latest from Linus (v3.1-rc9-93-ga84a79e), merged trees from Keith and Jiri
(3.1.0-rc6-gbee709a).

Listing of hanging processes:

[13:05] brief:linux-2.6% ps aux | grep D        
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root      9056  0.2  0.0      0     0 ?        D    12:54   0:02 [kworker/u:0]
nico      9063  0.0  0.0  20652  1492 pts/3    D+   12:55   0:00 fetchmail
nico      9066  0.0  0.0  16548  1180 ?        D    12:56   0:00 sendmail -oem -oi -f ME@inf.ethz.ch -- RECIPIENT
root      9067  0.0  0.0   6060   320 pts/14   DN   12:56   0:00 ip r
root      9124  0.0  0.0   6060   320 pts/14   DN   12:57   0:00 ip r add 192.168.42.1/24 dev lo
root      9390  0.0  0.0  11996   784 pts/12   D+   13:01   0:00 sudo -i
nico      9564  0.0  0.0  20652  1496 pts/15   D+   13:01   0:00 fetchmail
nico      9734  0.0  0.0  20652  1492 pts/34   D+   13:01   0:00 fetchmail
root     12304  0.0  0.0  28624  2228 ?        Ds   09:16   0:00 wpa_supplicant -B -P /run/wpa_supplicant_wlan0.pid -i wlan0 -D nl80211,wext -c /run/network//wpa.wlan0/wpa.conf
[13:07] brief:linux-2.6% 

The hardware is again the (in)famous MacBook Air 4,2, so I imagine this may be
related to brcmsmac.

Attached are config, dmesg, lsmod.

Must be a mutex_unlock(some_mltex) missing somewhere.

Then later, a process holding RTNL is blocking on mutex_lock(some_mutex)

Try a "CONFIG_LOCKDEP=y" enabled build
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help