aacraid: Adaptec 2200S support broken on x86_64 by commit 94cf6ba11b068b8a8f68a1e88bffb6827e92124b
Subsystems (2)
Hi there!
On our AMD64 machines equipped with old Adaptec 2200S controllers, we experienced a regression when updating to 2.6.25. The machines won't boot anymore (in a reasonable time), but instead spit out tons of those messages:aac_srb: aac_fib_send failed with status: 8195
This is already reported in quite some places including LKML:
http://lkml.org/lkml/2008/5/12/365
https://bugzilla.redhat.com/show_bug.cgi?id=450444
https://bugzilla.redhat.com/show_bug.cgi?id=453472
http://www.linuxquestions.org/questions/red-hat-31/aacsrb-aacfibsend-failed-with-status-8195-651078/
http://forums.gentoo.org/viewtopic-p-5077382.html?sid=a51c3a0fba6aa854c0b49b8fae5cc15a
We found that this regression seems to be introduced by the bugfix "aacraid: fix driver failure with Dell PowerEdge Expandable RAID Controller 3/Di":
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=94cf6ba11b068b8a8f68a1e88bffb6827e92124b
By simply removing the quirk flag for our controller, we could boot again.
We did some quick stress tests on an AMD64bit machine with 16GB of RAM and saw no problems after this change:
drivers/scsi/aacraid/linit.c +0 -0
@@ -176,7 +176,7 @@
{ aac_rx_init, "aacraid", "ADAPTEC ", "catapult ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* catapult */
{ aac_rx_init, "aacraid", "ADAPTEC ", "tomcat ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* tomcat */
{ aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2120S ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2120S (Crusader) */
- { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan) */
+ { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG }, /* Adaptec 2200S (Vulcan) */
{ aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan-2m) */
{ aac_rx_init, "aacraid", "Legend ", "Legend S220 ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S220 (Legend Crusader) */
{ aac_rx_init, "aacraid", "Legend ", "Legend S230 ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S230 (Legend Vulcan) */Can this be safely changed/merged? Or is this the wrong way to fix it?
Please note that we also have machines equipped with newer Adaptec 2230S controllers (PCI ID 9005:0286) which run perfectly with the current driver.
Signature · 3 lines
Kind regards, Gernot Hillier Siemens AG, CT SE 2, Corporate Competence Center Embedded Linux
Quoted 38 lines · Gernot
Hi there!
On our AMD64 machines equipped with old Adaptec 2200S controllers, we experienced a regression when updating to 2.6.25. The machines won't boot anymore (in a reasonable time), but instead spit out tons of those messages:
aac_srb:aac_fib_sendfailed with status: 8195This is already reported in quite some places including LKML:
http://lkml.org/lkml/2008/5/12/365
https://bugzilla.redhat.com/show_bug.cgi?id=450444
https://bugzilla.redhat.com/show_bug.cgi?id=453472
http://www.linuxquestions.org/questions/red-hat-31/aacsrb-aacfibsend-failed-with-status-8195-651078/
http://forums.gentoo.org/viewtopic-p-5077382.html?sid=a51c3a0fba6aa854c0b49b8fae5cc15aWe found that this regression seems to be introduced by the bugfix "aacraid: fix driver failure with Dell PowerEdge Expandable RAID Controller 3/Di":
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=94cf6ba11b068b8a8f68a1e88bffb6827e92124bBy simply removing the quirk flag for our controller, we could boot again.
We did some quick stress tests on an AMD64bit machine with 16GB of RAM and saw no problems after this change:
diff -ur
linux-2.6.25.11-0.1.ct1.orig/drivers/scsi/aacraid/linit.clinux-2.6.25.11-0.1.ct1/drivers/scsi/aacraid/linit.cdrivers/scsi/aacraid/linit.c +1
-1@@ -176,7 +176,7 @@ { aac_rx_init, "aacraid", "ADAPTEC ", "catapult ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* catapult */ { aac_rx_init, "aacraid", "ADAPTEC ", "tomcat ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* tomcat */ { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2120S ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2120S (Crusader) */ - { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan) */ + { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG }, /* Adaptec 2200S (Vulcan) */ { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan-2m) */ { aac_rx_init, "aacraid", "Legend ", "Legend S220 ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S220 (Legend Crusader) */ { aac_rx_init, "aacraid", "Legend ", "Legend S230 ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S230 (Legend Vulcan) */
Quoted 6 lines
Can this be safely changed/merged? Or is this the wrong way to fix it?
Please note that we also have machines equipped with newer Adaptec 2230S controllers (PCI ID 9005:0286) which run perfectly with the current driver.
Hi,
from what I read about this it seems to me that people are complaining also about issues with the 2120S Controller. So if the patch is taken in this form the original patch should be extended to cover both controllers.
---
drivers/scsi/aacraid/linit.c +2 -2
@@ -175,8 +175,8 @@ static struct aac_driver_ident aac_drive { aac_rx_init, "percraid", "DELL ", "PERCRAID ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* PERC 3/Di (Boxster/PERC3DiB) */ { aac_rx_init, "aacraid", "ADAPTEC ", "catapult ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* catapult */ { aac_rx_init, "aacraid", "ADAPTEC ", "tomcat ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* tomcat */ - { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2120S ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2120S (Crusader) */ - { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan) */ + { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2120S ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG }, /* Adaptec 2120S (Crusader) */ + { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG }, /* Adaptec 2200S (Vulcan) */ { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan-2m) */ { aac_rx_init, "aacraid", "Legend ", "Legend S220 ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S220 (Legend Crusader) */ { aac_rx_init, "aacraid", "Legend ", "Legend S230 ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S230 (Legend Vulcan) */
Quoted 6 lines · Tomas Henzl
Quoted 5 lines · Gernot
On our AMD64 machines equipped with old Adaptec 2200S controllers, we experienced a regression when updating to 2.6.25. The machines won't boot anymore (in a reasonable time), but instead spit out tons of those messages:
aac_srb:aac_fib_sendfailed with status: 8195
[...]
Quoted 3 lines
Quoted 3 lines
We found that this regression seems to be introduced by the bugfix "aacraid: fix driver failure with Dell PowerEdge Expandable RAID Controller 3/Di":
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=94cf6ba11b068b8a8f68a1e88bffb6827e92124b
[...]
Quoted 13 lines
from what I read about this it seems to me that people are complaining also about issues with the 2120S Controller. So if the patch is taken in this form the original patch should be extended to cover both controllers.
Signed-off-by Tomas Henzl <[email protected]>---
diff -Naurplinux-2.6.18.i686b/drivers/scsi/aacraid/linit.clinux-2.6.18.i686p6/drivers/scsi/aacraid/linit.c
drivers/scsi/aacraid/linit.c static struct aac_driver_ident aac_drive · line 182
Quoted 10 lines
drivers/scsi/aacraid/linit.c +2
-2@@ -175,8 +175,8 @@ static struct aac_driver_ident aac_drive { aac_rx_init, "percraid", "DELL ", "PERCRAID ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* PERC 3/Di (Boxster/PERC3DiB) */ { aac_rx_init, "aacraid", "ADAPTEC ", "catapult ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* catapult */ { aac_rx_init, "aacraid", "ADAPTEC ", "tomcat ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* tomcat */ - { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2120S ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2120S (Crusader) */ - { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan) */ + { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2120S ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG }, /* Adaptec 2120S (Crusader) */ + { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG }, /* Adaptec 2200S (Vulcan) */ { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan-2m) */ { aac_rx_init, "aacraid", "Legend ", "Legend S220 ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S220 (Legend Crusader) */ { aac_rx_init, "aacraid", "Legend ", "Legend S230 ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S230 (Legend Vulcan) */
All our tests with this patch enabled look good so far and comment #30 in
[1] also states that removing AAC_QUIRK_SCSI_32 for those controllers fixes the problem.
As the original workaround was only intended to fix things on the DELL PERCRAID, I'd be glad to see our patch being applied to disable the workaround for our controllers again.
I didn't provide a description for the original patch yet (sorry), so here's a suggestion:
--- SNIP ---
aacraid: disable Dell Percraid quirk on Adaptec 2200S and 2120S
A lot of 64bit machines with Adaptec 2200S and 2120S controllers don't recognize SCSI disks any more with the patch "fix driver failure with Dell PowerEdge Expandable RAID Controller 3/Di", but fail with tons of "aac_srb:aac_fib_send failed with status: 8195" instead. This patch disables the quirk introduced in the change cited above for those two controllers again.
--- SNAP ---
[1] https://bugzilla.redhat.com/show_bug.cgi?id=453472
Signature · 1 line
Gernot Hillier, Siemens AG, CT SE 2
Quoted 58 lines · On Tue, 07 Oct 2008 15:37:04 +0200 Tomas Henzl <[email protected]> wrote:
Quoted 38 lines · Gernot
Hi there!
On our AMD64 machines equipped with old Adaptec 2200S controllers, we experienced a regression when updating to 2.6.25. The machines won't boot anymore (in a reasonable time), but instead spit out tons of those messages:
aac_srb:aac_fib_sendfailed with status: 8195This is already reported in quite some places including LKML:
http://lkml.org/lkml/2008/5/12/365
https://bugzilla.redhat.com/show_bug.cgi?id=450444
https://bugzilla.redhat.com/show_bug.cgi?id=453472
http://www.linuxquestions.org/questions/red-hat-31/aacsrb-aacfibsend-failed-with-status-8195-651078/
http://forums.gentoo.org/viewtopic-p-5077382.html?sid=a51c3a0fba6aa854c0b49b8fae5cc15aWe found that this regression seems to be introduced by the bugfix "aacraid: fix driver failure with Dell PowerEdge Expandable RAID Controller 3/Di":
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=94cf6ba11b068b8a8f68a1e88bffb6827e92124bBy simply removing the quirk flag for our controller, we could boot again.
We did some quick stress tests on an AMD64bit machine with 16GB of RAM and saw no problems after this change:
diff -ur
linux-2.6.25.11-0.1.ct1.orig/drivers/scsi/aacraid/linit.clinux-2.6.25.11-0.1.ct1/drivers/scsi/aacraid/linit.cdrivers/scsi/aacraid/linit.c +1
-1@@ -176,7 +176,7 @@ { aac_rx_init, "aacraid", "ADAPTEC ", "catapult ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* catapult */ { aac_rx_init, "aacraid", "ADAPTEC ", "tomcat ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* tomcat */ { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2120S ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2120S (Crusader) */ - { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan) */ + { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG }, /* Adaptec 2200S (Vulcan) */ { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan-2m) */ { aac_rx_init, "aacraid", "Legend ", "Legend S220 ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S220 (Legend Crusader) */ { aac_rx_init, "aacraid", "Legend ", "Legend S230 ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S230 (Legend Vulcan) */Quoted 6 lines
Can this be safely changed/merged? Or is this the wrong way to fix it?
Please note that we also have machines equipped with newer Adaptec 2230S controllers (PCI ID 9005:0286) which run perfectly with the current driver.
Hi,
from what I read about this it seems to me that people are complaining also about issues with the 2120S Controller. So if the patch is taken in this form the original patch should be extended to cover both controllers.Signed-off-by Tomas Henzl <[email protected]>---
diff -Naurplinux-2.6.18.i686b/drivers/scsi/aacraid/linit.clinux-2.6.18.i686p6/drivers/scsi/aacraid/linit.c
drivers/scsi/aacraid/linit.c static struct aac_driver_ident aac_drive · line 182
Quoted 10 lines
drivers/scsi/aacraid/linit.c +2
-2@@ -175,8 +175,8 @@ static struct aac_driver_ident aac_drive { aac_rx_init, "percraid", "DELL ", "PERCRAID ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* PERC 3/Di (Boxster/PERC3DiB) */ { aac_rx_init, "aacraid", "ADAPTEC ", "catapult ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* catapult */ { aac_rx_init, "aacraid", "ADAPTEC ", "tomcat ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* tomcat */ - { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2120S ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2120S (Crusader) */ - { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan) */ + { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2120S ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG }, /* Adaptec 2120S (Crusader) */ + { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG }, /* Adaptec 2200S (Vulcan) */ { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan-2m) */ { aac_rx_init, "aacraid", "Legend ", "Legend S220 ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S220 (Legend Crusader) */ { aac_rx_init, "aacraid", "Legend ", "Legend S230 ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S230 (Legend Vulcan) */
I added this to my tree with Tomas's title&changelog (thanks - I was about to whine about that). Thanks Thomas for the reminder. I tagged it as backportable to 2.6.25.x, 2.6.26.x and 2.6.27.x.
This bugfix has been there for a month and this driver has been busted since 2.6.24. Is anyone out there? Mark? James?
James Bottomley
maintainerQuoted 67 lines · Andrew Morton
Quoted 64 lines · On Tue, 07 Oct 2008 15:37:04 +0200 Tomas Henzl <[email protected]> wrote:
Quoted 38 lines · Gernot
Hi there!
On our AMD64 machines equipped with old Adaptec 2200S controllers, we experienced a regression when updating to 2.6.25. The machines won't boot anymore (in a reasonable time), but instead spit out tons of those messages:
aac_srb:aac_fib_sendfailed with status: 8195This is already reported in quite some places including LKML:
http://lkml.org/lkml/2008/5/12/365
https://bugzilla.redhat.com/show_bug.cgi?id=450444
https://bugzilla.redhat.com/show_bug.cgi?id=453472
http://www.linuxquestions.org/questions/red-hat-31/aacsrb-aacfibsend-failed-with-status-8195-651078/
http://forums.gentoo.org/viewtopic-p-5077382.html?sid=a51c3a0fba6aa854c0b49b8fae5cc15aWe found that this regression seems to be introduced by the bugfix "aacraid: fix driver failure with Dell PowerEdge Expandable RAID Controller 3/Di":
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=94cf6ba11b068b8a8f68a1e88bffb6827e92124bBy simply removing the quirk flag for our controller, we could boot again.
We did some quick stress tests on an AMD64bit machine with 16GB of RAM and saw no problems after this change:
diff -ur
linux-2.6.25.11-0.1.ct1.orig/drivers/scsi/aacraid/linit.clinux-2.6.25.11-0.1.ct1/drivers/scsi/aacraid/linit.cdrivers/scsi/aacraid/linit.c +1
-1@@ -176,7 +176,7 @@ { aac_rx_init, "aacraid", "ADAPTEC ", "catapult ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* catapult */ { aac_rx_init, "aacraid", "ADAPTEC ", "tomcat ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* tomcat */ { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2120S ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2120S (Crusader) */ - { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan) */ + { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG }, /* Adaptec 2200S (Vulcan) */ { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan-2m) */ { aac_rx_init, "aacraid", "Legend ", "Legend S220 ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S220 (Legend Crusader) */ { aac_rx_init, "aacraid", "Legend ", "Legend S230 ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S230 (Legend Vulcan) */Quoted 6 lines
Can this be safely changed/merged? Or is this the wrong way to fix it?
Please note that we also have machines equipped with newer Adaptec 2230S controllers (PCI ID 9005:0286) which run perfectly with the current driver.
Hi,
from what I read about this it seems to me that people are complaining also about issues with the 2120S Controller. So if the patch is taken in this form the original patch should be extended to cover both controllers.Signed-off-by Tomas Henzl <[email protected]>---
diff -Naurplinux-2.6.18.i686b/drivers/scsi/aacraid/linit.clinux-2.6.18.i686p6/drivers/scsi/aacraid/linit.cdrivers/scsi/aacraid/linit.c +2
-2@@ -175,8 +175,8 @@ static struct aac_driver_ident aac_drive { aac_rx_init, "percraid", "DELL ", "PERCRAID ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* PERC 3/Di (Boxster/PERC3DiB) */ { aac_rx_init, "aacraid", "ADAPTEC ", "catapult ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* catapult */ { aac_rx_init, "aacraid", "ADAPTEC ", "tomcat ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* tomcat */ - { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2120S ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2120S (Crusader) */ - { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan) */ + { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2120S ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG }, /* Adaptec 2120S (Crusader) */ + { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG }, /* Adaptec 2200S (Vulcan) */ { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan-2m) */
Quoted 8 lines
drivers/scsi/aacraid/linit.c static struct aac_driver_ident aac_drive · line 182
Quoted 4 lines
drivers/scsi/aacraid/linit.c +0
-0{ aac_rx_init, "aacraid", "Legend ", "Legend S220 ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S220 (Legend Crusader) */ { aac_rx_init, "aacraid", "Legend ", "Legend S230 ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S230 (Legend Vulcan) */I added this to my tree with Tomas's title&changelog (thanks - I was about to whine about that). Thanks Thomas for the reminder. I tagged it as backportable to 2.6.25.x, 2.6.26.x and 2.6.27.x.
Could someone from Adaptec and Dell please verify that this is correct? Mark Salyzyn no longer works there, but the [email protected] address is supposed to still be working.
Thanks,
James
Andrew Morton
Tested-by Thomas Guyot-SionnestQuoted 3 lines · On Mon, 10 Nov 2008 20:20:57 -0800 James Bottomley…
Could someone from Adaptec and Dell please verify that this is correct? Mark Salyzyn no longer works there, but the [email protected] address is supposed to still be working.
Here is the patch:
From: Tomas Henzl <[email protected]>
A lot of 64bit machines with Adaptec 2200S and 2120S controllers don't recognize SCSI disks any more with the patch "fix driver failure with Dell PowerEdge Expandable RAID Controller 3/Di", but fail with tons of "aac_srb:aac_fib_send failed with status: 8195" instead. This patch disables the quirk introduced in the change cited above for those two controllers again.
---
drivers/scsi/aacraid/linit.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
drivers/scsi/aacraid/linit.c renamed from drivers/scsi/aacraid/linit.c~aacraid-disable-dell-percraid-quirk-on-adaptec-2200s-and-2120s +2 -2
@@ -175,8 +175,8 @@ static struct aac_driver_ident aac_drive { aac_rx_init, "percraid", "DELL ", "PERCRAID ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* PERC 3/Di (Boxster/PERC3DiB) */ { aac_rx_init, "aacraid", "ADAPTEC ", "catapult ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* catapult */ { aac_rx_init, "aacraid", "ADAPTEC ", "tomcat ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* tomcat */ - { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2120S ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2120S (Crusader) */ - { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan) */ + { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2120S ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG }, /* Adaptec 2120S (Crusader) */ + { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG }, /* Adaptec 2200S (Vulcan) */ { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan-2m) */ { aac_rx_init, "aacraid", "Legend ", "Legend S220 ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S220 (Legend Crusader) */ { aac_rx_init, "aacraid", "Legend ", "Legend S230 ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S230 (Legend Vulcan) */
_
Quoted 44 lines · Andrew Morton
Quoted 3 lines · On Mon, 10 Nov 2008 20:20:57 -0800 James Bottomley…
Could someone from Adaptec and Dell please verify that this is correct? Mark Salyzyn no longer works there, but the [email protected] address is supposed to still be working.
Here is the patch:
From: Tomas Henzl <[email protected]>
A lot of 64bit machines with Adaptec 2200S and 2120S controllers don't recognize SCSI disks any more with the patch "fix driver failure with Dell PowerEdge Expandable RAID Controller 3/Di", but fail with tons of "
aac_srb:aac_fib_sendfailed with status: 8195" instead. This patch disables the quirk introduced in the change cited above for those two controllers again.Signed-off-by Gernot Hillier <[email protected]>Signed-off-by Tomas Henzl <[email protected]>Cc <[email protected]>Cc James Bottomley <[email protected]>Cc <[email protected]> [2.6.27.x, 2.6.26.x, 2.6.25.x]Signed-off-by Andrew Morton <[email protected]>---
drivers/scsi/aacraid/linit.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)diff -puN
drivers/scsi/aacraid/linit.c~aacraid-disable-dell-percraid-quirk-on-adaptec-2200s-and-2120sdrivers/scsi/aacraid/linit.cdrivers/scsi/aacraid/linit.c renamed from drivers/scsi/aacraid/linit.c~aacraid-disable-dell-percraid-quirk-on-adaptec-2200s-and-2120s +2
-2@@ -175,8 +175,8 @@ static struct aac_driver_ident aac_drive { aac_rx_init, "percraid", "DELL ", "PERCRAID ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* PERC 3/Di (Boxster/PERC3DiB) */ { aac_rx_init, "aacraid", "ADAPTEC ", "catapult ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* catapult */ { aac_rx_init, "aacraid", "ADAPTEC ", "tomcat ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* tomcat */ - { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2120S ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2120S (Crusader) */ - { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan) */ + { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2120S ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG }, /* Adaptec 2120S (Crusader) */ + { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG }, /* Adaptec 2200S (Vulcan) */ { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan-2m) */ { aac_rx_init, "aacraid", "Legend ", "Legend S220 ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S220 (Legend Crusader) */ { aac_rx_init, "aacraid", "Legend ", "Legend S230 ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S230 (Legend Vulcan) */
Quoted 1 line
_
Dell's storage teams have been investigating, to be sure those are the only known affected cards. To the best of everyone's knowledge here, this is correct.
Please apply at your earliest convenience.
Thanks,
Matt
Signature · 3 lines
Matt Domsch Linux Technology Strategist, Dell Office of the CTO linux.dell.com & www.dell.com/linux
Quoted 82 lines · James Bottomley
Quoted 70 lines · Andrew Morton
Quoted 66 lines · On Tue, 07 Oct 2008 15:37:04 +0200 Tomas Henzl <[email protected]> wrote:
Quoted 38 lines · Gernot
Hi there!
On our AMD64 machines equipped with old Adaptec 2200S controllers, we experienced a regression when updating to 2.6.25. The machines won't boot anymore (in a reasonable time), but instead spit out tons of those messages:
aac_srb:aac_fib_sendfailed with status: 8195This is already reported in quite some places including LKML:
http://lkml.org/lkml/2008/5/12/365
https://bugzilla.redhat.com/show_bug.cgi?id=450444
https://bugzilla.redhat.com/show_bug.cgi?id=453472
http://www.linuxquestions.org/questions/red-hat-31/aacsrb-aacfibsend-failed-with-status-8195-651078/
http://forums.gentoo.org/viewtopic-p-5077382.html?sid=a51c3a0fba6aa854c0b49b8fae5cc15aWe found that this regression seems to be introduced by the bugfix "aacraid: fix driver failure with Dell PowerEdge Expandable RAID Controller 3/Di":
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=94cf6ba11b068b8a8f68a1e88bffb6827e92124bBy simply removing the quirk flag for our controller, we could boot again.
We did some quick stress tests on an AMD64bit machine with 16GB of RAM and saw no problems after this change:
diff -ur
linux-2.6.25.11-0.1.ct1.orig/drivers/scsi/aacraid/linit.clinux-2.6.25.11-0.1.ct1/drivers/scsi/aacraid/linit.cdrivers/scsi/aacraid/linit.c +1
-1@@ -176,7 +176,7 @@ { aac_rx_init, "aacraid", "ADAPTEC ", "catapult ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* catapult */ { aac_rx_init, "aacraid", "ADAPTEC ", "tomcat ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* tomcat */ { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2120S ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2120S (Crusader) */ - { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan) */ + { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG }, /* Adaptec 2200S (Vulcan) */ { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan-2m) */ { aac_rx_init, "aacraid", "Legend ", "Legend S220 ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S220 (Legend Crusader) */ { aac_rx_init, "aacraid", "Legend ", "Legend S230 ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S230 (Legend Vulcan) */Quoted 7 lines
Can this be safely changed/merged? Or is this the wrong way to fix it?
Please note that we also have machines equipped with newer Adaptec 2230S controllers (PCI ID 9005:0286) which run perfectly with the current driver.
Hi,
from what I read about this it seems to me that people are complaining also about issues with the 2120S Controller. So if the patch is taken in this form the original patch should be extended to cover both controllers.Signed-off-by Tomas Henzl <[email protected]>---
diff -Naurplinux-2.6.18.i686b/drivers/scsi/aacraid/linit.clinux-2.6.18.i686p6/drivers/scsi/aacraid/linit.cdrivers/scsi/aacraid/linit.c +2
-2@@ -175,8 +175,8 @@ static struct aac_driver_ident aac_drive { aac_rx_init, "percraid", "DELL ", "PERCRAID ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* PERC 3/Di (Boxster/PERC3DiB) */ { aac_rx_init, "aacraid", "ADAPTEC ", "catapult ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* catapult */ { aac_rx_init, "aacraid", "ADAPTEC ", "tomcat ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* tomcat */ - { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2120S ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2120S (Crusader) */ - { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan) */ + { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2120S ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG }, /* Adaptec 2120S (Crusader) */ + { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG }, /* Adaptec 2200S (Vulcan) */ { aac_rx_init, "aacraid", "ADAPTEC ", "Adaptec 2200S ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Adaptec 2200S (Vulcan-2m) */Quoted 9 lines
drivers/scsi/aacraid/linit.c static struct aac_driver_ident aac_drive · line 182
Quoted 5 lines
drivers/scsi/aacraid/linit.c +0
-0{ aac_rx_init, "aacraid", "Legend ", "Legend S220 ", 1, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S220 (Legend Crusader) */ { aac_rx_init, "aacraid", "Legend ", "Legend S230 ", 2, AAC_QUIRK_31BIT | AAC_QUIRK_34SG | AAC_QUIRK_SCSI_32 }, /* Legend S230 (Legend Vulcan) */I added this to my tree with Tomas's title&changelog (thanks - I was about to whine about that). Thanks Thomas for the reminder. I tagged it as backportable to 2.6.25.x, 2.6.26.x and 2.6.27.x.
Quoted 8 lines
Could someone from Adaptec and Dell please verify that this is correct? Mark Salyzyn no longer works there, but the [email protected] address is supposed to still be working.
Thanks,
James
Adding Achim Leubner from Adaptec to the CC:list,
he is the new person responsible for the driver.
Achim what do you think about this patch ?
Thanks,
Tomas
Quoted 6 lines
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html