diff --git a/drivers/block/floppy.c b/drivers/block/floppy.c index 7c35366f601c..b6d5d60f7693 100644 --- a/drivers/block/floppy.c +++ b/drivers/block/floppy.c @@ -4732,8 +4732,11 @@ static int __init do_floppy_init(void) err = device_add_disk(&floppy_device[drive].dev, disks[drive][0], NULL); - if (err) + if (err) { + platform_device_unregister(&floppy_device[drive]); + registered[drive] = false; goto out_remove_drives; + } } return 0;