Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 14 Feb 2012 19:17:17 GMT
From:      Monthadar <monthadar@gmail.com>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   kern/165149: [ath][net80211] Ping with data length more than iv_fragthreshold
Message-ID:  <201202141917.q1EJHHN3089581@red.freebsd.org>
Resent-Message-ID: <201202141920.q1EJKCsI031533@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         165149
>Category:       kern
>Synopsis:       [ath][net80211] Ping with data length more than iv_fragthreshold
>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:   Tue Feb 14 19:20:12 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator:     Monthadar
>Release:        Current
>Organization:
>Environment:
mips:mipseb
>Description:
If I lower iv_fragthreshold to IEEE80211_FRAG_MIN and then ping with a data size
that makes net80211 frame larger than threshold the frame is never sent. Freebsd seems to be stuck somewhere cause the ping program never print anything, quiting ping does show that packets have been sent but that is not true.

Ping without -s option works.

After a while (not sure when or how) I get these print out on console:
# ping -s8192 192.168.5.12
PING 192.168.5.12 (192.168.5.12): 8192 data bytes
arge0: Failed to allocate buffer
ath0: ath_rx_proc: no mbuf!
ath0: ath_rx_proc: no mbuf!
ath0: ath_rx_proc: no mbuf!
ath0: ath_rx_proc: no mbuf!
ath0: ath_rx_proc: no mbuf!
ath0: ath_rx_proc: no mbuf!
ath0: ath_rx_proc: no mbuf!

I tried with -s1024 and -s193 no frame sent, -s192 works fine.
>How-To-Repeat:
change (ieee80211_var.h):
#define	IEEE80211_FRAG_DEFAULT		IEEE80211_FRAG_MAX
to:
#define	IEEE80211_FRAG_DEFAULT		IEEE80211_FRAG_MIN

Then you need two ath wifi setup as STA and AP.

Then:

# ping -c 1 192.168.5.12
PING 192.168.5.12 (192.168.5.12): 56 data bytes
64 bytes from 192.168.5.12: icmp_seq=0 ttl=64 time=61.260 ms

--- 192.168.5.12 ping statistics ---
1 packets transmitted, 1 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 61.260/61.260/61.260/0.000 ms
#
# ping -s8192  192.168.5.12
PING 192.168.5.12 (192.168.5.12): 8192 data bytes
^C
--- 192.168.5.12 ping statistics ---
134 packets transmitted, 0 packets received, 100.0% packet loss
RSPRO-MESH-11# ping -s8192 192.168.5.12
PING 192.168.5.12 (192.168.5.12): 8192 data bytes
<long/random time>
arge0: Failed to allocate buffer
ath0: ath_rx_proc: no mbuf!
ath0: ath_rx_proc: no mbuf!
ath0: ath_rx_proc: no mbuf!
ath0: ath_rx_proc: no mbuf!
ath0: ath_rx_proc: no mbuf!
>Fix:
unknown

>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201202141917.q1EJHHN3089581>