From owner-freebsd-wireless@FreeBSD.ORG Thu Apr 21 22:40:29 2011 Return-Path: Delivered-To: freebsd-wireless@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 738F51065679 for ; Thu, 21 Apr 2011 22:40:29 +0000 (UTC) (envelope-from petar@smokva.net) Received: from morrison.andev.ch (morrison.andev.ch [78.47.142.202]) by mx1.freebsd.org (Postfix) with ESMTP id EC1568FC20 for ; Thu, 21 Apr 2011 22:40:28 +0000 (UTC) Received: from pintail.smokva.net (84-73-24-182.dclient.hispeed.ch [84.73.24.182]) by morrison.andev.ch (Postfix) with ESMTP id 87DFD5DA91 for ; Fri, 22 Apr 2011 00:25:26 +0200 (CEST) Date: Fri, 22 Apr 2011 00:25:25 +0200 From: Petar Bogdanovic To: freebsd-wireless@freebsd.org Message-ID: <20110421222524.GA5730@pintail.smokva.net> Mail-Followup-To: freebsd-wireless@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.21+23 (f7160c94ff70) (2010-12-30) Subject: ath: tx-rate stops adapting after a while X-BeenThere: freebsd-wireless@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Discussions of 802.11 stack, tools device driver development." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 21 Apr 2011 22:40:29 -0000 Hi, I'm running FreeBSD 8.1-RC2 on an ALIX board equipped with a Wistron CM9 minipci card. The box works pretty well but has some troubles with the only NetBSD 5.1 station in this network: After a while, it simply stops adapting the tx-rate to the particular station and locks it at 11M/DS11. After that it doesn't move, even though the rssi value would suggest something else than just DS11. The other stations do not experience anything similar: $ ifconfig wlan0 list sta ADDR AID CHAN RATE RSSI IDLE TXSEQ RXSEQ CAPS FLAG 00:0b:.....NETBSD 1 10 11M 26.0 0 12211 4288 EPS AE RSN 58:b0:.......OSX1 2 10 54M 38.5 0 27905 63648 EPS AQE RSN WME 00:1e:.......OSX2 3 10 48M 18.0 0 44010 39184 EPS AQE RSN WME The following is an `athstats 1' while a non-wireless host (directly connected to the FreeBSD AP) sends some large file to the NetBSD station. The other stations are pretty much idle: $ athstats 1 input output altrate short long xretry crcerr crypt phyerr rssi rate 16349756 10789585 3491 0 498955 1365 102311 1 711 54 11M 459 634 0 0 30 0 2 0 0 53 11M 452 662 0 0 30 0 1 0 0 59 11M 448 646 1 0 34 0 4 0 0 53 11M 448 631 0 0 33 0 4 0 0 53 11M 459 671 0 0 18 0 3 0 0 49 11M 452 659 0 0 27 0 2 0 0 52 11M 451 660 0 0 22 0 2 0 0 50 11M 451 660 0 0 29 0 0 0 0 50 11M 451 658 0 0 35 0 0 0 0 51 11M 449 646 0 0 28 0 0 0 0 50 11M 458 661 0 0 27 0 0 0 0 52 11M 462 671 0 0 18 0 1 0 0 52 11M 456 640 0 0 29 0 0 0 0 52 11M 457 666 0 0 22 0 3 0 0 54 11M 468 654 0 0 28 0 1 0 0 53 11M 444 649 0 0 28 0 1 0 0 55 11M 458 647 0 0 25 0 3 0 0 54 11M 450 659 0 0 29 0 4 0 0 55 11M 456 646 0 0 27 0 9 0 0 57 11M 456 649 0 0 32 0 5 0 0 49 11M The only way to revive the old behaviour is through restarting hostapd (which probably re-initializes the card). As soon as I do this, I get OFDM54 and about 3.2MB/s for another hour or two.. Also interesting is, that this only affects the throughput [FreeBSD] -> [NetBSD]---the other way around is normal, the tx-rate of the NetBSD ath driver switches happily between OFDM48 and OFDM54. Any ideas, hints or help are highly appreciated.. Thanks, Petar Bogdanovic P.S. athstats: 16671439 data frames received 11252111 data frames transmit 3526 tx frames with an alternate rate 519412 long on-chip tx retries 1374 tx failed 'cuz too many retries 24M current transmit rate 98635 tx stopped 'cuz no xmit buffer 3 tx failed 'cuz dma buffer allocation failed 1646 tx frames with no ack marked 11249490 tx frames with short preamble 103832 rx failed 'cuz of bad CRC 1 rx failed 'cuz decryption 730 rx failed 'cuz of PHY err 29 OFDM restart 701 CCK restart 125105 beacons transmitted 2041 periodic calibrations 3 rfgain value change -0/+0 TDMA slot adjust (usecs, smoothed) 54 rssi of last ack 55 avg recv rssi -96 rx noise floor 976 tx frames through raw api 3 raw tx failed 'cuz interface/hw down 195 cabq frames transmitted 37 cabq xmit overflowed beacon interval 46875 switched default/rx antenna Antenna profile: [1] tx 3138866 rx 4553641 [2] tx 8111869 rx 12117798