Red Hat Bugzilla – Bug 500214
Kernel hang in rt61pci
Last modified: 2009-09-11 10:51:23 EDT
Description of problem:
The kernel hangs somewhere in the rt61pci driver stack during interface
configuration. The calling user-space program (typically ifconfig) pegs
the CPU and never returns suggesting the driver is blocked on a spin lock.
Debugging with strace shows the hang to be inside an ioctl() system call.
Version-Release number of selected component (if applicable):
The problem was new in 2.6.18-128.1.6.el5 and is still present in
The problem was not present in kernel-2.6.18-128.el5.
Steps to Reproduce:
1. On system with network card using the rt61pci driver. In my case
06:00.0 Network controller: RaLink RT2561/RT61 rev B 802.11g
Subsystem: RaLink Unknown device 2561
Flags: bus master, slow devsel, latency 64, IRQ 11
Memory at 36000000 (32-bit, non-prefetchable) [size=32K]
Capabilities:  Power Management version 2
2. Configure the wlan0 interface. In my case for a 802.11g WEP access
point and DHCP.
3. Bring the interface up using 'ifup wlan0'.
4. Bring the interface down using 'ifdown wlan0' (or perform some other
action on the wlan0 interface).
Kernel will hang in step #4. The calling user-space program will peg
No hang, no pegging of CPU, operation completes and returns to user
strace output from 'ifdown wlan0' is attached.
Created attachment 343483 [details]
Strace of 'ifdown wlan0' showing hang in ioctl() call.
On a hunch, could you try the test kernels here?
Do they solve the problem w/ rt61pci?
Please try these instead:
Reading #499999 it certainly looks like the same problem. Unfortunately I was unable to verify this with the test kernels. Both the bz499999test and
jwltest.87 test kernels fail to boot on my machine. They hang right after
the Red Hat nash start message.
That sounds like an initrd problem. You might try installing the rpm again, or running mkinitrd manually...?
No luck, but the post-nash hang was not quite what it seemed. I could see occasional blinks of the disk-activity light after the Red Hat nash start message so I decided to wait. Roughly five minutes later the boot process continued, but very slowly. It got as far as starting cpuspeed, but after that nothing. I let it sit for an hour then I gave up.
This was with a fresh install of the jwltest.87 kernel and manually created initrd.
Whatever that was, I doubt if it was caused by any jwltest patches. :-)
I have a jwltest.88 now, based on a later RHEL5 kernel. Perhaps you could give that a try?
Ahh, much better. Kernel jwltest.88 boots and I'm able to take the wireless interface up and down repeatedly without hanging the kernel.
Cool...5.4 should fix things for you... :-)