hiya, I'd like to start churning the ratectl api in preparation for teaching it about more interesting things (eg ath_rate_sample, ath_rate_onoe) and hopefully getting it ready for some 11ac things in the future.
There are some immediate things I'd like to change: * not everything implements both tx_update and tx_complete. I'd like to fix that. * I don't like the void * / int args that are left to the implementation to define. It means things aren't /really/ plug/play'able, which is kinda silly. * ieee8021_ratectl_rate() is currently used inconsistently, the pktlen isn't passed in, other things that are missing (eg is it multicast? etc); it returns rix rather than rate and it means that the users are typically calling the function and then checking ni_txrates. That's a bit race-prone for me and means I can't do things like choose a different rate based on packet size. * there's like, zero locking in use anywhere here. There's also a bunch of things that we could prepare for - eg, the multi-rate retry schedules that some hardware supports (ath, iwn/iwm to some extent, etc), proper 11n support and A-MSDU / A-MPDU support. So I'd like some input on this before I rush off and redesign it all. I'll braindump some of this into a wiki page soon so interested parties can help out churn things. thanks! -a _______________________________________________ email@example.com mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-wireless To unsubscribe, send any mail to "freebsd-wireless-unsubscr...@freebsd.org"