 /* * don't bother sizing down */ if (new_depth <= bqt->real_max_depth) { bqt->max_depth = new_depth; return 0; } 
int blk_queue_resize_tags(request_queue_t *q, int new_depth){	struct blk_queue_tag *bqt = q->queue_tags;	struct request **tag_index;	unsigned long *tag_map;	int bits, max_depth;	if (!bqt)		return -ENXIO;	/*	 * don't bother sizing down	 */	if (new_depth <= bqt->real_max_depth) {		bqt->max_depth = new_depth;		return 0;	}	/*	 * save the old state info, so we can copy it back	 */	tag_index = bqt->tag_index;	tag_map = bqt->tag_map;	max_depth = bqt->real_max_depth;	if (init_tag_map(q, bqt, new_depth))		return -ENOMEM;	memcpy(bqt->tag_index, tag_index, max_depth * sizeof(struct request *));	bits = max_depth / BLK_TAGS_PER_LONG;	memcpy(bqt->tag_map, tag_map, bits * sizeof(unsigned long));	kfree(tag_index);	kfree(tag_map);	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/fa72b903f75e4f0f0b2c2feed093005167da4023/ll_rw_blk.c/clean/drivers/block/ll_rw_blk.c