Commit 82b3a0c2 authored by Andrew Morton's avatar Andrew Morton Committed by Linus Torvalds

[PATCH] cciss: rmmod oops fix

From: mikem@beardog.cca.cpqcorp.net

This patch fixes an Oops when unloading the driver.  Bug fix.  Please
consider this for inclusion.

All of the patches sent out are needed to get the driver in the 2.6 tree up
to the level of the driver that is in the 2.4 tree, excluding this patch
which is not required in 2.4.

More patches will be coming.  They include multi-path failover support,
support for more than 8 controllers, and msi support.  Presently working on a
per logical volume queueing scheme.
parent 421385de
......@@ -2685,7 +2685,6 @@ static void __devexit cciss_remove_one (struct pci_dev *pdev)
pci_set_drvdata(pdev, NULL);
iounmap((void*)hba[i]->vaddr);
cciss_unregister_scsi(i); /* unhook from SCSI subsystem */
blk_cleanup_queue(hba[i]->queue);
unregister_blkdev(COMPAQ_CISS_MAJOR+i, hba[i]->devname);
remove_proc_entry(hba[i]->devname, proc_cciss);
......@@ -2696,6 +2695,7 @@ static void __devexit cciss_remove_one (struct pci_dev *pdev)
del_gendisk(disk);
}
blk_cleanup_queue(hba[i]->queue);
pci_free_consistent(hba[i]->pdev, NR_CMDS * sizeof(CommandList_struct),
hba[i]->cmd_pool, hba[i]->cmd_pool_dhandle);
pci_free_consistent(hba[i]->pdev, NR_CMDS * sizeof( ErrorInfo_struct),
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment