2009-11-11 01:25:56

by Stefan Monnier

[permalink] [raw]
Subject: rtl8187se locks up when switching network

I've been using the rtl8187se driver in the vanilla liunx kernel since
2.6.29 for my MSI Wind and in general it seems to work just fine for my
use (connecting as a client to different access points, some of which
use WPA and others public, all under the control of wicd).

The only problem is that while connecting/disconnecting from networks
appears to work, the system often (almost always) hangs when connecting
to a different network than the last one.

I've just dine a few more tests, and switching network works just fine
if I "modprobe -r rtl8187se" and then "modprobe rth8187se" between the
disconnect and the reconnect, but otherwise the system almost always
hangs during the connection to the other network. The way it hangs is
always the same: everything just freezes and 2 of the status
leds blink. The exact moment at which the freeze takes place seems to
vary: sometimes it's while getting the IP address, other times its
earlier.

I've seen it with the 2.6.29 and 2.6.30 Debian kernels and have just
tried it with a freshly cloned wireless-testing kernel (2.6.32-rc6-wl).

IIUC this driver is not under active development, but maybe someone
knows it enough to try and fix it, or maybe there's some alternative
driver for this card that I should try?


Stefan


PS: I see nothing in the system logs around the time of the system hang.
Here's the dmesg output when inserting the module, in case it's helpful.

[ 1398.353690] Linux kernel driver for RTL8180 / RTL8185 based WLAN cards
[ 1398.353706] Copyright (c) 2004-2005, Andrea Merello
[ 1398.353716] r8180: Initializing module
[ 1398.353728] r8180: Wireless extensions version 22
[ 1398.353739] r8180: Initializing proc filesystem
[ 1398.353834] r8180: Configuring chip resources
[ 1398.353885] r8180 0000:02:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[ 1398.353911] r8180 0000:02:00.0: setting latency timer to 64
[ 1398.356863] r8180: Channel plan is 2
[ 1398.356869]
[ 1398.356881] Dot11d_Init()
[ 1398.356895] r8180: MAC controller is a RTL8187SE b/g
[ 1398.356903] r8180: This is a PCI NIC
[ 1398.359377] r8180: usValue is 0x100
[ 1398.359385]
[ 1398.414271] r8180: EEPROM version 104
[ 1398.419068] r8180: WW:**PLEASE** REPORT SUCCESSFUL/UNSUCCESSFUL TO Realtek!
[ 1398.420127] r8180: IRQ 17
[ 1398.424538] r8180: Driver probe completed



2009-11-11 02:35:14

by Larry Finger

[permalink] [raw]
Subject: Re: rtl8187se locks up when switching network

On 11/10/2009 07:25 PM, Stefan Monnier wrote:
> I've just dine a few more tests, and switching network works just fine
> if I "modprobe -r rtl8187se" and then "modprobe rth8187se" between the
> disconnect and the reconnect, but otherwise the system almost always
> hangs during the connection to the other network. The way it hangs is
> always the same: everything just freezes and 2 of the status
> leds blink. The exact moment at which the freeze takes place seems to
> vary: sometimes it's while getting the IP address, other times its
> earlier.

Do you mean that the "Caps Lock" and "num lock" LEDs are blinking? If so, that
is a kernel panic. You will be able to capture some information about that crash
by switching to the logging console (CTRL-ALT-F10) just after you initiate the
process that causes the crash.

> IIUC this driver is not under active development, but maybe someone
> knows it enough to try and fix it, or maybe there's some alternative
> driver for this card that I should try?

The vendor driver in staging is not really under active development. We are
currently writing a mainline driver that uses mac80211 from the vendor code. Of
course, it is not possible to predict when this driver will be ready.

Larry