diff options
author | Tejun Heo <tj@kernel.org> | 2012-03-05 16:14:57 -0500 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2012-03-06 15:27:21 -0500 |
commit | b2fab5acd28ead6f0dd6c3996ba23f0ef1772f15 (patch) | |
tree | b0b96984e1a4d9c856edc9ddfc36e427951c5a86 /block/noop-iosched.c | |
parent | 5a5bafdc396b1da7570f84fb96a0f8a288970c5e (diff) |
elevator: make elevator_init_fn() return 0/-errno
elevator_ops->elevator_init_fn() has a weird return value. It returns
a void * which the caller should assign to q->elevator->elevator_data
and %NULL return denotes init failure.
Update such that it returns integer 0/-errno and sets elevator_data
directly as necessary.
This makes the interface more conventional and eases further cleanup.
Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: Vivek Goyal <vgoyal@redhat.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block/noop-iosched.c')
-rw-r--r-- | block/noop-iosched.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/block/noop-iosched.c b/block/noop-iosched.c index 413a0b1d788c..5d1bf70e33d5 100644 --- a/block/noop-iosched.c +++ b/block/noop-iosched.c | |||
@@ -59,15 +59,17 @@ noop_latter_request(struct request_queue *q, struct request *rq) | |||
59 | return list_entry(rq->queuelist.next, struct request, queuelist); | 59 | return list_entry(rq->queuelist.next, struct request, queuelist); |
60 | } | 60 | } |
61 | 61 | ||
62 | static void *noop_init_queue(struct request_queue *q) | 62 | static int noop_init_queue(struct request_queue *q) |
63 | { | 63 | { |
64 | struct noop_data *nd; | 64 | struct noop_data *nd; |
65 | 65 | ||
66 | nd = kmalloc_node(sizeof(*nd), GFP_KERNEL, q->node); | 66 | nd = kmalloc_node(sizeof(*nd), GFP_KERNEL, q->node); |
67 | if (!nd) | 67 | if (!nd) |
68 | return NULL; | 68 | return -ENOMEM; |
69 | |||
69 | INIT_LIST_HEAD(&nd->queue); | 70 | INIT_LIST_HEAD(&nd->queue); |
70 | return nd; | 71 | q->elevator->elevator_data = nd; |
72 | return 0; | ||
71 | } | 73 | } |
72 | 74 | ||
73 | static void noop_exit_queue(struct elevator_queue *e) | 75 | static void noop_exit_queue(struct elevator_queue *e) |