On 12/5/20 2:13 PM, Petr Machata wrote: > The DCB tool will have commands that deal with buffer sizes and traffic > rates. TC is another tool that has a number of such commands, and functions > to support them: get_size(), get_rate/64(), s/print_size() and > s/print_rate(). In this patchset, these functions are moved from TC to lib/ > for possible reuse and modernized. > > s/print_rate() has a hidden parameter of a global variable use_iec, which > made the conversion non-trivial. The parameter was made explicit, > print_rate() converted to a mostly json_print-like function, and > sprint_rate() retired in favor of the new print_rate. Patches #1 and #2 > deal with this. > > The intention was to treat s/print_size() similarly, but unfortunately two > use cases of sprint_size() cannot be converted to a json_print-like > print_size(), and the function sprint_size() had to remain as a discouraged > backdoor to print_size(). This is done in patch #3. > > Patch #4 then improves the code of sprint_size() a little bit. > > Patch #5 fixes a buglet in formatting small rates in IEC mode. > > Patches #6 and #7 handle a routine movement of, respectively, > get_rate/64() and get_size() from tc to lib. > > This patchset does not actually add any new uses of these functions. A > follow-up patchset will add subtools for management of DCB buffer and DCB > maxrate objects that will make use of them. > > v2: > - Patch #2: > - Adapt q_mqprio.c patch, the file changed since v1. > - Patch #4: > - This patch is new. It addresses a request from Stephen Hemminger to > clean up the sprint_size() function. > >
applied to iproute2-next. Thanks, Petr