Bug 250752 - PCI allocation issue with 3ware 9500S-12 card on RH Enterprise 4 kernel
PCI allocation issue with 3ware 9500S-12 card on RH Enterprise 4 kernel
Status: CLOSED NOTABUG
Product: Red Hat Enterprise Linux 4
Classification: Red Hat
Component: kernel (Show other bugs)
4.5
i386 Linux
low Severity medium
: ---
: ---
Assigned To: Red Hat Kernel Manager
Martin Jenner
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2007-08-03 10:18 EDT by jas
Modified: 2011-11-03 13:21 EDT (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2011-11-03 13:21:46 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description jas 2007-08-03 10:18:23 EDT
Description of problem:

We have many 3ware products (8506-12, 9550SX, 9650) running on RedHat Enterprise
4 with the latest kernel version.  We have only one 3ware 9500S-12 that has been
running on a 2.4-based Linux system up to this point. Today, we tried to upgrade
to the latest RedHat Enterprise 4 series.  We thought the upgrade would be
trivial, but it didn't work out that way.  Even after upgrading the Intel
motherboard (SE7221BK1-E) to the latest BIOS release, and the 3ware card
firmware up to the latest 9500S release, we were unable to get the card working
in the system.  The system would generate the following error during bootup:

SCSI subsystem initialized
3ware 9000 Storage Controller device driver for Linux v2.26.05.007.
ACPI: PCI Interrupt 0000:03:02.0[A] -> GSI 53 (level, low) -> IRQ 209
PCI: Unable to reserve mem region #4:ffb00000@ff000000 for device
0000:03:02.0
3w-9xxx: scsi0: ERROR: (0x06:0x0026): Failed to get mem region.
3w-9xxx: probe of 0000:03:02.0 failed with error -16

I tried earlier 3ware driver releases, and the same problem persisted
with this kernel version.

On the same system, I tried the Knoppix live CD which uses the same version of
the 3ware driver that our Linux system was using, but a later kernel version -
2.6.17.  The 3ware driver loaded fine and produced no errors.  lspci showed the
following output:

0000:03:01.0 RAID bus controller: 3ware Inc 9xxx-series SATA-RAID
         Subsystem: 3ware Inc 9xxx-series SATA-RAID
         Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 20
         I/O ports at df00 [size=256]
         Memory at feaffc00 (64-bit, non-prefetchable) [size=256]
         Memory at <ignored> (64-bit, prefetchable)
         Expansion ROM at feae0000 [disabled] [size=64K]
         Capabilities: [48] Power Management version 2

Note the "Memory at <ignored>" in the lspci listing.

Since we are unable to upgrade to Enterprise Linux 5 at this time to see if it
would solve the problem, we took the latest Enterprise 5 kernel, and applied it
to the existing Enterprise 4 system.  This actually worked as well and produced
the following lspci output for the device:

03:01.0 RAID bus controller: 3ware Inc 9xxx-series SATA-RAID
         Subsystem: 3ware Inc 9xxx-series SATA-RAID
         Flags: bus master, 66Mhz, medium devsel, latency 64, IRQ 201
         I/O ports at df00 [size=256]
         Memory at feaffc00 (64-bit, non-prefetchable) [size=256]
         Memory at 80000000 (64-bit, prefetchable) [size=8M]
         Expansion ROM at feae0000 [disabled] [size=64K]
         Capabilities: <available only to root>

Note the size=8M size.

Unfortunately, I didn't get the output of lspci running Enterprise Linux
4, and I couldn't keep the server down any longer, but the memory size
was HUGE -- certainly much more memory than the system has.

I don't understand where the bug lies.  

I have emailed 3ware and the response from their Linux driver developer was:

>I believe the problem you are seeing is a "core kernel PCI allocation issue",
>and not a 3ware one.  There haven't been any 3ware driver related fixes
>regarding memory space IO register allocation/deallocation.  You could try
>moving the card to another slot to see if the problem goes away.  After that
>your only option is to run a newer kernel with the issue fixed.

We did try moving the card location, but this didn't make any difference.

As I said, we are running other 3ware products on other servers with the same
kernel version.  On this particular Intel server board machine, where the 9500S
was working with 2.4, and working with later versions of 2.6, it is failing with
the current kernel.  I do believe it is a kernel bug, although I suspect it will
be tricky to solve.  It is too tricky to move this card to another machine to
test if the problem is this particular motherboard or the kernel.

Of course, we would prefer to run our Enterprise 4 system with an Enterprise 4
kernel!

Version-Release number of selected component (if applicable):

2.6.9-55.0.2
Comment 1 jas 2007-10-30 13:55:06 EDT
Today, we had the Intel SE7221BK1-E board replaced with an Intel SE7230NH1-LX
and the problem went away.  The means that the problem was a BIOS issue. 
However, keep in mind that the card did work on the SE7221BK1-E using the CentOS
5 kernel which means that the problem could probably have been fixed with a
kernel update to 4.5 as well.


Note You need to log in before you can comment on or make changes to this bug.