Lines Matching refs:cost

712 static u64 cost_to_abs_cost(u64 cost, u32 hw_inuse)  in cost_to_abs_cost()  argument
714 return DIV64_U64_ROUND_UP(cost * hw_inuse, WEIGHT_ONE); in cost_to_abs_cost()
718 u64 abs_cost, u64 cost) in iocg_commit_bio() argument
722 bio->bi_iocost_cost = cost; in iocg_commit_bio()
723 atomic64_add(cost, &iocg->vtime); in iocg_commit_bio()
1455 u64 cost = abs_cost_to_cost(wait->abs_cost, ctx->hw_inuse); in iocg_wake_fn() local
1457 ctx->vbudget -= cost; in iocg_wake_fn()
1462 iocg_commit_bio(ctx->iocg, wait->bio, wait->abs_cost, cost); in iocg_wake_fn()
2457 u64 cost, new_inuse; in adjust_inuse_and_calc_cost() local
2462 cost = abs_cost_to_cost(abs_cost, hwi); in adjust_inuse_and_calc_cost()
2463 margin = now->vnow - vtime - cost; in adjust_inuse_and_calc_cost()
2467 return cost; in adjust_inuse_and_calc_cost()
2475 return cost; in adjust_inuse_and_calc_cost()
2482 return cost; in adjust_inuse_and_calc_cost()
2498 cost = abs_cost_to_cost(abs_cost, hwi); in adjust_inuse_and_calc_cost()
2499 } while (time_after64(vtime + cost, now->vnow) && in adjust_inuse_and_calc_cost()
2507 return cost; in adjust_inuse_and_calc_cost()
2517 u64 cost = 0; in calc_vtime_cost_builtin() local
2545 cost += coef_randio; in calc_vtime_cost_builtin()
2547 cost += coef_seqio; in calc_vtime_cost_builtin()
2550 cost += pages * coef_page; in calc_vtime_cost_builtin()
2552 *costp = cost; in calc_vtime_cost_builtin()
2557 u64 cost; in calc_vtime_cost() local
2559 calc_vtime_cost_builtin(bio, iocg, is_merge, &cost); in calc_vtime_cost()
2560 return cost; in calc_vtime_cost()
2582 u64 cost; in calc_size_vtime_cost() local
2584 calc_size_vtime_cost_builtin(rq, ioc, &cost); in calc_size_vtime_cost()
2585 return cost; in calc_size_vtime_cost()
2595 u64 abs_cost, cost, vtime; in ioc_rqos_throttle() local
2613 cost = adjust_inuse_and_calc_cost(iocg, vtime, abs_cost, &now); in ioc_rqos_throttle()
2621 time_before_eq64(vtime + cost, now.vnow)) { in ioc_rqos_throttle()
2622 iocg_commit_bio(iocg, bio, abs_cost, cost); in ioc_rqos_throttle()
2647 iocg_commit_bio(iocg, bio, abs_cost, cost); in ioc_rqos_throttle()
2730 u64 vtime, abs_cost, cost; in ioc_rqos_merge() local
2744 cost = adjust_inuse_and_calc_cost(iocg, vtime, abs_cost, &now); in ioc_rqos_merge()
2756 time_before_eq64(atomic64_read(&iocg->vtime) + cost, now.vnow)) { in ioc_rqos_merge()
2757 iocg_commit_bio(iocg, bio, abs_cost, cost); in ioc_rqos_merge()
2775 iocg_commit_bio(iocg, bio, abs_cost, cost); in ioc_rqos_merge()