gen_new_estimator — create a new rate estimator
int gen_new_estimator ( | struct gnet_stats_basic_packed * bstats, |
struct gnet_stats_basic_cpu __percpu * cpu_bstats, | |
struct net_rate_estimator __rcu ** rate_est, | |
spinlock_t * stats_lock, | |
seqcount_t * running, | |
struct nlattr * opt) ; |
struct gnet_stats_basic_packed * bstats
basic statistics
struct gnet_stats_basic_cpu __percpu * cpu_bstats
bstats per cpu
struct net_rate_estimator __rcu ** rate_est
rate estimator statistics
spinlock_t * stats_lock
statistics lock
seqcount_t * running
qdisc running seqcount
struct nlattr * opt
rate estimator configuration TLV
Creates a new rate estimator with &bstats as source and &rate_est as destination. A new timer with the interval specified in the configuration TLV is created. Upon each interval, the latest statistics will be read from &bstats and the estimated rate will be stored in &rate_est with the statistics lock grabbed during this period.
Returns 0 on success or a negative error code.