Lines Matching refs:vars

189 static void codel_vars_init(struct codel_vars *vars)  in codel_vars_init()  argument
191 memset(vars, 0, sizeof(*vars)); in codel_vars_init()
205 static void codel_Newton_step(struct codel_vars *vars) in codel_Newton_step() argument
207 u32 invsqrt = ((u32)vars->rec_inv_sqrt) << REC_INV_SQRT_SHIFT; in codel_Newton_step()
209 u64 val = (3LL << 32) - ((u64)vars->count * invsqrt2); in codel_Newton_step()
214 vars->rec_inv_sqrt = val >> REC_INV_SQRT_SHIFT; in codel_Newton_step()
231 struct codel_vars *vars, in codel_should_drop() argument
239 vars->first_above_time = 0; in codel_should_drop()
243 vars->ldelay = now - codel_get_enqueue_time(skb); in codel_should_drop()
249 if (codel_time_before(vars->ldelay, params->target) || in codel_should_drop()
252 vars->first_above_time = 0; in codel_should_drop()
256 if (vars->first_above_time == 0) { in codel_should_drop()
260 vars->first_above_time = now + params->interval; in codel_should_drop()
261 } else if (codel_time_after(now, vars->first_above_time)) { in codel_should_drop()
267 typedef struct sk_buff * (*codel_skb_dequeue_t)(struct codel_vars *vars,
272 struct codel_vars *vars,
276 struct sk_buff *skb = dequeue_func(vars, sch);
281 vars->dropping = false;
285 drop = codel_should_drop(skb, sch, vars, params, stats, now);
286 if (vars->dropping) {
289 vars->dropping = false;
290 } else if (codel_time_after_eq(now, vars->drop_next)) {
299 while (vars->dropping &&
300 codel_time_after_eq(now, vars->drop_next)) {
301 vars->count++; /* dont care of possible wrap
304 codel_Newton_step(vars);
307 vars->drop_next =
308 codel_control_law(vars->drop_next,
310 vars->rec_inv_sqrt);
316 skb = dequeue_func(vars, sch);
318 vars, params, stats, now)) {
320 vars->dropping = false;
323 vars->drop_next =
324 codel_control_law(vars->drop_next,
326 vars->rec_inv_sqrt);
340 skb = dequeue_func(vars, sch);
341 drop = codel_should_drop(skb, sch, vars, params,
344 vars->dropping = true;
349 delta = vars->count - vars->lastcount;
351 codel_time_before(now - vars->drop_next,
353 vars->count = delta;
358 codel_Newton_step(vars);
360 vars->count = 1;
361 vars->rec_inv_sqrt = ~0U >> REC_INV_SQRT_SHIFT;
363 vars->lastcount = vars->count;
364 vars->drop_next = codel_control_law(now, params->interval,
365 vars->rec_inv_sqrt);
368 if (skb && codel_time_after(vars->ldelay, params->ce_threshold) &&