• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6.36/block/

Lines Matching defs:bqt

31  * @bqt:	the tag map to free
33 * Tries to free the specified @bqt. Returns true if it was
36 static int __blk_free_tags(struct blk_queue_tag *bqt)
40 retval = atomic_dec_and_test(&bqt->refcnt);
42 BUG_ON(find_first_bit(bqt->tag_map, bqt->max_depth) <
43 bqt->max_depth);
45 kfree(bqt->tag_index);
46 bqt->tag_index = NULL;
48 kfree(bqt->tag_map);
49 bqt->tag_map = NULL;
51 kfree(bqt);
67 struct blk_queue_tag *bqt = q->queue_tags;
69 if (!bqt)
72 __blk_free_tags(bqt);
80 * @bqt: the tag map to free
82 * For externally managed @bqt frees the map. Callers of this
86 void blk_free_tags(struct blk_queue_tag *bqt)
88 if (unlikely(!__blk_free_tags(bqt)))
222 struct blk_queue_tag *bqt = q->queue_tags;
227 if (!bqt)
236 if (new_depth <= bqt->real_max_depth) {
237 bqt->max_depth = new_depth;
245 if (atomic_read(&bqt->refcnt) != 1)
251 tag_index = bqt->tag_index;
252 tag_map = bqt->tag_map;
253 max_depth = bqt->real_max_depth;
255 if (init_tag_map(q, bqt, new_depth))
258 memcpy(bqt->tag_index, tag_index, max_depth * sizeof(struct request *));
260 memcpy(bqt->tag_map, tag_map, nr_ulongs * sizeof(unsigned long));
284 struct blk_queue_tag *bqt = q->queue_tags;
289 if (unlikely(tag >= bqt->real_max_depth))
296 if (unlikely(bqt->tag_index[tag] == NULL))
300 bqt->tag_index[tag] = NULL;
302 if (unlikely(!test_bit(tag, bqt->tag_map))) {
311 clear_bit_unlock(tag, bqt->tag_map);
335 struct blk_queue_tag *bqt = q->queue_tags;
354 max_depth = bqt->max_depth;
364 tag = find_first_zero_bit(bqt->tag_map, max_depth);
368 } while (test_and_set_bit_lock(tag, bqt->tag_map));
376 bqt->tag_index[tag] = rq;