Lines Matching refs:index
59 QFQ_MAX_INDEX is the maximum index allowed for a group. We need
60 one bit per index.
67 ^.__grp->index = 0
72 The max group index corresponds to Lmax/w_min, where
99 * group with the smallest index that can support the L_i / r_i configured
102 * grp->index is the index of the group; and grp->slot_shift
146 /* group we belong to. In principle we would need the index,
170 unsigned int index; /* Group index. */
227 * Calculate a flow index, given its weight and maximum packet length.
228 * index = log_2(maxlen/weight) but we need to apply the scaling.
235 int index = 0;
241 index = __fls(size_map) + 1; /* basically a log_2 */
242 index -= !(slot_size - (1ULL << (index + min_slot_shift - 1)));
244 if (index < 0)
245 index = 0;
248 (unsigned long) ONE_FP/inv_w, maxlen, index);
250 return index;
731 /* return the pointer to the group with lowest index in the bitmap */
735 int index = __ffs(bitmap);
736 return &q->groups[index];
753 unsigned long mask = mask_from(q->bitmaps[ER], grp->index);
779 static void qfq_unblock_groups(struct qfq_sched *q, int index, u64 old_F)
781 unsigned long mask = mask_from(q->bitmaps[ER], index + 1);
790 mask = (1UL << index) - 1;
825 * The index of the slot in which the input aggregate agg is to be
832 * QFQ+ fully satisfies this bound to the slot index if the parameters
838 * the timestamps of agg are low enough that the slot index is never
844 * upper bound to the slot index guaranteed by QFQ+ grows to
851 * index is never higher than QFQ_MAX_SLOTS-2. This backward-shift may
857 * the slot index, and 2 < QFQ_MAX_SLOTS-2. Hence the aggregates whose
861 * The other event that may cause the slot index to be higher than 2
871 * may cause the above bound to the slot index to be violated for some
875 * quite complex, the above-discussed capping of the slot index is
883 unsigned int i; /* slot index in the bucket list */
929 grp->index, grp->full_slots);
945 * we move the index down (modulo QFQ_MAX_SLOTS) so we don't need to
1050 mask = mask_from(q->bitmaps[ER], agg->grp->index);
1192 __clear_bit(grp->index, &q->bitmaps[ER]);
1202 __clear_bit(grp->index, &q->bitmaps[ER]);
1204 __set_bit(grp->index, &q->bitmaps[s]);
1207 qfq_unblock_groups(q, grp->index, old_F);
1308 __clear_bit(grp->index, &q->bitmaps[IR]);
1309 __clear_bit(grp->index, &q->bitmaps[IB]);
1317 __set_bit(grp->index, &q->bitmaps[s]);
1385 __clear_bit(grp->index, &q->bitmaps[IR]);
1386 __clear_bit(grp->index, &q->bitmaps[EB]);
1387 __clear_bit(grp->index, &q->bitmaps[IB]);
1389 if (test_bit(grp->index, &q->bitmaps[ER]) &&
1390 !(q->bitmaps[ER] & ~((1UL << grp->index) - 1))) {
1391 mask = q->bitmaps[ER] & ((1UL << grp->index) - 1);
1399 __clear_bit(grp->index, &q->bitmaps[ER]);
1404 __clear_bit(grp->index, &q->bitmaps[ER]);
1405 __clear_bit(grp->index, &q->bitmaps[IR]);
1406 __clear_bit(grp->index, &q->bitmaps[EB]);
1407 __clear_bit(grp->index, &q->bitmaps[IB]);
1411 __set_bit(grp->index, &q->bitmaps[s]);
1452 grp->index = i;