diff --git a/block/elevator.c b/block/elevator.c index 23cfbe528be133608597b5da026dc6a9a400011f..e58928e809ea2094eaea19d32f31d2a0629f0792 100644 --- a/block/elevator.c +++ b/block/elevator.c @@ -155,9 +155,10 @@ static void elevator_setup_default(void) /* * If the given scheduler is not available, fall back to no-op. */ - if (!(e = elevator_find(chosen_elevator))) + if ((e = elevator_find(chosen_elevator))) + elevator_put(e); + else strcpy(chosen_elevator, "noop"); - elevator_put(e); } static int __init elevator_setup(char *str)