mutex_lock(&q->sysfs_lock);
/* init elevator */
- if (elevator_init(q, NULL)) {
+ if (elevator_init(q)) {
mutex_unlock(&q->sysfs_lock);
goto out_exit_flush_rq;
}
int ret;
mutex_lock(&q->sysfs_lock);
- ret = elevator_init(q, NULL);
+ ret = elevator_init(q);
mutex_unlock(&q->sysfs_lock);
return ret;
e->type->ops.sq.elevator_deactivate_req_fn(q, rq);
}
-int elevator_init(struct request_queue *, char *);
+int elevator_init(struct request_queue *);
void elevator_exit(struct request_queue *, struct elevator_queue *);
int elv_register_queue(struct request_queue *q);
void elv_unregister_queue(struct request_queue *q);
kfree(e);
}
-int elevator_init(struct request_queue *q, char *name)
+int elevator_init(struct request_queue *q)
{
struct elevator_type *e = NULL;
int err;
if (unlikely(q->elevator))
return 0;
- if (name) {
- e = elevator_get(q, name, true);
- if (!e)
- return -EINVAL;
- }
-
/*
* Use the default elevator specified by config boot param for
* non-mq devices, or by config option. Don't try to load modules
* as we could be running off async and request_module() isn't
* allowed from async.
*/
- if (!e && !q->mq_ops && *chosen_elevator) {
+ if (!q->mq_ops && *chosen_elevator) {
e = elevator_get(q, chosen_elevator, false);
if (!e)
printk(KERN_ERR "I/O scheduler %s not found\n",