Lines Matching refs:request
26 typedef enum elv_merge (elevator_merge_fn) (struct request_queue *, struct request **,
29 typedef void (elevator_merge_req_fn) (struct request_queue *, struct request *, struct request *);
31 typedef void (elevator_merged_fn) (struct request_queue *, struct request *, enum elv_merge);
34 struct request *, struct bio *);
37 struct request *, struct request *);
40 struct request *, struct bio *);
44 typedef void (elevator_add_req_fn) (struct request_queue *, struct request *);
45 typedef struct request *(elevator_request_list_fn) (struct request_queue *, struct request *);
46 typedef void (elevator_completed_req_fn) (struct request_queue *, struct request *);
51 typedef int (elevator_set_req_fn) (struct request_queue *, struct request *,
53 typedef void (elevator_put_req_fn) (struct request *);
54 typedef void (elevator_activate_req_fn) (struct request_queue *, struct request *);
55 typedef void (elevator_deactivate_req_fn) (struct request_queue *, struct request *);
103 bool (*allow_merge)(struct request_queue *, struct request *, struct bio *);
105 int (*request_merge)(struct request_queue *q, struct request **, struct bio *);
106 void (*request_merged)(struct request_queue *, struct request *, enum elv_merge);
107 void (*requests_merged)(struct request_queue *, struct request *, struct request *);
109 void (*prepare_request)(struct request *, struct bio *bio);
110 void (*finish_request)(struct request *);
112 struct request *(*dispatch_request)(struct blk_mq_hw_ctx *);
114 void (*completed_request)(struct request *);
115 void (*started_request)(struct request *);
116 void (*requeue_request)(struct request *);
117 struct request *(*former_request)(struct request_queue *, struct request *);
118 struct request *(*next_request)(struct request_queue *, struct request *);
163 void elv_rqhash_del(struct request_queue *q, struct request *rq);
164 void elv_rqhash_add(struct request_queue *q, struct request *rq);
165 void elv_rqhash_reposition(struct request_queue *q, struct request *rq);
166 struct request *elv_rqhash_find(struct request_queue *q, sector_t offset);
185 extern void elv_dispatch_sort(struct request_queue *, struct request *);
186 extern void elv_dispatch_add_tail(struct request_queue *, struct request *);
187 extern void elv_add_request(struct request_queue *, struct request *, int);
188 extern void __elv_add_request(struct request_queue *, struct request *, int);
189 extern enum elv_merge elv_merge(struct request_queue *, struct request **,
191 extern void elv_merge_requests(struct request_queue *, struct request *,
192 struct request *);
193 extern void elv_merged_request(struct request_queue *, struct request *,
195 extern void elv_bio_merged(struct request_queue *q, struct request *,
197 extern bool elv_attempt_insert_merge(struct request_queue *, struct request *);
198 extern void elv_requeue_request(struct request_queue *, struct request *);
199 extern struct request *elv_former_request(struct request_queue *, struct request *);
200 extern struct request *elv_latter_request(struct request_queue *, struct request *);
202 extern void elv_completed_request(struct request_queue *, struct request *);
203 extern int elv_set_request(struct request_queue *q, struct request *rq,
205 extern void elv_put_request(struct request_queue *, struct request *);
221 extern bool elv_bio_merge_ok(struct request *, struct bio *);
228 extern struct request *elv_rb_former_request(struct request_queue *, struct request *);
229 extern struct request *elv_rb_latter_request(struct request_queue *, struct request *);
234 extern void elv_rb_add(struct rb_root *, struct request *);
235 extern void elv_rb_del(struct rb_root *, struct request *);
236 extern struct request *elv_rb_find(struct rb_root *, sector_t);
258 #define rb_entry_rq(node) rb_entry((node), struct request, rb_node)
260 #define rq_entry_fifo(ptr) list_entry((ptr), struct request, queuelist)