Lines Matching defs:order
45 int order;
86 static u32 mthca_buddy_alloc(struct mthca_buddy *buddy, int order)
94 for (o = order; o <= buddy->max_order; ++o) {
107 while (o > order) {
115 seg <<= order;
120 static void mthca_buddy_free(struct mthca_buddy *buddy, u32 seg, int order)
122 seg >>= order;
126 while (test_bit(seg ^ 1, buddy->bits[order])) {
127 clear_bit(seg ^ 1, buddy->bits[order]);
129 ++order;
132 set_bit(seg, buddy->bits[order]);
182 static u32 mthca_alloc_mtt_range(struct mthca_dev *dev, int order,
185 u32 seg = mthca_buddy_alloc(buddy, order);
192 seg + (1 << order) - 1)) {
193 mthca_buddy_free(buddy, seg, order);
214 mtt->order = 0;
216 ++mtt->order;
218 mtt->first_seg = mthca_alloc_mtt_range(dev, mtt->order, buddy);
237 mthca_buddy_free(mtt->buddy, mtt->first_seg, mtt->order);
241 mtt->first_seg + (1 << mtt->order) - 1);
941 mthca_warn(dev, "MTT table of order %d is too small.\n",