Date: Wed, 14 Aug 2013 09:34:16 -0700 From: Adrian Chadd <adrian@freebsd.org> To: Chenchong Qin <qinchenchong@gmail.com> Cc: "freebsd-wireless@freebsd.org" <freebsd-wireless@freebsd.org> Subject: Re: Chenchong's work on net80211_ratectl Message-ID: <CAJ-VmokyXwkKLdsJw74bux7G5EJSRvFhugTcLR9BgXfw4ysYRg@mail.gmail.com> In-Reply-To: <CAFnsE3df=1WEuLZh5355v_K2eBgcuBbpoza74Y-5vvNupBz22A@mail.gmail.com> References: <CAFnsE3dYdPf5yGTFH683Q1Zh0mc-g%2B_YtCTraNNt28z2vBoSKw@mail.gmail.com> <CAJ-Vmom4sY7jcNwWmJkrDwfWjsok2fk8UEwTi5A=egj1JyerLw@mail.gmail.com> <CAFnsE3cyg=msBfQqqKUMmLABSL=j24VoMBwbBjxQ6b7Dyy7Mqg@mail.gmail.com> <CAJ-Vmo=k8NddAYyAJCkx4eOaA_8XsSxg6uKrdddx%2BgmeT%2BX9KA@mail.gmail.com> <CAFnsE3eaOyRcO3LXSi3L=jbzpyMv5Nt_jRGKt_mmA0WV-EV5vA@mail.gmail.com> <CAJ-VmokdxLhK5x6kO=jJzk-dv61EDK-ZgmndOimoyWWf76HiZA@mail.gmail.com> <CAJ-VmonMjR5iVTMVN9532d%2BPqOXWNUoZvxPtQir5h=yGxU-XdQ@mail.gmail.com> <CAFnsE3d9nG-X2b=z1srKfTtpxC3w5L%2B6Hg3TbOnAQrJN%2Bt19GA@mail.gmail.com> <CAJ-VmokF6hPtg9FoEdeJXLLaZRNhzd=nr_o6nHE%2BjYiQKTg3zQ@mail.gmail.com> <CAFnsE3eMwX-GiRzJt8jk4r9mxwSAQkcrDwk%2BnWVG7q6dabeA3A@mail.gmail.com> <CAJ-Vmo=mzvS0UBC7fGx2t501%2Bfioi4DJcw8qobOpbYOUiraqGg@mail.gmail.com> <CAFnsE3df=1WEuLZh5355v_K2eBgcuBbpoza74Y-5vvNupBz22A@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi! Just a note - you need to keep the old copyright headers for code you've just shifted around. Eg, the ieee80211_rc_sample.[ch] files. -adrian On 13 August 2013 05:21, Chenchong Qin <qinchenchong@gmail.com> wrote: > Hi! > > Here is an update of work these days. > > I've added a new struct called ieee80211_rc_info to the ratectl API. It > contains tx completing information, i.e. txcnt, retrycnt, finaltsi, etc, > which > can be provided to ratectl algo during the __complete__ period. ir_rates, > ieee80211_ratectl_rates and ieee80211_ratectl_complete_rcflags are > adapted to accept the ieee80211_rc_info pointer through which framelen > and shortpreamble can also be reached. Then I added __complete__ stuff > and ir_rates to ieee80211_rc_sample. > > Thanks! > > Chenchong > > > On Tue, Aug 6, 2013 at 12:03 AM, Adrian Chadd <adrian@freebsd.org> wrote: > >> Hi! >> >> Great! >> >> So what's the problem with complete? Linux just provides all the >> information that the NIC supplies - how many attempts were made, how >> many attempts failed, which rate suceeded, etc. It looks a lot like it >> was designed around the requirements for the atheros driver (that has >> the most interesting information available) and other NICs just have >> to fake it somehow. >> >> >> >> -adrian >> >> On 5 August 2013 08:58, Chenchong Qin <qinchenchong@gmail.com> wrote: >> > Hi! >> > >> > Here is my work done these days on porting ath_rate_sample to net80211. >> It >> > has not been finished yet. _complete_ and _update_ are to be added. >> > >> > _complete_ is really a tricky thing. We have to provide rc algos with rc >> > information >> > during the frame completion period. Different rc algos may need >> different rc >> > information. What makes things more thornier is that different drivers >> > provide >> > different rc information in different ways. So, it seems we need a >> unified >> > way to >> > provide the rc information during completion of a frame. >> > >> > I'm browsing mac80211 these days to see what Linux do about _complete_. >> And, >> > looking forward to your commets! >> > >> > Thanks! >> > >> > Chenchong >> > >> > >> > On Sat, Aug 3, 2013 at 1:30 AM, Adrian Chadd <adrian@freebsd.org> >> wrote: >> >> >> >> Well just remember you can always ask me/us questions! >> >> >> >> What's your latest diff against -HEAD? Maybe I can start looking at >> >> including parts of it in the tree. >> >> >> >> >> >> >> >> >> >> -adrian >> >> >> >> On 2 August 2013 09:17, Chenchong Qin <qinchenchong@gmail.com> wrote: >> >> > Hi! >> >> > >> >> > These days, I'm taking a further look at what Linux done for the >> >> > _completion_ of a >> >> > frame. Some updates will be posted here later. >> >> > >> >> > And, with ir_rates, we can return/fill an rc array rather than just >> >> > returning the rix. >> >> > >> >> > Thanks! >> >> > >> >> > Chenchong >> >> > >> >> > >> >> > >> >> > >> >> > >> >> > On Thu, Aug 1, 2013 at 12:21 AM, Adrian Chadd <adrian@freebsd.org> >> >> > wrote: >> >> >> >> >> >> Boo! >> >> >> >> >> >> Do you have another update? >> >> >> >> >> >> >> >> >> >> >> >> -adrian >> >> >> >> >> >> On 24 July 2013 06:44, Adrian Chadd <adrian@freebsd.org> wrote: >> >> >> > On 24 July 2013 06:38, Chenchong Qin <qinchenchong@gmail.com> >> wrote: >> >> >> >> >> >> >> >> My pleasure! >> >> >> >> >> >> >> >> It's also against HEAD. >> >> >> >> >> >> >> >> Thanks! >> >> >> > >> >> >> > Ok. This is looking great! >> >> >> > >> >> >> > Next - we need to update the rate control API to now populate an >> rc >> >> >> > array rather than just returning the rix. >> >> >> > >> >> >> > This is the tricky part - as we're going to have to modify all the >> >> >> > drivers that use the rate control API to use this. >> >> >> > Which is fine, as there's only a handful. It's just annoying. >> >> >> > >> >> >> > Then we have to provide the rate control information during frame >> >> >> > _completion_, so the rate control code knows which transmission >> rates >> >> >> > succeeded or failed. I'm still not sure what to do about it here. >> >> >> > Maybe do something like Linux and attach TX rate control and >> >> >> > completion information as an mbuf tag? >> >> >> > >> >> >> > _Then_ we can start doing interesting thing with it. :) >> >> >> > >> >> >> > >> >> >> > >> >> >> > -adrian >> >> > >> >> > >> > >> > >> > >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-VmokyXwkKLdsJw74bux7G5EJSRvFhugTcLR9BgXfw4ysYRg>