Subject: Re: ath Atheros driver no buffer space available and can't power off
To: David Young <dyoung@pobox.com>
From: Alicia da Conceicao <alicia@engine.ca>
List: tech-net
Date: 05/01/2004 10:46:10
> On Wed, Apr 21, 2004 at 05:01:36AM -0400, Alicia da Conceicao wrote:
> > I am using the "ath" driver from NetBSD-current on a Atheros 5212 mini-pci
> > type IIIB card on my JVC-Victor Interlink MP-XP7310 sub-notebook.  In
> > general the Atheros card appears to work fine, but I have noticed the
> > following bugs in NetBSD-current:
> > 1) Every 15 mins or so of light but contineous network activity, like
> > 	SSH and web page browsing, the ath driver would temporarily halt
> > 	all network activity for about 3-5 mins, and if I attempt a ping
> > 	to a local machine on the lan I get:
> > 	ping: sendto: No buffer space available
> I have just updated our ath/net80211 sources using the ones at FreeBSD.
> See if the "No buffer space available" bug does not go away.
 
Hi Dave:

I grabbed the latest kernel source tarball (sys.tar.gz & contrib.tar.gz)
from NetBSD-current this Saturday morning, and recompiled the kernel with
ath (Atheros) and the new ENHANCED_SPEEDSTEP options enabled.

Unfortunately, after rebooting with the new kernel, I still get the same
behavour with the periodic network freezing every few minutes:

=======================================================================
# ifconfig ath0
ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        ssid engine nwkey 0xFFFFFFFFFFFFFFFFFFFFFFFFFF
        powersave off
        chan 10
        address: 00:40:05:29:ad:ab
        media: IEEE802.11 autoselect mode 11b (DS1 mode 11b)
        status: no network
        inet 192.168.2.9 netmask 0xffffff00 broadcast 192.168.2.255
# netstat -m
117 mbufs in use:
        98 mbufs allocated to data
        8 mbufs allocated to packet headers
        11 mbufs allocated to socket names and addresses
0 calls to protocol drain routines
# wiconfig ath0 -D
scanning ...
No APs available
=======================================================================

Indicating that the Atheros card temporarily lost its wireless link,
even though the laptop hasn't moved and the  Wi/Fi router is just 2-3
meters away and my Wi/Fi enabled PDA still has wireless access through
the same router.

When the wireless network access returned to my laptop after a few
minutes with the Atheros card I got:

=======================================================================
# ifconfig ath0
ath0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        ssid engine nwkey 0xFFFFFFFFFFFFFFFFFFFFFFFFFF
        powersave off
        bssid 00:04:e2:8c:d5:56 chan 10
        address: 00:40:05:29:ad:ab
        media: IEEE802.11 autoselect mode 11b (DS11 mode 11b)
        status: active
        inet 192.168.2.9 netmask 0xffffff00 broadcast 192.168.2.255
# netstat -m
169 mbufs in use:
        168 mbufs allocated to data
        1 mbufs allocated to packet headers
0 calls to protocol drain routines
# wiconfig ath0 -D
scanning ......
AP Information
ap[0]:
        netname (SSID):                 [ engine ]
        BSSID:                          [ 00:04:e2:8c:d5:56 ]
        Channel:                        [ 10 ]
        Quality/Signal/Noise [signal]:  [ 0 / 0 / 0 ]
                                [dBm]:  [ 0 / -149 / -149 ]
        BSS Beacon Interval [msec]:     [ 100 ]
        Capinfo:                        [ ESS WEP ]
        DataRate [Mbps]:                [ 11 ]
=======================================================================

Please keep in my that my laptop also boots WinXP, in addition to NetBSD,
and with the exact same hardware (same laptop with the same Atheros
mini-pci Wi/Fi card and same Wi/Fi antennas, using the same Wi/Fi router),
WinXP DOES NOT FREEZE and can maintain contineous wireless network
activity for hours.  My laptop used the Atheros drivers that are preloaded
into WinXP.

Perhaps your changes haven't made it to the NetBSD-current source tarballs
yet?  I will try to grab it from CVS in a short while.  Where exactly are
your changes?  Most of the Atheros stuff appear to be in these directories.

	/usr/src/contrib/sys/dev/ic/
	/usr/src/contrib/sys/arch/i386/dev/

Alicia.