Lines Matching full:limit
82 /* Records completed count and recalculates the queue limit */
85 unsigned int inprogress, prev_inprogress, limit; in dql_completed() local
102 limit = dql->limit; in dql_completed()
103 ovlimit = POSDIFF(num_queued - dql->num_completed, limit); in dql_completed()
112 * - The queue was over-limit in the last interval, in dql_completed()
115 * - The queue was over-limit in the previous interval and in dql_completed()
121 * When queue is starved increase the limit by the amount in dql_completed()
123 * plus any previous over-limit. in dql_completed()
125 limit += POSDIFF(completed, dql->prev_num_queued) + in dql_completed()
131 * Queue was not starved, check if the limit can be decreased. in dql_completed()
136 * the amount needed to prevent starvation, the queue limit in dql_completed()
145 * - The queue limit plus previous over-limit minus twice in dql_completed()
148 * of the limit. in dql_completed()
150 * was not part of non-zero previous over-limit. That is in dql_completed()
154 slack = POSDIFF(limit + dql->prev_ovlimit, in dql_completed()
166 limit = POSDIFF(limit, dql->lowest_slack); in dql_completed()
172 /* Enforce bounds on limit */ in dql_completed()
173 limit = clamp(limit, dql->min_limit, dql->max_limit); in dql_completed()
175 if (limit != dql->limit) { in dql_completed()
176 dql->limit = limit; in dql_completed()
180 dql->adj_limit = limit + completed; in dql_completed()
193 dql->limit = 0; in dql_reset()