Skip site navigation (1)Skip section navigation (2)
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>