Lines Matching refs:prec
124 * low drop prec: 01
125 * medium drop prec: 10
126 * high drop prec: 01
249 struct dropprec_state *prec = &rp->rio_precstate[i];
251 prec->avg = 0;
252 prec->idle = 1;
255 prec->inv_pmax = default_rio_params[i].inv_pmax;
257 prec->inv_pmax = params[i].inv_pmax;
259 prec->th_min = default_rio_params[i].th_min;
261 prec->th_min = params[i].th_min;
263 prec->th_max = default_rio_params[i].th_max;
265 prec->th_max = params[i].th_max;
271 prec->th_min_s = prec->th_min << (rp->rio_wshift + FP_SHIFT);
272 prec->th_max_s = prec->th_max << (rp->rio_wshift + FP_SHIFT);
278 prec->probd = (2 * (prec->th_max - prec->th_min)
279 * prec->inv_pmax) << FP_SHIFT;
281 microtime(&prec->last);
343 struct dropprec_state *prec;
354 prec = &rp->rio_precstate[i];
355 avg = prec->avg;
356 if (prec->idle) {
357 prec->idle = 0;
360 t = (now.tv_sec - prec->last.tv_sec);
365 (now.tv_usec - prec->last.tv_usec);
375 avg += (prec->qlen << FP_SHIFT) - (avg >> rp->rio_wshift);
376 prec->avg = avg; /* save the new value */
381 prec->count++;
384 prec = &rp->rio_precstate[dpindex];
385 avg = prec->avg;
389 if (avg >= prec->th_min_s && prec->qlen > 1) {
390 if (avg >= prec->th_max_s) {
393 } else if (prec->old == 0) {
395 prec->count = 1;
396 prec->old = 1;
397 } else if (drop_early((avg - prec->th_min_s) >> rp->rio_wshift,
398 prec->probd, prec->count)) {
404 prec->old = 0;