struct request *rq = q->elevator->ops->elevator_next_req_fn(q); 
struct request *rq;  if (unlikely(list_empty(&q->queue_head) && !q->elevator->ops->elevator_dispatch_fn(q, 0))) return NULL;  rq = list_entry_rq(q->queue_head.next); 
static inline struct request *__elv_next_request(request_queue_t *q){	struct request *rq = q->elevator->ops->elevator_next_req_fn(q);	/*	 * if this is a barrier write and the device has to issue a	 * flush sequence to support it, check how far we are	 */	if (rq && blk_fs_request(rq) && blk_barrier_rq(rq)) {		BUG_ON(q->ordered == QUEUE_ORDERED_NONE);		if (q->ordered == QUEUE_ORDERED_FLUSH &&		    !blk_barrier_preflush(rq))			rq = blk_start_pre_flush(q, rq);	}	return rq;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/8922e16cf6269e668123acb1ae1fdc62b7a3a4fc/elevator.c/buggy/drivers/block/elevator.c