From owner-freebsd-current@freebsd.org Fri Nov 23 19:36:52 2018 Return-Path: Delivered-To: freebsd-current@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DD777114FA60 for ; Fri, 23 Nov 2018 19:36:51 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-wr1-f54.google.com (mail-wr1-f54.google.com [209.85.221.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id ED70471B90 for ; Fri, 23 Nov 2018 19:36:50 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: by mail-wr1-f54.google.com with SMTP id z5so9009903wrt.11 for ; Fri, 23 Nov 2018 11:36:50 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=a4QXvPyPmAkaxwB++xjX+rJqBfCk5i4d/DQT+ubbn+w=; b=OcqosKqTDEuF6jtP9BMOzt/ZflshcIIw350IGXY/TMIbfyavx3i9SWb40r8SqqYcDm 4Lx5JhIYNs3n/8jfv9CvSBT6bk1nt2ZJHQDn4Pnewc0dFwQ1kinO0x2ztR7EaozF5yga BeNwykyJ0OFX79OR4jPdu1pVGbr19X4tytQehDE81WhIkeIrX/qUi7V75eAGoQ8AwY2c wXOkINH7CO0E5IrsYkHoayGTKpC5tjC1ThWmfuqkWppQytVdl3SicHaVRw5tTz6oA/40 H+JWdo1jUo5RQ4cnGqTQTko3EPhU+eCzTSvF6d4LlH1sVQpQS4EHaTfwzAp33j73qTFU xn+w== X-Gm-Message-State: AA+aEWZdCKA6uZu/Cfn+FEFCL7ll21BscvmegIqwEGMl3VABO4FoUMfT W1EqKnvYKFeRP0vb0KGFhqukXwiuuGzXXKYeKsw= X-Google-Smtp-Source: AFSGD/UTqtY4de79j3G62EOjyHrjD0eHR+ZueSpYpJrG4SFH2hy0clOFXOjekJ+eaHBOK+FbUxILj/YzaKMf5iDkfAc= X-Received: by 2002:a5d:6487:: with SMTP id r7mr15620646wru.263.1543001304565; Fri, 23 Nov 2018 11:28:24 -0800 (PST) MIME-Version: 1.0 References: <20181122170520.GA78341@troutmask.apl.washington.edu> In-Reply-To: <20181122170520.GA78341@troutmask.apl.washington.edu> From: Adrian Chadd Date: Fri, 23 Nov 2018 11:28:11 -0800 Message-ID: Subject: Re: ath(4) issues? To: Steve Kargl Cc: freebsd-current X-Rspamd-Queue-Id: ED70471B90 X-Spamd-Result: default: False [-2.94 / 15.00]; ARC_NA(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; FROM_HAS_DN(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17]; IP_SCORE(-1.01)[ipnet: 209.85.128.0/17(-3.47), asn: 15169(-1.49), country: US(-0.09)]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-current@freebsd.org]; DMARC_NA(0.00)[freebsd.org]; NEURAL_HAM_LONG(-0.99)[-0.995,0]; TO_MATCH_ENVRCPT_SOME(0.00)[]; TO_DN_ALL(0.00)[]; MX_GOOD(-0.01)[cached: alt3.gmail-smtp-in.l.google.com]; RCPT_COUNT_TWO(0.00)[2]; RCVD_IN_DNSWL_NONE(0.00)[54.221.85.209.list.dnswl.org : 127.0.5.0]; NEURAL_HAM_SHORT(-0.93)[-0.930,0]; RCVD_TLS_LAST(0.00)[]; FORGED_SENDER(0.30)[adrian@freebsd.org,adrianchadd@gmail.com]; RWL_MAILSPIKE_POSSIBLE(0.00)[54.221.85.209.rep.mailspike.net : 127.0.0.17]; R_DKIM_NA(0.00)[]; SUBJECT_ENDS_QUESTION(1.00)[]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; TAGGED_FROM(0.00)[]; FROM_NEQ_ENVFROM(0.00)[adrian@freebsd.org,adrianchadd@gmail.com]; RCVD_COUNT_TWO(0.00)[2] X-Rspamd-Server: mx1.freebsd.org Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 23 Nov 2018 19:36:52 -0000 hi! No. It's a side effect of how ath_rate_sample works. The TL;DR is: * ath_rate_sample uses a fixed set of rates for each attempt - so say you want to transmit at 54MBit OFDM, the second/third/fourth slower rates are in a fixed table; * net80211 negotiates which rates are acceptable to the hostap; * a lot of hostaps these days are increasingly disabling doing the lower OFDM/CCK rates so slower clients don't tie up so much air; * .. but they'll still RECEIVE and ACK those frames, so: * + you'll fail say, 54mbit * + and 48mbit * + then try something like 12mbit on the third attept, which the hostap didn't negotiate with you; and * + it ACKs it, cause it still receives it fine; then * + ath_rate_sample complains that it got a completion for a rate it's not supposed to use. They're harmless. You can comment it out for now; I really need to fix ath_rate_sample to use a dynamic table rather than the array of static tables.. -adrian On Thu, 22 Nov 2018 at 09:05, Steve Kargl wrote: > I have an old D-Link AirPlus G (DWL-630) pccard card > that I have used for years with FreeBSD. Recently, > I see > > % dmesg | grep ath > mobile:kargl[201] dmesg | grep ath > [ath_hal] loaded > [ath_dfs] loaded > [ath_rate] loaded > [ath] loaded > ath0: irq 19 at device 0.0 on cardbus0 > ath0: AR2413 mac 7.8 RF2413 phy 4.5 > ath0: 2GHz radio: 0x0000; 5GHz radio: 0x0056 > ath0: ath_rate_tx_complete: ts_rate=27 ts_finaltsi=0, final_rix=0 > ath0: bad series0 hwrate 0x1b, tries 1 ts_status 0x0 > ath0: ath_rate_tx_complete: ts_rate=27 ts_finaltsi=0, final_rix=0 > ath0: bad series0 hwrate 0x1b, tries 1 ts_status 0x0 > ath0: bad series0 hwrate 0x1b, tries 2 ts_status 0x1 > > > The "bad series0 hwrate..." message fills syslog. This message > appearred with a month or so old /usr/src and an update to top > of tree (r340736) still produces the message. > > So, is this a hardware-about-to-die issue or did someone break > ath(4) with the recent changes to inet? > > % sysctl -a | grep ath | grep -v path > net.wlan.0.%parent: ath0 > net.wlan.devices: ath0 wpi0 > hw.ath.bstuck: 4 > hw.ath.txbuf_mgmt: 32 > hw.ath.txbuf: 200 > hw.ath.rxbuf: 40 > hw.ath.anical: 100 > hw.ath.resetcal: 1200 > hw.ath.shortcal: 100 > hw.ath.longcal: 30 > irq19: cbb0 ath0:37 @cpu0(domain0): 53227 > dev.ath.0.hal.serialise_reg_war: 0 > dev.ath.0.hal.force_full_reset: 0 > dev.ath.0.hal.swba_backoff: 0 > dev.ath.0.hal.sw_brt: 10 > dev.ath.0.hal.dma_brt: 2 > dev.ath.0.hal.ar5416_biasadj: 0 > dev.ath.0.hal.debug: 0 > dev.ath.0.stats.sync_intr.31: 0 > dev.ath.0.stats.sync_intr.30: 0 > dev.ath.0.stats.sync_intr.29: 0 > dev.ath.0.stats.sync_intr.28: 0 > dev.ath.0.stats.sync_intr.27: 0 > dev.ath.0.stats.sync_intr.26: 0 > dev.ath.0.stats.sync_intr.25: 0 > dev.ath.0.stats.sync_intr.24: 0 > dev.ath.0.stats.sync_intr.23: 0 > dev.ath.0.stats.sync_intr.22: 0 > dev.ath.0.stats.sync_intr.21: 0 > dev.ath.0.stats.sync_intr.20: 0 > dev.ath.0.stats.sync_intr.19: 0 > dev.ath.0.stats.sync_intr.18: 0 > dev.ath.0.stats.sync_intr.17: 0 > dev.ath.0.stats.sync_intr.16: 0 > dev.ath.0.stats.sync_intr.15: 0 > dev.ath.0.stats.sync_intr.14: 0 > dev.ath.0.stats.sync_intr.13: 0 > dev.ath.0.stats.sync_intr.12: 0 > dev.ath.0.stats.sync_intr.11: 0 > dev.ath.0.stats.sync_intr.10: 0 > dev.ath.0.stats.sync_intr.9: 0 > dev.ath.0.stats.sync_intr.8: 0 > dev.ath.0.stats.sync_intr.7: 0 > dev.ath.0.stats.sync_intr.6: 0 > dev.ath.0.stats.sync_intr.5: 0 > dev.ath.0.stats.sync_intr.4: 0 > dev.ath.0.stats.sync_intr.3: 0 > dev.ath.0.stats.sync_intr.2: 0 > dev.ath.0.stats.sync_intr.1: 0 > dev.ath.0.stats.sync_intr.0: 0 > dev.ath.0.stats.rx_phy_err.63: 0 > dev.ath.0.stats.rx_phy_err.62: 0 > dev.ath.0.stats.rx_phy_err.61: 0 > dev.ath.0.stats.rx_phy_err.60: 0 > dev.ath.0.stats.rx_phy_err.59: 0 > dev.ath.0.stats.rx_phy_err.58: 0 > dev.ath.0.stats.rx_phy_err.57: 0 > dev.ath.0.stats.rx_phy_err.56: 0 > dev.ath.0.stats.rx_phy_err.55: 0 > dev.ath.0.stats.rx_phy_err.54: 0 > dev.ath.0.stats.rx_phy_err.53: 0 > dev.ath.0.stats.rx_phy_err.52: 0 > dev.ath.0.stats.rx_phy_err.51: 0 > dev.ath.0.stats.rx_phy_err.50: 0 > dev.ath.0.stats.rx_phy_err.49: 0 > dev.ath.0.stats.rx_phy_err.48: 0 > dev.ath.0.stats.rx_phy_err.47: 0 > dev.ath.0.stats.rx_phy_err.46: 0 > dev.ath.0.stats.rx_phy_err.45: 0 > dev.ath.0.stats.rx_phy_err.44: 0 > dev.ath.0.stats.rx_phy_err.43: 0 > dev.ath.0.stats.rx_phy_err.42: 0 > dev.ath.0.stats.rx_phy_err.41: 0 > dev.ath.0.stats.rx_phy_err.40: 0 > dev.ath.0.stats.rx_phy_err.39: 0 > dev.ath.0.stats.rx_phy_err.38: 0 > dev.ath.0.stats.rx_phy_err.37: 0 > dev.ath.0.stats.rx_phy_err.36: 0 > dev.ath.0.stats.rx_phy_err.35: 0 > dev.ath.0.stats.rx_phy_err.34: 0 > dev.ath.0.stats.rx_phy_err.33: 0 > dev.ath.0.stats.rx_phy_err.32: 0 > dev.ath.0.stats.rx_phy_err.31: 1875 > dev.ath.0.stats.rx_phy_err.30: 0 > dev.ath.0.stats.rx_phy_err.29: 0 > dev.ath.0.stats.rx_phy_err.28: 0 > dev.ath.0.stats.rx_phy_err.27: 0 > dev.ath.0.stats.rx_phy_err.26: 0 > dev.ath.0.stats.rx_phy_err.25: 0 > dev.ath.0.stats.rx_phy_err.24: 0 > dev.ath.0.stats.rx_phy_err.23: 19 > dev.ath.0.stats.rx_phy_err.22: 0 > dev.ath.0.stats.rx_phy_err.21: 0 > dev.ath.0.stats.rx_phy_err.20: 0 > dev.ath.0.stats.rx_phy_err.19: 0 > dev.ath.0.stats.rx_phy_err.18: 0 > dev.ath.0.stats.rx_phy_err.17: 0 > dev.ath.0.stats.rx_phy_err.16: 0 > dev.ath.0.stats.rx_phy_err.15: 0 > dev.ath.0.stats.rx_phy_err.14: 0 > dev.ath.0.stats.rx_phy_err.13: 0 > dev.ath.0.stats.rx_phy_err.12: 0 > dev.ath.0.stats.rx_phy_err.11: 0 > dev.ath.0.stats.rx_phy_err.10: 0 > dev.ath.0.stats.rx_phy_err.9: 0 > dev.ath.0.stats.rx_phy_err.8: 0 > dev.ath.0.stats.rx_phy_err.7: 0 > dev.ath.0.stats.rx_phy_err.6: 0 > dev.ath.0.stats.rx_phy_err.5: 0 > dev.ath.0.stats.rx_phy_err.4: 0 > dev.ath.0.stats.rx_phy_err.3: 0 > dev.ath.0.stats.rx_phy_err.2: 0 > dev.ath.0.stats.rx_phy_err.1: 0 > dev.ath.0.stats.rx_phy_err.0: 0 > dev.ath.0.stats.ast_tx_ldpc: 0 > dev.ath.0.stats.ast_tx_stbc: 0 > dev.ath.0.stats.ast_rx_stbc: 0 > dev.ath.0.stats.ast_tx_nodeq_overflow: 0 > dev.ath.0.stats.ast_tx_swfiltered: 0 > dev.ath.0.stats.ast_rx_keymiss: 0 > dev.ath.0.stats.ast_tx_mcastq_overflow: 0 > dev.ath.0.stats.ast_tx_intr: 4342 > dev.ath.0.stats.ast_rx_intr: 48850 > dev.ath.0.stats.ast_tx_aggr_fail: 0 > dev.ath.0.stats.ast_tx_aggr_ok: 0 > dev.ath.0.stats.ast_tx_aggr_failall: 0 > dev.ath.0.stats.ast_tx_delim_underrun: 0 > dev.ath.0.stats.ast_tx_data_underrun: 0 > dev.ath.0.stats.ast_tx_swretrymax: 0 > dev.ath.0.stats.ast_tx_swretries: 0 > dev.ath.0.stats.ast_tx_desccfgerr: 0 > dev.ath.0.stats.ast_tx_timerexpired: 0 > dev.ath.0.stats.ast_tx_xtxop: 0 > dev.ath.0.stats.ast_tx_cst: 0 > dev.ath.0.stats.ast_tx_timeout: 0 > dev.ath.0.stats.ast_rx_hitqueueend: 0 > dev.ath.0.stats.ast_tx_htprotect: 0 > dev.ath.0.stats.ast_rx_hi_rx_chain: 0 > dev.ath.0.stats.ast_rx_decrypt_busy_err: 0 > dev.ath.0.stats.ast_rx_post_crc_err: 0 > dev.ath.0.stats.ast_rx_pre_crc_err: 0 > dev.ath.0.stats.ast_rx_2040: 0 > dev.ath.0.stats.ast_rx_halfgi: 0 > dev.ath.0.stats.ast_rx_agg: 0 > dev.ath.0.stats.ast_ani_cal: 5852 > dev.ath.0.stats.ast_be_missed: 0 > dev.ath.0.stats.ast_tx_nofrag: 0 > dev.ath.0.stats.ast_tx_raw_fail: 0 > dev.ath.0.stats.ast_tdma_ack: 0 > dev.ath.0.stats.ast_tdma_tsf: 0 > dev.ath.0.stats.ast_tdma_timers: 0 > dev.ath.0.stats.ast_tdma_update: 0 > dev.ath.0.stats.ast_tx_nobuf: 0 > dev.ath.0.stats.ast_tx_qfull: 0 > dev.ath.0.stats.ast_ff_flush: 0 > dev.ath.0.stats.ast_ff_rx: 0 > dev.ath.0.stats.ast_ff_txerr: 0 > dev.ath.0.stats.ast_ff_txok: 0 > dev.ath.0.stats.ast_tx_raw: 59 > dev.ath.0.stats.ast_cabq_busy: 0 > dev.ath.0.stats.ast_cabq_xmit: 0 > dev.ath.0.stats.ast_ant_txswitch: 0 > dev.ath.0.stats.ast_ant_defswitch: 347 > dev.ath.0.stats.ast_rate_drop: 0 > dev.ath.0.stats.ast_rate_raise: 0 > dev.ath.0.stats.ast_rate_calls: 0 > dev.ath.0.stats.ast_per_rfgain: 0 > dev.ath.0.stats.ast_per_calfail: 0 > dev.ath.0.stats.ast_per_cal: 20 > dev.ath.0.stats.ast_be_nombuf: 0 > dev.ath.0.stats.ast_be_xmit: 0 > dev.ath.0.stats.ast_rx_ctl: 0 > dev.ath.0.stats.ast_rx_mgt: 0 > dev.ath.0.stats.ast_rx_packets: 0 > dev.ath.0.stats.ast_rx_toobig: 0 > dev.ath.0.stats.ast_rx_tooshort: 0 > dev.ath.0.stats.ast_rx_phyerr: 1894 > dev.ath.0.stats.ast_rx_badmic: 0 > dev.ath.0.stats.ast_rx_badcrypt: 0 > dev.ath.0.stats.ast_rx_fifoerr: 0 > dev.ath.0.stats.ast_rx_crcerr: 1646 > dev.ath.0.stats.ast_rx_orn: 0 > dev.ath.0.stats.ast_rx_busdma: 0 > dev.ath.0.stats.ast_rx_nombuf: 0 > dev.ath.0.stats.ast_tx_ctsext: 0 > dev.ath.0.stats.ast_tx_ctsburst: 0 > dev.ath.0.stats.ast_tx_protect: 0 > dev.ath.0.stats.ast_tx_altrate: 60 > dev.ath.0.stats.ast_tx_shortpre: 2203 > dev.ath.0.stats.ast_tx_cts: 0 > dev.ath.0.stats.ast_tx_rts: 0 > dev.ath.0.stats.ast_tx_noack: 0 > dev.ath.0.stats.ast_tx_badrate: 0 > dev.ath.0.stats.ast_tx_longretry: 744 > dev.ath.0.stats.ast_tx_shortretry: 0 > dev.ath.0.stats.ast_tx_filtered: 0 > dev.ath.0.stats.ast_tx_fifoerr: 0 > dev.ath.0.stats.ast_tx_xretries: 1 > dev.ath.0.stats.ast_tx_busdma: 0 > dev.ath.0.stats.ast_tx_nodata: 0 > dev.ath.0.stats.ast_tx_linear: 0 > dev.ath.0.stats.ast_tx_nomcl: 0 > dev.ath.0.stats.ast_tx_nombuf: 0 > dev.ath.0.stats.ast_tx_nonode: 0 > dev.ath.0.stats.ast_tx_encap: 0 > dev.ath.0.stats.ast_tx_qstop: 0 > dev.ath.0.stats.ast_tx_discard: 0 > dev.ath.0.stats.ast_tx_mgmt: 0 > dev.ath.0.stats.ast_tx_packets: 0 > dev.ath.0.stats.ast_intrcoal: 0 > dev.ath.0.stats.ast_mib: 34 > dev.ath.0.stats.ast_txurn: 0 > dev.ath.0.stats.ast_rxeol: 0 > dev.ath.0.stats.ast_rxorn: 0 > dev.ath.0.stats.ast_bstuck: 0 > dev.ath.0.stats.ast_bmiss_phantom: 0 > dev.ath.0.stats.ast_bmiss: 0 > dev.ath.0.stats.ast_hardware: 0 > dev.ath.0.stats.ast_watchdog: 0 > dev.ath.0.clear_stats: 0 > dev.ath.0.txq_node_maxdepth: 50 > dev.ath.0.txq_mcastq_maxdepth: 50 > dev.ath.0.txq_data_minfree: 10 > dev.ath.0.delim_min_pad: 0 > dev.ath.0.rts_aggr_limit: 0 > dev.ath.0.aggr_limit: 65530 > dev.ath.0.tid_hwq_hi: 4 > dev.ath.0.tid_hwq_lo: 2 > dev.ath.0.hwq_limit_aggr: 2 > dev.ath.0.hwq_limit_nonaggr: 32 > dev.ath.0.monpass: 24 > dev.ath.0.intmit: 1 > dev.ath.0.hangcheck: 0 > dev.ath.0.forcebstuck: 0 > dev.ath.0.txagg: 0 > dev.ath.0.tpcts: 63 > dev.ath.0.tpack: 63 > dev.ath.0.tpc: 0 > dev.ath.0.tpscale: 0 > dev.ath.0.diag: 0 > dev.ath.0.txintrperiod: 5 > dev.ath.0.diversity: 1 > dev.ath.0.rxantenna: 1 > dev.ath.0.txantenna: 0 > dev.ath.0.led_pwr_pin: -1 > dev.ath.0.led_net_pin: -1 > dev.ath.0.hardled: 0 > dev.ath.0.ledidle: 2700 > dev.ath.0.ledon: 0 > dev.ath.0.ledpin: 0 > dev.ath.0.softled: 0 > dev.ath.0.ctstimeout: 48 > dev.ath.0.acktimeout: 48 > dev.ath.0.slottime: 9 > dev.ath.0.regdomain: 16 > dev.ath.0.countrycode: 0 > dev.ath.0.sample_stats: 0 > dev.ath.0.sample_rate: 10 > dev.ath.0.smoothing_rate: 75 > dev.ath.0.%parent: cardbus0 > dev.ath.0.%pnpinfo: vendor=0x168c device=0x001a subvendor=0x1186 > subdevice=0x3b08 class=0x020000 > dev.ath.0.%location: slot=0 function=0 dbsf=pci0:4:0:0 > dev.ath.0.%driver: ath > dev.ath.0.%desc: Atheros 2413 > dev.ath.%parent: > > > -- > Steve > _______________________________________________ > freebsd-current@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org" >