Wireless card dies spontaneously

From: Rob (robert.campbell_at_ccc.ox.ac.uk)
Date: 09/04/03


Date: 4 Sep 2003 12:18:56 -0700

Hi,

I have been having trouble with a Netgear wireless card (MA311)
on SuSE 8.1. Everything seems to work fine most of the time. Typically
I get signal strengths of ~40/92 using iwconfig. However it seems to
drop the connection spontaneously- could be hours or minutes- after
boot up. So far I have only been able to fix things with a hard
reboot.

The machine is running on an ASUS A7N8X motherboard. The
network card has had trouble on Windows too and different cards from
the same manufacturer have also had problems on my machine.

When the connection dies I can still see my eth0 with ifconfig but
iwconfig shows info on signal strength. dhcpcd is up and
running. Restarting the interface (see below) doesn't help and stops
dhcpcd. The eth0 inerface now claims that it's busy and only a hard
reset will bring it back. Kernel messages (shown below) seem to show
that it is shutting down an important-looking 'Hermes chipset'.

Does anyone know what may be going wrong?

Thanks,

rob

Below I include experts from console outputs showing what happens in
this situation.

*Suddenly my connection dies. I can't even ping the IP address of the
 base station (Apple Airport Extreme).

linux:/home/rob # ping 10.0.1.1
PING 10.0.1.1 (10.0.1.1) from 10.0.1.6 : 56(84) bytes of data.
>From 10.0.1.6: icmp_seq=1 Destination Host Unreachable
>From 10.0.1.6 icmp_seq=1 Destination Host Unreachable
>From 10.0.1.6 icmp_seq=2 Destination Host Unreachable
>From 10.0.1.6 icmp_seq=3 Destination Host Unreachable

*Here are two examples of the kernel messages I get when such an event
 occurs. (/var/log/messages)
example 1
Sep 4 10:27:11 linux su: pam_unix2: session started for user root,
service su
Sep 4 10:40:04 linux -- MARK --
Sep 4 10:47:26 linux kernel: eth0: error -110 reading Rx descriptor.
Frame dropped.
Sep 4 10:47:26 linux kernel: eth0: Error -110 writing Tx descriptor
to BAP
Sep 4 10:47:44 linux last message repeated 12634 times
Sep 4 10:47:44 linux kernel: hermes @ MEM 0xe88fb000: Timeout waiting
for command completion.
Sep 4 10:47:44 linux kernel: eth0: Error -110 writing Tx descriptor
to BAP
Sep 4 10:47:44 linux last message repeated 16 times

example 2
Sep 4 16:23:34 linux -- MARK --
Sep 4 16:43:34 linux -- MARK --
Sep 4 16:59:00 linux /USR/SBIN/CRON[9331]: (root) CMD ( rm -f
/var/spool/cron/lastrun/cron.hourly)
Sep 4 17:15:42 linux kernel: eth0: error -110 reading Rx descriptor.
Frame dropped.
Sep 4 17:15:42 linux kernel: eth0: Error -110 writing Tx descriptor
to BAP
Sep 4 17:16:13 linux last message repeated 21656 times
Sep 4 17:17:14 linux last message repeated 44370 times

.....

Sep 4 17:46:14 linux kernel: eth0: Error -110 writing Tx descriptor
to BAP
Sep 4 17:46:14 linux last message repeated 674 times
Sep 4 17:46:14 linux kernel: eth0: Error -110 setting multicast list.
Sep 4 17:46:14 linux kernel: eth0: Error -110 writing Tx descriptor
to BAP
Sep 4 17:46:14 linux kernel: eth0: Error -16 shutting down Hermes
chipset
Sep 4 17:46:14 linux modify_resolvconf: restored
/etc/resolv.conf.saved.by.dhcpcd to /etc/resolv.conf
Sep 4 17:46:38 linux dhcpcd[10442]: dhcpStart: ioctl SIOCSIFFLAGS:
Device or resource busy
Sep 4 17:47:33 linux modprobe: modprobe: Can't locate module start
Sep 4 17:47:33 linux dhcpcd[10485]: dhcpStart: ioctl SIOCGIFHWADDR:
No such device
Sep 4 17:47:35 linux modprobe: modprobe: Can't locate module start
Sep 4 17:47:35 linux dhcpcd[10487]: dhcpStart: ioctl SIOCGIFHWADDR:
No such device
Sep 4 17:47:39 linux dhcpcd[10489]: dhcpStart: ioctl SIOCSIFFLAGS:
Device or resource busy
Sep 4 17:47:57 linux dhcpcd[10492]: dhcpStart: ioctl SIOCSIFFLAGS:
Device or resource busy
Sep 4 17:48:08 linux dhcpcd[10493]: dhcpStart: ioctl SIOCSIFFLAGS:
Device or resource busy
Sep 4 17:48:33 linux dhcpcd[10587]: dhcpStart: ioctl SIOCSIFFLAGS:
Device or resource busy

*I now see what iwconfig and ifconfig have to say:
linux:/home/rob # iwconfig
lo no wireless extensions.

eth0 IEEE 802.11-DS Nickname:"Prism I"
          Mode:Managed Frequency:42.9497GHz Tx-Power=15 dBm
          RTS thr:off
          Encryption key:off

linux:/home/rob # ifconfig
eth0 Link encap:Ethernet HWaddr 00:09:5B:2F:E0:EF
          inet addr:10.0.1.6 Bcast:255.255.255.255
Mask:255.255.255.0
          inet6 addr: fe80::209:5bff:fe2f:e0ef/64 Scope:Link
          UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1500
Metric:1
          RX packets:106060 errors:1 dropped:0 overruns:0 frame:0
          TX packets:93902 errors:1044979 dropped:0 overruns:0
carrier:0
          collisions:0 txqueuelen:100
          RX bytes:150233563 (143.2 Mb) TX bytes:12971120 (12.3 Mb)
          Interrupt:5 Base address:0xe000 Memory:d4000000-d4000fff

lo Link encap:Local Loopback
          inet addr:127.0.0.1 Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING MTU:16436 Metric:1
          RX packets:305 errors:0 dropped:0 overruns:0 frame:0
          TX packets:305 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:29883 (29.1 Kb) TX bytes:29883 (29.1 Kb)

*There is no information at all about the signal strength from
iwconfig. Althogh ifconfig shows that the card is still up and
running. What does network status show?

linux:/home/rob # /etc/init.d/network status
Checking network interfaces:
    lo
running
dhcpcd running
eth0 is up
3: eth0: <BROADCAST,MULTICAST,NOTRAILERS,UP> mtu 1500 qdisc pfifo_fast
qlen 100
    link/ether 00:09:5b:2f:e0:ef brd ff:ff:ff:ff:ff:ff
    inet 10.0.1.6/24 brd 255.255.255.255 scope global eth0
    inet6 fe80::209:5bff:fe2f:e0ef/64 scope link

current lease for eth0:
    IPADDR=10.0.1.6
    NETMASK=255.255.255.0
    GATEWAY=10.0.1.1
    DNS=10.0.1.1
    DHCPSIADDR=0.0.0.0
    DHCPCHADDR=00:09:5B:2F:E0:EF

    eth0
running

*Note that dhcpcd is up and running.*

Let's try to restart eth0
linux:/home/rob # /etc/init.d/network try-restart eth0
Shutting down network interfaces:
    eth0
done
Setting up network interfaces:
    lo
done
    eth0 DHCP client is already running on eth0
done

* But this doesn't worl: now iwconfig shows only the localhost and no
eth0

linux:/home/rob # iwconfig
lo no wireless extensions.

*let's try a 'restart' to network and check the status again
Shutting down network interfaces:
    eth0
done
Setting up network interfaces:
    eth0 SIOCSIFFLAGS: Device or resource busy
(DHCP) startproc: exit status of parent of /sbin/dhcpcd: 1

                                                                    
failed
*note that now I no longer get dhcpcd*

linux:/home/rob # /etc/init.d/network status eth0
Checking network interfaces:
dhcpcd not running
eth0 not up
    eth0
running



Relevant Pages

  • Re: Wireless card dies spontaneously
    ... > network card has had trouble on Windows too and different cards from ... The eth0 inerface now claims that it's busy and only a hard ... > Device or resource busy ... > Shutting down network interfaces: ...
    (comp.os.linux.hardware)
  • Re: Wireless card dies spontaneously
    ... > network card has had trouble on Windows too and different cards from ... The eth0 inerface now claims that it's busy and only a hard ... > Device or resource busy ... > Shutting down network interfaces: ...
    (comp.os.linux.hardware)
  • Wireless card looses conection and locks up. Help!
    ... I have been having trouble with a Netgear wireless card ... The eth0 inerface now claims that it's busy and only a hard ... Sep 4 10:27:11 linux su: pam_unix2: session started for user root, ... Shutting down network interfaces: ...
    (comp.os.linux.networking)
  • Re: Failing to get wireless card working on Toshiba + Suse
    ... this laptop under Linux. ... eth0 No configuration found for eth0 ... Checking mandatory network interfaces: ... sit0 no wireless extensions. ...
    (alt.os.linux.suse)
  • NDISWRAPPER and AWLH5025 MIMO 802.11G PCI Card
    ... My eth0 connection in the SUSE 10.0 setup wprks fine, ... I used the RT61.inf driver with NDISWRAPPER. ... wlan0 device: RaLink: Unknown device 0401 ... Shutting down network interfaces: ...
    (alt.os.linux.suse)