Thanks Stephen, I will do my best to apply your comments.
Best Regards, Wojciech Liguzinski -----Original Message----- From: Stephen Hemminger <[email protected]> Sent: Tuesday, September 7, 2021 9:15 PM To: Liguzinski, WojciechX <[email protected]> Cc: [email protected]; Singh, Jasvinder <[email protected]>; Dumitrescu, Cristian <[email protected]>; Ajmera, Megha <[email protected]> Subject: Re: [dpdk-dev] [RFC PATCH v5 1/5] sched: add PIE based congestion management On Tue, 7 Sep 2021 07:33:24 +0000 "Liguzinski, WojciechX" <[email protected]> wrote: > +/** > + * @brief make a decision to drop or enqueue a packet based on probability > + * criteria > + * > + * @param pie_cfg [in] config pointer to a PIE configuration > +parameter structure > + * @param pie [in, out] data pointer to PIE runtime data > + * @param time [in] current time (measured in cpu cycles) */ static > +inline void __rte_experimental _calc_drop_probability(const struct > +rte_pie_config *pie_cfg, > + struct rte_pie *pie, uint64_t time) This code adds a lot of inline functions in the name of performance. But every inline like this means the internal ABI for the implmentation has to be exposed. You would probably get a bigger performance bump from not using floating point in the internal math, than the minor performance optimization from having so many inlines.

