Date: Wed, 31 Mar 2010 14:05:52 +0100 From: Rui Paulo <rpaulo@gmail.com> To: Sam Leffler <sam@errno.com>, Andrew Thompson <thompsa@freebsd.org>, Weongyo Jeong <weongyo@freebsd.org>, Bernhard Schmidt <bschmidt@techwires.net> Cc: freebsd-net <freebsd-net@freebsd.org> Subject: net80211 ratectl proof of concept Message-ID: <D1EDB040-BB1F-41E2-8E1B-9DEF6171903D@gmail.com>
next in thread | raw e-mail | index | archive | help
Hi, I've started developing a ratectl framework for net80211, loosely based = on what DragonFly has. Right now only one driver has been ported, but I = would like your feedback before continuing. The objective is to, eventually, have all the ratectl stuff (amrr, = sample, onoe(?) and rssadapt) in net80211 so all drivers can use it. We = can also select which ratectl modules are built in the kernel config = file. The framework support changing the current ratectl is out of scope for = this patch. You can find the patch here: * http://people.freebsd.org/~rpaulo/ratectl.diff Only the ral driver and the AMRR rate control algorithms were ported. Some comments: o The rate control calls now dereferences several pointers and some = inline functions are now real functions. I wonder how much this impacts = performance and what we can do to solve it. o I wished there was a better way to do the IEEE80211_AMRR_SUCCESS / = IEEE80211_AMRR_FAILURe call. o Some other stuff can also be `const' o I create ieee80211_ratect.[ch] to avoid polluting other files o I moved the AMRR parameters inside amrr_init() on purpose. The drivers = we have now only specify a different interval and I plan to add export = amrr_set_interval() via the ratectl framework later. I would like very much to see this in, unless there's a strong impending = argument. Thanks, -- Rui Paulo
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?D1EDB040-BB1F-41E2-8E1B-9DEF6171903D>