Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 31 Mar 2011 10:51:53 -0400
From:      Adam Stylinski <kungfujesus06@gmail.com>
To:        Bernhard Schmidt <bschmidt@freebsd.org>
Cc:        freebsd-net@freebsd.org
Subject:   Re: net80211 and interface requests
Message-ID:  <20110331145153.GA2243@ossumpossum.geop.uc.edu>
In-Reply-To: <201103311507.16263.bschmidt@freebsd.org>
References:  <AANLkTimQJBJwNaa3VW1HVONAx2zrBu2Un2=S7PVJ5xLS@mail.gmail.com> <201103310902.46236.bschmidt@freebsd.org> <20110331122033.GA66992@freebsdbox.adamsnet> <201103311507.16263.bschmidt@freebsd.org>

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

[-- Attachment #1 --]
On Thu, Mar 31, 2011 at 03:07:15PM +0200, Bernhard Schmidt wrote:
> On Thursday, March 31, 2011 14:20:33 Adam Stylinski wrote:
> > On Thu, Mar 31, 2011 at 09:02:45AM +0200, Bernhard Schmidt wrote:
> > > On Wednesday, March 30, 2011 23:17:53 Adam Stylinski wrote:
> > > > Hello,
> > > > 
> > > > This list has helped me before so I'll email again with the hopes that
> > > > somebody has an answer.  All is working well with my project, however for
> > > > the life of me I cannot get the interface to inject the raw frames faster
> > > > than 11mbps.  I'm following the example given in
> > > > /usr/src/tools/tools/net80211/wlaninject.c, and manually specifying
> > > > parameters such as ucastrate, mcastrate, and mgmtrate within ifconfig.  I'm
> > > > putting the card into pureg mode, and yet I still can't inject any faster.
> > > >  I've even gone so far as to specify an ieee802211_txparam struct giving
> > > > values of 255 both mcast and ucast rates within the struct (and of course
> > > > anding them by 0xff).  I then used the ioctl call to set the flags within
> > > > the interface request.  Any help would be greatly appreciated.
> > > 
> > > You've set the ibp_rate0 parameter right? This one is in half-mbps, so
> > > a value of 108 should give you 54m. The only thing I can think of right
> > > now is that the device (or channel) is actually configured for 11b not
> > > 11g mode. Can we rule that out? Which device are you using?
> > > 
> > > > I am doing nanosleeps in between transmissions as if I don't the bpf clone
> > > > can't inject due to the buffer being too full.  There's probably a better
> > > > way of doing this, but I doubt the nanosleeps are the issue (afterall, I get
> > > > almost exactly 11mbps).  I should probably note I'm not doing any ACKs, this
> > > > is pure transmits.
> > > > 
> > > > If anybody cares enough to look at my unpolished code to get a better idea,
> > > > look here:
> > > > 
> > > > http://projhinternet.svn.sourceforge.net/
> > > > 
> > > > The idea is to allow unidirectional traffic so that with an FCC amateur
> > > > license (yes I know I'm not currently broadcasting the call sign as of yet)
> > > > you can broadcast unencrypted transmissions for miles (with a linear
> > > > amplifier spec'd to 2.4ghz).  With the license FCC part15 no longer applies
> > > > and you can operate just like in any other amateur band.
> > > > _______________________________________________
> > > > freebsd-net@freebsd.org mailing list
> > > > http://lists.freebsd.org/mailman/listinfo/freebsd-net
> > > > To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"
> > > > 
> > > 
> > 
> > I'm using an atheros AR2413 chipset, running in pure g mode, with also the card put into "mode 11g" and ucast, mcast, and mgmt rates set to 54.  I think the parameter for ibp_rate0 is just for setting it in the header (but I could be wrong).  Regardless I am doing this, let me give you the exact source files I'm doing this in.
> 
> Well, the ath_rate_* modules afaik do not honor the fixed rate
> settings. At least I've heard something about those being broken. The
> ibp_rate0 parameter set to 108 seems to be correct though.
> 
> No clue why that doesn't work, you may have to debug ath_tx_findrix().
> Adding a printf of the passed over rate and ridx should shed some light
> on this I guess.
> 
> > Line 38 in this file:
> > http://projhinternet.svn.sourceforge.net/viewvc/projhinternet/src/callbacks.c?revision=69&view=markup 
> > 
> > And the setup_if function in this:
> > http://projhinternet.svn.sourceforge.net/viewvc/projhinternet/src/libinject.c?revision=69&view=markup
> > 
> 
> -- 
> Bernhard

Is there any way to do this without using a kernel debugger?  It'd be really disappointing if the whole problem is a bug in the driver.  

[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.17 (FreeBSD)

iQIcBAEBAgAGBQJNlJUIAAoJED6sRHE6Tvmnxz0QANG8yMyuuwTQgxCpjGTm9HeR
739l+L0Xu+KY7Tl56m60PVcyDwMoLVh8NPd936XDm36W3CBswWHFuFRyCHyLsfkp
7gWlNp+C2NGKYxktdBzR/b1POH8AtIBDT1vD454dEjikok5h6T6VKj0DLiXfyfAo
Em1dvo/nAbAgojJOUj1SqaxCIyH5CjhyJkvr7dRRR1QrVQNxd3rw1hEBe7NFBwYG
aIT32d1MMqbuGr0CSobg+VYCcHZ9/aXBwSikkHrraPL6H/GDXSV1LK7kfOS4zBmt
49eqr+j4+ovmiAcGA1vdxXOtGZ0YuCtsHzoHlrEie/hH/GjDPFBSLT2DS1IVDdbu
BykGb9dp6Umm8sPdgfaUjlPBQO6Z+wIlacC9mVlYMZ1CF6ftVb87tNMfzVIo0Riw
/gXmHV108P8rDHushuntsj8USLt2uDT7prT7OSjgp2dvv41SvJ43DOJKvNwgkDQg
6sY4+cO0DPGf87m61+4QYlBGpwL3NThfuzHJOnoYNfLt8xotPLJEE38Bv/T4X61u
MrdF5CyLWjUVrvLvUNCqjwygHd1EagiAHKaILlNSlXLBkMTL7payzKAxviViI4gn
e45aRawyXxFgjHKch3uH+HS5m3nMYAQIewil90hTe5zZffn0pYp5lFJZE/J2te1x
9UGgj4ru3LW7qkH8CbO5
=mxO7
-----END PGP SIGNATURE-----

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