diff --git a/[refs] b/[refs] index 6e1400249ac9..fccdba2661d8 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2f56debd77a8f52f1ac1d3c3d89cc7ce5e083230 +refs/heads/master: 48f15b93b2c9f4ec9b8af08ab78f7a27db7c8378 diff --git a/trunk/drivers/block/nbd.c b/trunk/drivers/block/nbd.c index 018753c59b8e..b53fdb0a282c 100644 --- a/trunk/drivers/block/nbd.c +++ b/trunk/drivers/block/nbd.c @@ -655,6 +655,7 @@ static int __init nbd_init(void) for (i = 0; i < nbds_max; i++) { struct gendisk *disk = alloc_disk(1); + elevator_t *old_e; if (!disk) goto out; nbd_dev[i].disk = disk; @@ -668,6 +669,11 @@ static int __init nbd_init(void) put_disk(disk); goto out; } + old_e = disk->queue->elevator; + if (elevator_init(disk->queue, "deadline") == 0 || + elevator_init(disk->queue, "noop") == 0) { + elevator_exit(old_e); + } } if (register_blkdev(NBD_MAJOR, "nbd")) {