aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJens Axboe <axboe@fb.com>2016-12-07 10:43:31 -0500
committerJens Axboe <axboe@fb.com>2016-12-09 11:03:02 -0500
commit70b3ea056f3074be6d9256c312b64c0d90a4a683 (patch)
tree45c1cf0e0d366fcc74fe9f33386818c86f88d0df
parentf04c3df3efeca0d226aeff7ef595e12a0b807ab2 (diff)
elevator: make the rqhash helpers exported
Signed-off-by: Jens Axboe <axboe@fb.com> Reviewed-by: Hannes Reinecke <hare@suse.com>
-rw-r--r--block/elevator.c8
-rw-r--r--include/linux/elevator.h5
2 files changed, 9 insertions, 4 deletions
diff --git a/block/elevator.c b/block/elevator.c
index a18a5db274e4..40f0c04e5ad3 100644
--- a/block/elevator.c
+++ b/block/elevator.c
@@ -248,13 +248,13 @@ static inline void __elv_rqhash_del(struct request *rq)
248 rq->rq_flags &= ~RQF_HASHED; 248 rq->rq_flags &= ~RQF_HASHED;
249} 249}
250 250
251static void elv_rqhash_del(struct request_queue *q, struct request *rq) 251void elv_rqhash_del(struct request_queue *q, struct request *rq)
252{ 252{
253 if (ELV_ON_HASH(rq)) 253 if (ELV_ON_HASH(rq))
254 __elv_rqhash_del(rq); 254 __elv_rqhash_del(rq);
255} 255}
256 256
257static void elv_rqhash_add(struct request_queue *q, struct request *rq) 257void elv_rqhash_add(struct request_queue *q, struct request *rq)
258{ 258{
259 struct elevator_queue *e = q->elevator; 259 struct elevator_queue *e = q->elevator;
260 260
@@ -263,13 +263,13 @@ static void elv_rqhash_add(struct request_queue *q, struct request *rq)
263 rq->rq_flags |= RQF_HASHED; 263 rq->rq_flags |= RQF_HASHED;
264} 264}
265 265
266static void elv_rqhash_reposition(struct request_queue *q, struct request *rq) 266void elv_rqhash_reposition(struct request_queue *q, struct request *rq)
267{ 267{
268 __elv_rqhash_del(rq); 268 __elv_rqhash_del(rq);
269 elv_rqhash_add(q, rq); 269 elv_rqhash_add(q, rq);
270} 270}
271 271
272static struct request *elv_rqhash_find(struct request_queue *q, sector_t offset) 272struct request *elv_rqhash_find(struct request_queue *q, sector_t offset)
273{ 273{
274 struct elevator_queue *e = q->elevator; 274 struct elevator_queue *e = q->elevator;
275 struct hlist_node *next; 275 struct hlist_node *next;
diff --git a/include/linux/elevator.h b/include/linux/elevator.h
index f219c9aed360..b276e9ef0e0b 100644
--- a/include/linux/elevator.h
+++ b/include/linux/elevator.h
@@ -108,6 +108,11 @@ struct elevator_type
108 108
109#define ELV_HASH_BITS 6 109#define ELV_HASH_BITS 6
110 110
111void elv_rqhash_del(struct request_queue *q, struct request *rq);
112void elv_rqhash_add(struct request_queue *q, struct request *rq);
113void elv_rqhash_reposition(struct request_queue *q, struct request *rq);
114struct request *elv_rqhash_find(struct request_queue *q, sector_t offset);
115
111/* 116/*
112 * each queue has an elevator_queue associated with it 117 * each queue has an elevator_queue associated with it
113 */ 118 */