Skip to contentSkip to conversation

let elv_register() return void

PATCH In review Adrian Bunk 2 participants 2 messages Dec 12, 2007 Block layer

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 let elv_register() return void

elv_register() always returns 0, and there isn't anything it does where it should return an error (the only error condition is so grave that it's handled with a BUG_ON).

---

 block/as-iosched.c       |    4 +++-
 block/cfq-iosched.c      |    8 ++------
 block/deadline-iosched.c |    4 +++-
 block/elevator.c         |    3 +--
 block/noop-iosched.c     |    4 +++-
 include/linux/elevator.h |    2 +-
 6 files changed, 13 insertions(+), 12 deletions(-)

9db70d828b748473c55e2b8f61f993feebd7144e

block/as-iosched.c +3 -1
index dc715a5..46f56ce 100644
@@ -1463,7 +1463,9 @@ static struct elevator_type iosched_as = {
 
 static int __init as_init(void)
 {
-	return elv_register(&iosched_as);
+	elv_register(&iosched_as);
+
+	return 0;
 }
 
 static void __exit as_exit(void)
block/cfq-iosched.c +2 -6
index 0b4a479..13553e0 100644
@@ -2279,8 +2279,6 @@ static struct elevator_type iosched_cfq = {
 
 static int __init cfq_init(void)
 {
-	int ret;
-
 	/*
 	 * could be 0 on HZ < 1000 setups
 	 */
@@ -2292,11 +2290,9 @@ static int __init cfq_init(void)
 	if (cfq_slab_setup())
 		return -ENOMEM;
 
-	ret = elv_register(&iosched_cfq);
-	if (ret)
-		cfq_slab_kill();
+	elv_register(&iosched_cfq);
 
-	return ret;
+	return 0;
 }
 
 static void __exit cfq_exit(void)
block/deadline-iosched.c +3 -1
index a054eef..342448c 100644
@@ -467,7 +467,9 @@ static struct elevator_type iosched_deadline = {
 
 static int __init deadline_init(void)
 {
-	return elv_register(&iosched_deadline);
+	elv_register(&iosched_deadline);
+
+	return 0;
 }
 
 static void __exit deadline_exit(void)
block/elevator.c +1 -2
index 446aea2..e452deb 100644
@@ -960,7 +960,7 @@ void elv_unregister_queue(struct request_queue *q)
 		__elv_unregister_queue(q->elevator);
 }
 
-int elv_register(struct elevator_type *e)
+void elv_register(struct elevator_type *e)
 {
 	char *def = "";
 
@@ -975,7 +975,6 @@ int elv_register(struct elevator_type *e)
 				def = " (default)";
 
 	printk(KERN_INFO "io scheduler %s registered%s\n", e->elevator_name, def);
-	return 0;
 }
 EXPORT_SYMBOL_GPL(elv_register);
 
block/noop-iosched.c +3 -1
index 7563d8a..c23e029 100644
@@ -101,7 +101,9 @@ static struct elevator_type elevator_noop = {
 
 static int __init noop_init(void)
 {
-	return elv_register(&elevator_noop);
+	elv_register(&elevator_noop);
+
+	return 0;
 }
 
 static void __exit noop_exit(void)
include/linux/elevator.h +1 -1
index e8f4213..639624b 100644
@@ -119,7 +119,7 @@ extern void elv_put_request(struct request_queue *, struct request *);
 /*
  * io scheduler registration
  */
-extern int elv_register(struct elevator_type *);
+extern void elv_register(struct elevator_type *);
 extern void elv_unregister(struct elevator_type *);
 
 /*
#1 lore raw
Quoted 3 lines · Adrian Bunk

elv_register() always returns 0, and there isn't anything it does where it should return an error (the only error condition is so grave that it's handled with a BUG_ON).

Principally it could return -EEXIST for the BUG_ON(), but there's little point. I've applied your patch, thanks.

Signature · 1 line
Jens Axboe