Prevent crash when loading "cpqfc" with Tachyon XL2 cards (against 2.4.20-rc1-ac1)
PATCH 1/1 Prevent crash when loading "cpqfc" with Tachyon XL2 cards (against 2.4.20-rc1-ac1)
Hi,
please apply the appended patch to "drivers/scsi/cpqfcTSinit.c". It
adds a call to "pci_enable_device" which prevents a hard crash when loading the driver on a Tachyon XL2 based HP card (IA64 platform). The patch is against 2.4.20-rc1-ac1, but should apply to mainline.
In general, is someone working making the Tachyon XL2 cards really work
with the cpqfc driver? I am very interested in that. It is really sad to see those 60 FC disks idle when Linux is booted on our rx5670 :-( I would love to help out with testing and experimenting.
The current problems (after applying this patch are):
- unable to read WWN from NVRAM
- no GBIC found
- no link state
- no disks found
Thanks
Martin
Signature · 10 lines
Martin Knoblauch Senior System Architect MSC.software GmbH Am Moosfeld 13 D-81829 Muenchen, Germany e-mail: [email protected] http://www.mscsoftware.com Phone/Fax: +49-89-431987-189 / -7189 Mobile: +49-174-3069245
cpqfcTSinit.c renamed from cpqfcTSinit.c-orig +5 -0
@@ -242,6 +242,10 @@while ((PciDev =pci_find_device (cpqfc_boards[i].vendor_id, cpqfc_boards[i].device_id, PciDev))) { +if (pci_enable_device (PciDev) !=0 ) { +printk (KERN_WARNING "cpqfc: pci_enable_devive failed, skipping.\n" ); +continue ; + }if (pci_set_dma_mask (PciDev,CPQFCTS_DMA_MASK ) !=0 ) {printk (KERN_WARNING "cpqfc: HBA cannot support required DMA mask, skipping.\n" );continue ;
@@ -411,6 +415,7 @@// can we find an FC device mapping to this SCSI target? DumCmnd.channel = ScsiDev->channel;// For searching DumCmnd.target = ScsiDev->id; + DumCmnd.lun = ScsiDev->lun; pLoggedInPort = fcFindLoggedInPort(fcChip, &DumCmnd, // search Scsi Nexus 0, // DON'T search linked list for FC port id NULL, // DON'T search linked list for FC WWN