kern/171394: [ath] ath0: ath_tx_aggr_comp_aggr: num frames seen=1;
bf nframes=4
Adrian Chadd
adrian at FreeBSD.org
Fri Sep 7 00:20:02 UTC 2012
>Number: 171394
>Category: kern
>Synopsis: [ath] ath0: ath_tx_aggr_comp_aggr: num frames seen=1; bf nframes=4
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Fri Sep 07 00:20:01 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator: Adrian Chadd
>Release: -HEAD
>Organization:
>Environment:
>Description:
Kim has reported this appearing during normal use:
Sep 4 16:42:53 foo kernel: ath0: ath_tx_aggr_comp_aggr: num frames seen=1; bf nframes=4
Sep 4 16:42:56 foo kernel: ath0: ath_tx_aggr_comp_aggr: AR5416 bug: hasba=0; txok=1, isaggr=1, seq_st=3889
Sep 4 16:42:56 foo kernel: Q1[ 0] (DS.V:0xffffff811b49a0c0 DS.P:0x1469a0c0) L:1469a120 D:17e95b5e F:0004
Sep 4 16:42:56 foo kernel: Seq: 62976 swtry: 2 ADDBAW?: 1 DOBAW?: 1
Sep 4 16:42:56 foo kernel: 407f0612 0000902c 24348000 888b8c8d 814580fd 86cc81d1
Sep 4 16:42:56 foo kernel: 08000000 0097bdef 00000000 3f000000 3f000000 3f000000 00000000 00000000
Sep 4 16:42:56 foo kernel: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Sep 4 16:42:56 foo kernel: (DS.V:0xffffff811b49a120 DS.P:0x1469a120) L:1469a180 D:2f0b9e80 F:0004
Sep 4 16:42:56 foo kernel: Seq: 62976 swtry: 2 ADDBAW?: 1 DOBAW?: 1
Sep 4 16:42:56 foo kernel: 00000000 00001028 00000000 00000000 00000000 00000000
Sep 4 16:42:56 foo kernel: 08280000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Sep 4 16:42:56 foo kernel: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Sep 4 16:42:56 foo kernel: (DS.V:0xffffff811b49a180 DS.P:0x1469a180) L:1468b780 D:ab29e344 F:0004
Sep 4 16:42:56 foo kernel: Seq: 62976 swtry: 2 ADDBAW?: 1 DOBAW?: 1
Sep 4 16:42:56 foo kernel: 00000000 000005b4 24348000 888b8c8d 00000000 00000000
Sep 4 16:42:56 foo kernel: 08280000 00000000 00000000 00000000 00000000 00000000 00803736 00000101
Sep 4 16:42:56 foo kernel: 007c69f9 ffffffff ffff7fff 3a803839 80808080 80808080 80808080 00001e63
Sep 4 16:42:56 foo kernel: [end]
Sep 4 16:42:56 foo kernel: ath0: ath_tx_aggr_comp_aggr: num frames seen=1; bf nframes=4
Sep 4 16:42:59 foo kernel: ath0: stuck beacon; resetting (bmiss count 4)
Sep 4 16:43:00 foo kernel: ath0: ath_tx_aggr_comp_aggr: AR5416 bug: hasba=0; txok=1, isaggr=1, seq_st=1591
Sep 4 16:43:00 foo kernel: Q1[ 0] (DS.V:0xffffff811b4f1940 DS.P:0x146f1940) L:146f19a0 D:2f0f045e F:0004
Sep 4 16:43:00 foo kernel: Seq: 26112 swtry: 2 ADDBAW?: 1 DOBAW?: 1
Sep 4 16:43:00 foo kernel: 407f0612 0000902c 24348000 888b8c8d 814580fd 86cc81d1
Sep 4 16:43:00 foo kernel: 08000000 0097bdef 00000000 3f000000 3f000000 3f000000 00000000 00000000
Sep 4 16:43:00 foo kernel: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Sep 4 16:43:00 foo kernel: (DS.V:0xffffff811b4f19a0 DS.P:0x146f19a0) L:146f1a00 D:2f830d80 F:0004
Sep 4 16:43:00 foo kernel: Seq: 26112 swtry: 2 ADDBAW?: 1 DOBAW?: 1
Sep 4 16:43:00 foo kernel: 00000000 00001028 00000000 00000000 00000000 00000000
Sep 4 16:43:00 foo kernel: 08280000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Sep 4 16:43:00 foo kernel: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Sep 4 16:43:00 foo kernel: (DS.V:0xffffff811b4f1a00 DS.P:0x146f1a00) L:146da0c0 D:ad74e29c F:0004
Sep 4 16:43:00 foo kernel: Seq: 26112 swtry: 2 ADDBAW?: 1 DOBAW?: 1
Sep 4 16:43:00 foo kernel: 00000000 000005b4 24348000 888b8c8d 00000000 00000000
Sep 4 16:43:00 foo kernel: 08280000 00000000 00000000 00000000 00000000 00000000 00803737 00000001
Sep 4 16:43:00 foo kernel: 00161ae8 ffffffff fffffdff 3b80383a 80808080 80808080 80808080 00000c6f
Sep 4 16:43:00 foo kernel: [end]
Sep 4 16:43:00 foo kernel: ath0: ath_tx_aggr_comp_aggr: num frames seen=1; bf nframes=4
>How-To-Repeat:
Use 11n in a noisy/congested environment
>Fix:
The problem is that the bfs_nframes and bfs_aggr frames aren't being reset after a software transmit failure.
SO:
* an aggregate is formed; the head ath_buf has bfs_nframes=X and bfs_aggr=1;
* it fails;
* the hwq is empty;
* the first frame is retried via ath_tx_xmit_aggr() as a single frame;
* it gets TXed successfully or not;
* .. but bfs_aggr=1, so the aggr completion function is called, rather than the single-frame aggr completion function
* .. and bfs_nframes != the number of buffers in that list, so things complain.
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list