[PATCH] Block: floppy, fix rmmod lockup

From: Jiri Slaby
Date: Mon Mar 10 2008 - 16:21:59 EST


floppy rmmod locks up when no such hardware was initialized, since there is
nobody to wake the remove code up. Remove the completion, because release
is called during platform_unregister anyway.

Signed-off-by: Jiri Slaby <jirislaby@xxxxxxxxx>
---
drivers/block/floppy.c | 5 -----
1 files changed, 0 insertions(+), 5 deletions(-)

diff --git a/drivers/block/floppy.c b/drivers/block/floppy.c
index 32c79a5..7652e87 100644
--- a/drivers/block/floppy.c
+++ b/drivers/block/floppy.c
@@ -217,7 +217,6 @@ static int use_virtual_dma;
*/

static DEFINE_SPINLOCK(floppy_lock);
-static struct completion device_release;

static unsigned short virtual_dma_port = 0x3f0;
irqreturn_t floppy_interrupt(int irq, void *dev_id);
@@ -4144,7 +4143,6 @@ DEVICE_ATTR(cmos,S_IRUGO,floppy_cmos_show,NULL);

static void floppy_device_release(struct device *dev)
{
- complete(&device_release);
}

static struct platform_device floppy_device[N_DRIVE];
@@ -4539,7 +4537,6 @@ void cleanup_module(void)
{
int drive;

- init_completion(&device_release);
blk_unregister_region(MKDEV(FLOPPY_MAJOR, 0), 256);
unregister_blkdev(FLOPPY_MAJOR, "fd");

@@ -4564,8 +4561,6 @@ void cleanup_module(void)

/* eject disk, if any */
fd_eject(0);
-
- wait_for_completion(&device_release);
}

module_param(floppy, charp, 0);
--
1.5.4.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/