virtio-blk: fix remove oops
Subsystems (3)
PATCH 1/1 virtio-blk: fix remove oops
Do not unregister the major at device remove, since there might be another device instances around.
(qemu) pci_del 0 11
(qemu) ACPI: PCI interrupt for device 0000:00:0b.0 disabled (qemu) pci_del 0 10
(qemu) ------------[ cut here ]------------
WARNING: at block/genhd.c:126 unregister_blkdev+0x74/0x9e()
ACPI: PCI interrupt for device 0000:00:0a.0 disabled
Signed-off-by Marcelo Tosatti <[email protected]>
drivers/block/virtio_blk.c +0 -2
@@ -289,7 +289,6 @@ out:static void virtblk_remove (struct virtio_device *vdev) {struct virtio_blk *vblk = vdev->priv; -int major = vblk->disk->major;/* Nothing should be pending. */ BUG_ON (!list_empty (&vblk->reqs));
@@ -299,7 +298,6 @@ static void virtblk_remove(struct virtio_device *vdev)blk_cleanup_queue (vblk->disk->queue);put_disk (vblk->disk); -unregister_blkdev (major,"virtblk" );mempool_destroy (vblk->pool); vdev->config->del_vq (vblk->vq);kfree (vblk);
Rusty Russell
AppliedQuoted 9 lines · On Friday 25 April 2008 04:49:53 Marcelo Tosatti wrote:
Do not unregister the major at device remove, since there might be another device instances around.
(qemu)
pci_del0 11
(qemu) ACPI: PCI interrupt for device 0000:00:0b.0 disabled (qemu)pci_del0 10
(qemu) ------------[ cut here ]------------WARNING: at block/genhd.c:126 unregister_blkdev+0x74/0x9e()ACPI: PCI interrupt for device 0000:00:0a.0 disabled
Thanks, applied!
Rusty.