Messages in this thread | | | Date | Thu, 20 Dec 2001 10:57:41 -0800 (PST) | From | Stephen Cameron <> | Subject | [PATCH] cciss 2.5.1 for 2.5.1 |
| |
I wrote: > [...] > > Here is a new patch against 2.5.1-pre11: > > http://www.geocities.com/smcameron/cciss_2.5.0_for_2.5.1-pre11.patch.gz > > Having played with it some more, I see it is seriously flawed > in the area of SCSI tape support and locking. [...]
Ok. I think I fixed all that. (Main problem was how I was allocating my commands for SCSI side of the driver, this bug has been there a long time, I'm surprised it lasted as long as it did without me seeing it.)
I tested it with 2 tape drives going simultaneously on a 2 processor system, which was embarassingly fatal for the previous.drivers.
http://www.geocities.com/smcameron/cciss_2.5.1_for_2.5.1.patch.gz
About the prior patch, had some complaint that first arg of pci_*_consistent was NULL in some places in the driver. So I included comments explaining why it is that way. (Documentation/DMA-mapping.txt says this is permissible.)
Another complaint that various explicit initializations to NULL or 0 should be left up to the compiler. Whatever. Change them if you must.
An excerpt from the patch: Thu Dec 20 09:43:04 CST 2001 v. 2.5.1 * Fixed longstanding problem in allocation of SCSI commands which meant physical addresses of cmds for tape drives could be wrong. Problem showed easily if 2 tape drives used simultaneously, though in theory it could show with only 1 tape drive. * Fixed races/deadlocks resulting from first attempt at removing io_request_lock * Changed pci_alloc_consistent call in cciss_scsi.c so that the SCSI command pool would be guaranteed to have addresses that fit through the 32 bit command register. Thu Dec 13 16:39:05 CST 2001 v. 2.5.0 * Removal of io_request_lock for 2.5.x kernels. * no longer sets block_size to zero for volumes where read capacity fails (caused div by zero) * reset MAXSGENTRIES back to 31 (controllers reject 32) Thu Oct 4 14:29:15 CDT 2001 Changelog begins. v. 2.4.21 * Added support for SCSI tape drives (Steve Cameron) * Added support for dynamically adding and removing logical volumes, This implies that the disk index ("x" in /dev/cciss/c*b*dx*) is no longer a contiguous sequential series (e.g. 0,1,2,3) as it now maps to logical volume numbers directly and thus there may be gaps. (Charles White) -- steve
__________________________________________________ Do You Yahoo!? Check out Yahoo! Shopping and Yahoo! Auctions for all of your unique holiday gifts! Buy at http://shopping.yahoo.com or bid at http://auctions.yahoo.com - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |