From: Mike Miller This patch fixes a bug in cciss_remove_one. A set of braces was missing for the if statement causing an Oops on driver unload. Signed-off-by: Mike Miller Signed-off-by: Andrew Morton --- drivers/block/cciss.c | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) diff -puN drivers/block/cciss.c~cciss-bug-fix-in-cciss_remove_one drivers/block/cciss.c --- devel/drivers/block/cciss.c~cciss-bug-fix-in-cciss_remove_one 2005-09-09 19:02:33.000000000 -0700 +++ devel-akpm/drivers/block/cciss.c 2005-09-09 19:02:33.000000000 -0700 @@ -3097,9 +3097,10 @@ static void __devexit cciss_remove_one ( /* remove it from the disk list */ for (j = 0; j < NWD; j++) { struct gendisk *disk = hba[i]->gendisk[j]; - if (disk->flags & GENHD_FL_UP) - blk_cleanup_queue(disk->queue); + if (disk->flags & GENHD_FL_UP) { del_gendisk(disk); + blk_cleanup_queue(disk->queue); + } } pci_free_consistent(hba[i]->pdev, NR_CMDS * sizeof(CommandList_struct), _