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