3ware driver in 2.4.x and 2.5.x not compatible with 6x00 series cards
According to 3Ware, the driver in the 2.4.x and (I assume) 2.5.x is no longer compatible with the 6xxx series cards.
I was instructed in the below conversation (3ware contact name has been removed) that anyone using 6xxx cards would need to downgrade to the .016 version of the driver. This means that a single kernel build can no longer function on multiple machines, you have to have a special build for machines using the 6xxx card, and a different build for 7/8xxxx.
At the very least, a warning should be placed in the driver source/Configure help noting this incompatibility.
As this is something with a significant safety impact (in our case, I believe it may have been responsible for some filesystem corruption in addition to all of the system hangs), the driver in the distribute kernel should probably refuse to attach to a 6xxx card if it is known to be incompatible.
I don't know what we'll do with this situation when we move to 2.6, cause right now, it looks like we are completely screwed. The old driver obviously will not compile on 2.6 since the API's have changed.
We have around 30 machines with 7xxx cards, and another 15 or so with 6xxx cards. I'd hate to think of how many other people have purchased 6xxx cards and will not be able to upgrade to newer distributions or to 2.6 without buying new hardware.
-- Nathan
------------------------------------------------------------
Nathan Neulinger EMail: [email protected]
University of Missouri - Rolla Phone: (573) 341-4841
Computing Services Fax: (573) 341-4216
We provide the source for both 2.4.x and 2.2.x with v16 so users can recompile
against any kernels.
-----Original Message-----
From: Neulinger, Nathan [mailto:[email protected]]
Sent: Wednesday, December 18, 2002 9:45 AM
Subject: RE: 3ware logs
This isn't something you intend to fix? What happens when someone with a 6xxx card wants to put in a new kernel and the old version of the driver doesn't compile with the new kernel?
I could understand if the driver weren't included in the standard kernel source, but it is, and from what you're saying it is incompatible with 6xxx. That will put anyone who wants to upgrade their O/S in a very bad spot, especially when the kernel is already built with support with the built-in driver.
-- Nathan
------------------------------------------------------------
Nathan Neulinger EMail: [email protected]
University of Missouri - Rolla Phone: (573) 341-4841
Computing Services Fax: (573) 341-4216
Quoted 294 lines
-----Original Message-----
Sent: Wednesday, December 18, 2002 11:44 AM
To: Neulinger, Nathan
Subject: RE: 3ware logsyou need to use driver v16 for firmware release 6.9 because newer drivers
for the
7xxx and 8xxx series in part of firmware changes etc....in some cases, it
may
work but most won't-----Original Message-----
From: Neulinger, Nathan [mailto:[email protected]]
Sent: Wednesday, December 18, 2002 9:39 AM
Subject: RE: 3ware logsThis appears to get rid of the symptom on this machine. Do you have some
idea of when the bug was introduced, or what is wrong with the current driver? I'd hate to have to build a special kernel with a downgraded driver
for any of my machines running w/ 6xxx boards.-- Nathan
------------------------------------------------------------
Nathan Neulinger EMail: [email protected]
University of Missouri - Rolla Phone: (573) 341-4841
Computing Services Fax: (573) 341-4216Quoted 11 lines
-----Original Message-----
From: Neulinger, Nathan
Sent: Wednesday, December 18, 2002 11:22 AM
Subject: RE: 3ware logsIs that code still compile compatible with current kernels? I cannot downgrade the kernel to anything prior to 2.4.20-pre7 due to other dependencies, but if it's compile compatible I can replace the
3w-xxxx.cfile in the kernel and recompile.Quoted 32 lines
-- Nathan
------------------------------------------------------------
Nathan Neulinger EMail: [email protected]
University of Missouri - Rolla Phone: (573) 341-4841
Computing Services Fax: (573) 341-4216Quoted 24 lines
-----Original Message-----
Sent: Wednesday, December 18, 2002 11:18 AM
To: Neulinger, Nathan
Subject: RE: 3ware logscan you please downgrade the driver to v16 which was the last release for
the 6xxx
series cards ? Thanks
http://www.3ware.com/support/download.asp?code=3&id=6.9&softty
pe=Driver-----Original Message-----
From: Neulinger, Nathan [mailto:[email protected]]
Sent: Wednesday, December 18, 2002 8:50 AM
Subject: RE: 3ware logsWe're just going to try replacing the card, as I can't leave this server
hanging every few minutes. Got anything else you want meto look at?
Quoted 19 lines
Quoted 19 lines
-- Nathan
------------------------------------------------------------
Nathan Neulinger EMail: [email protected]
University of Missouri - Rolla Phone: (573) 341-4841
Computing Services Fax: (573) 341-4216Quoted 7 lines
-----Original Message-----
Sent: Tuesday, December 17, 2002 5:55 PM
To: Neulinger, Nathan
Subject: RE: 3ware logsdoes it go away if you update it driver v31 which the
latest driver ?
Quoted 2 lines
Quoted 7 lines
Quoted 7 lines
Quoted 7 lines
-----Original Message-----
From: Nathan Neulinger [mailto:[email protected]]
Sent: Tuesday, December 17, 2002 3:42 PM
Subject: RE: 3ware logsI had recently updated this card to a freshly download
most recent
Quoted 15 lines
Quoted 15 lines
Quoted 15 lines
firmware. 6.9 I think. Symptom did not change.
-- Nathan
Quoted 11 lines
which version of the driver ? output of :
cat/proc/scsi/3w-xxxx/0-----Original Message-----
From: Nathan Neulinger [mailto:[email protected]]
Sent: Tuesday, December 17, 2002 3:33 PM
Subject: Re: 3ware logsQuoted 15 lines
Quoted 6 lines
Quoted 6 lines
Quoted 1 line
Quoted 1 line
Can you please send the 3dm logs (details page, error
log) and kernel
Quoted 4 lines
Quoted 2 lines
logs if they
are available ? ThanksThere are no relevant events in 3dm. (Nothing related,
just a few
Quoted 8 lines
Quoted 8 lines
Quoted 8 lines
scattered unrelated power resets / rebuilds.)
Kernel logs look basically all the same:
Dec 17 03:28:06 sysinst kernel: 3w-xxxx: Unknown ioctl 0x46. Dec 17 03:30:56 sysinst kernel: 3w-xxxx: Unknown ioctl 0x46. Dec 17 03:31:34 sysinst kernel: 3w-xxxx: scsi0: Unit#0: Command
Quoted 5 lines
Quoted 5 lines
Quoted 5 lines
Quoted 5 lines
(
0xdfeb4400) timed out, resetting card.Dec 17 03:31:34 sysinst kernel: 3w-xxxx: Unknown ioctl 0x46. Dec 17 03:32:02 sysinst kernel: 3w-xxxx: Unknown ioctl 0x46. Dec 17 03:32:30 sysinst kernel: 3w-xxxx: Unknown ioctl 0x46. Dec 17 03:33:07 sysinst kernel: 3w-xxxx: scsi0: Unit#0: Command
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
(
0xdfeb4400) timed out, resetting card.Dec 17 03:33:07 sysinst kernel: 3w-xxxx: Unknown ioctl 0x46. Dec 17 03:33:34 sysinst kernel: 3w-xxxx: Unknown ioctl 0x46. Dec 17 03:35:17 sysinst kernel: 3w-xxxx: scsi0: Unit#0: Command
Quoted 3 lines
Quoted 3 lines
Quoted 3 lines
Quoted 3 lines
(
0xdfeb4400) timed out, resetting card.Dec 17 03:36:19 sysinst kernel: 3w-xxxx: Unknown ioctl 0x46. Dec 17 03:39:42 sysinst kernel: 3w-xxxx: scsi0: Unit#0: Command
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
(
0xdfeb4400) timed out, resetting card.Dec 17 03:39:43 sysinst kernel: 3w-xxxx: Unknown ioctl 0x46. Dec 17 03:40:19 sysinst kernel: 3w-xxxx: Unknown ioctl 0x46. Dec 17 03:40:20 sysinst kernel: 3w-xxxx: scsi0: Unit#0: Command
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
Quoted 2 lines
(
0xdfeb9000) timed out, resetting card.Dec 17 03:41:01 sysinst kernel: 3w-xxxx: scsi0: Unit#0: Command
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
Quoted 4 lines
(
0xdfeb4400) timed out, resetting card.Dec 17 03:42:18 sysinst kernel: 3w-xxxx: Unknown ioctl 0x46. Dec 17 03:42:45 sysinst kernel: 3w-xxxx: Unknown ioctl 0x46. Dec 17 03:43:33 sysinst kernel: 3w-xxxx: scsi0: Unit#0: Command
Quoted 3 lines
Quoted 3 lines
Quoted 3 lines
Quoted 3 lines
(
0xdfeb4800) timed out, resetting card.Dec 17 03:44:28 sysinst kernel: 3w-xxxx: Unknown ioctl 0x46. Dec 17 03:46:10 sysinst kernel: 3w-xxxx: scsi0: Unit#0: Command
Quoted 123 lines
Quoted 122 lines
Quoted 9 lines
Quoted 5 lines
(
0xdfeb4600) timed out, resetting card.I've got those going back quite a while, but the content is
essentially
Quoted 3 lines
the same, only thing that changes is the command tag.
Quoted 11 lines
Quoted 1 line
Generally, it starts to occur whenever I do much heavy disk
activity.
Quoted 2 lines
On the other machines, with the 7400's, I don't see this
behavior, I get
Quoted 1 line
a random command timed out, but I've only seen a few of
those (under 10
Quoted 4 lines
total, and never repeatedly like this one).
I have not tried intentionally breaking the mirror and
seeing if the
Quoted 100 lines
Quoted 93 lines
symptom goes away.
Controller SCSI ID: 0
Monitor version:
ME6X 1.01.00.028
Firmware version:
FE6X 1.02.28.053
BIOS version:
BE6X 1.07.02.005
PCB version:
Rev2
Achip version:
V4.40
Pchip version:
V5.70
Model:
6200
Serial number:
Unknown
Unit count:
1
Unit 0
Status:
OK
Capacity:
27.22 GB (53174992 blocks)
Write Cache:
In Use
Configuration:
Mirror (RAID 1)
Subunit count:
2Subunit 0
Logical drive
status:
OK
Configuration:
RAID Disk
Physical drive
number:
0
Logical drive
number:
0
Subunit 1
Logical drive
status:
OK
Configuration:
RAID Disk
Physical drive
number:
1
Logical drive
number:
1
Drive count: 2
Port 0
Status:
OK
Capacity:
27.22 GB (53177040
blocks)
Model:
Maxtor 92720U8
Serial number:
C804MYKC
Unit number:
0
Drive Firmware:
Ðj+b
Port 1
Status:
OK
Capacity:
27.22 GB (53177040
blocks)
Model:
Maxtor 92720U8
Serial number:
C804HKTC
Unit number:
0
Drive Firmware:
Ðj+bSignature · 4 lines
------------------------------------------------------------ Nathan Neulinger EMail: [email protected] University of Missouri - Rolla Phone: (573) 341-4841 Computing Services Fax: (573) 341-4216
Quoted 5 lines · Nathan Neulinger
According to 3Ware, the driver in the 2.4.x and (I assume) 2.5.x is no longer compatible with the 6xxx series cards.
I don't know what we'll do with this situation when we move to 2.6, cause right now, it looks like we are completely screwed. The old driver obviously will not compile on 2.6 since the API's have changed.
Any idea at which point the 2.5 driver stopped working ? It may not be that much work to bring that version up to date as a 3ware-old.c driver in a worse-case scenario.
This would be huge code duplication however, and would be much better fixed by having the driver detect which card its running on, and 'do the right thing' wrt which firmware it needs.
Dave
Signature · 2 lines
| Dave Jones. http://www.codemonkey.org.uk | SuSE Labs
Quoted 2 lines · Nathan Neulinger
According to 3Ware, the driver in the 2.4.x and (I assume) 2.5.x is no longer compatible with the 6xxx series cards.
Please give the name of your 3ware contact so someone competent in 3ware so they can be 're-educated'
I use the new driver with an old card, it works.
Quoted 4 lines · Alan Cox
Please give the name of your 3ware contact so someone competent in 3ware so they can be 're-educated'
I use the new driver with an old card, it works.
I've talked with some clue-enabled people at 3ware about this. The newest driver is indeed broken on cards with very old firmware, and the next revision of the driver will fix that problem.
There's a trivial fix for 2.4.20: just get rid of the error case around line 1016 of 3w-xxxx.c. This is basically the fix 3ware is planning to include in the next driver release.
Patch attached.
<b
home/bos/3w-xxxx.c renamed from home/bos/3w-xxxx.c.~1~ +0 -6
@@ -1014,12 +1014,6 @@ error =tw_setfeature (tw_dev2,2 ,1 , &c);if (error) {printk (KERN_WARNING "3w-xxxx: tw_setfeature(): Error setting features for card %d.\n" , j); -scsi_unregister (host); -release_region ((tw_dev->tw_pci_dev->resource[0 ].start),TW_IO_ADDRESS_RANGE ); -tw_free_device_extension (tw_dev); -kfree (tw_dev); - numcards--; -continue ; }/* Now setup the interrupt handler */