Skip to contentSkip to conversation

virtio-blk: fix remove oops

PATCH Applied Marcelo Tosatti 2 participants 2 messages Apr 24, 2008

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

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

drivers/block/virtio_blk.c +0 -2
index 0cfbe8c..6231097 100644
@@ -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);
#1 lore raw
Quoted 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_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

Thanks, applied!

Rusty.