linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* MegaRAID on AMD64 under 2.6.1
@ 2004-01-07 22:01 Chris Meadors
  2004-01-08 12:12 ` Christoph Hellwig
  0 siblings, 1 reply; 6+ messages in thread
From: Chris Meadors @ 2004-01-07 22:01 UTC (permalink / raw)
  To: Linux Kernel

I seem to recall some discussion reguarding the MegaRAID driver use on
AMD64 machines with large amounts of RAM.  My machine only has 2 GB of
RAM, and the driver was working fine under 2.6.0 (note I use Andi
Kleen's x86_64 patch kit, on an otherwise stock kernel).  But with the
release of 2.6.1-rc1 the driver does not load.  I have module support
disabled and all needed drivers built into the kernel.  All my file
systems (including root) are on logical drives provided by the RAID
controller.  So the kernel panics when attempting to mount the root
filesystem, if the driver doesn't load.

Looking through the 2.6.1-rc2 patch, it seems that the megaraid.[ch]
files got some large amount of re-ordering.  So I can't easily spot what
change might have effected the driver.

Here is the lspci output for my specific card:

02:07.0 RAID bus controller: LSI Logic / Symbios Logic PowerEdge
Expandable RAID Controller 4 (rev 01)
        Subsystem: LSI Logic / Symbios Logic: Unknown device a520
        Flags: bus master, 66Mhz, slow devsel, latency 64, IRQ 26
        Memory at f8000000 (32-bit, prefetchable) [size=64M]
        Expansion ROM at fc9f8000 [disabled] [size=32K]
        Capabilities: [80] Power Management version 2

I'm wondering if the driver just doesn't claim it anymore.  Or maybe it
is being told not to load on 64-bit machines?

I can test any patches.

-- 
Chris


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: MegaRAID on AMD64 under 2.6.1
  2004-01-07 22:01 MegaRAID on AMD64 under 2.6.1 Chris Meadors
@ 2004-01-08 12:12 ` Christoph Hellwig
  2004-01-08 16:51   ` Chris Meadors
  0 siblings, 1 reply; 6+ messages in thread
From: Christoph Hellwig @ 2004-01-08 12:12 UTC (permalink / raw)
  To: Chris Meadors; +Cc: Linux Kernel

On Wed, Jan 07, 2004 at 05:01:28PM -0500, Chris Meadors wrote:
> I seem to recall some discussion reguarding the MegaRAID driver use on
> AMD64 machines with large amounts of RAM.  My machine only has 2 GB of
> RAM, and the driver was working fine under 2.6.0 (note I use Andi
> Kleen's x86_64 patch kit, on an otherwise stock kernel).  But with the
> release of 2.6.1-rc1 the driver does not load.  I have module support
> disabled and all needed drivers built into the kernel.  All my file
> systems (including root) are on logical drives provided by the RAID
> controller.  So the kernel panics when attempting to mount the root
> filesystem, if the driver doesn't load.
> 
> Looking through the 2.6.1-rc2 patch, it seems that the megaraid.[ch]
> files got some large amount of re-ordering.  So I can't easily spot what
> change might have effected the driver.
> 
> Here is the lspci output for my specific card:

Can you put a printk into megaraid_probe_one() whether that one actually
gets called?

Also lspci -n output would be very nice to have.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: MegaRAID on AMD64 under 2.6.1
  2004-01-08 12:12 ` Christoph Hellwig
@ 2004-01-08 16:51   ` Chris Meadors
  2004-01-08 16:55     ` Christoph Hellwig
  0 siblings, 1 reply; 6+ messages in thread
From: Chris Meadors @ 2004-01-08 16:51 UTC (permalink / raw)
  To: Christoph Hellwig; +Cc: Linux Kernel

On Thu, 2004-01-08 at 07:12, Christoph Hellwig wrote:

> Can you put a printk into megaraid_probe_one() whether that one actually
> gets called?

It looks like megaraid_probe_one() only gets called if
megaraid_pci_tbl[] contains the right IDs.

> Also lspci -n output would be very nice to have.

02:07.0 Class 0104: 1000:1960 (rev 01)

i.e. PCI_VENDOR_ID_LSI_LOGIC, PCI_DEVICE_ID_AMI_MEGARAID3

When I added the lines for that combination to megaraid_pci_tbl[], the
driver found the card.  So, I'm cool now.

-- 
Chris


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: MegaRAID on AMD64 under 2.6.1
  2004-01-08 16:51   ` Chris Meadors
@ 2004-01-08 16:55     ` Christoph Hellwig
  2004-01-08 17:19       ` [PATCH] LSI Logic MegaRAID3 PCI ID [Was: MegaRAID on AMD64 under 2.6.1] Chris Meadors
  0 siblings, 1 reply; 6+ messages in thread
From: Christoph Hellwig @ 2004-01-08 16:55 UTC (permalink / raw)
  To: Chris Meadors; +Cc: Linux Kernel

On Thu, Jan 08, 2004 at 11:51:58AM -0500, Chris Meadors wrote:
> It looks like megaraid_probe_one() only gets called if
> megaraid_pci_tbl[] contains the right IDs.

Yupp.

> i.e. PCI_VENDOR_ID_LSI_LOGIC, PCI_DEVICE_ID_AMI_MEGARAID3
> 
> When I added the lines for that combination to megaraid_pci_tbl[], the
> driver found the card.  So, I'm cool now.

Care to send a patch to Linus to add it?  And my apologies for losing
that entry. 


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH] LSI Logic MegaRAID3 PCI ID [Was: MegaRAID on AMD64 under 2.6.1]
  2004-01-08 16:55     ` Christoph Hellwig
@ 2004-01-08 17:19       ` Chris Meadors
  2004-01-08 20:29         ` Chris Meadors
  0 siblings, 1 reply; 6+ messages in thread
From: Chris Meadors @ 2004-01-08 17:19 UTC (permalink / raw)
  To: Christoph Hellwig; +Cc: Linux Kernel, Linus Torvalds

[-- Attachment #1: Type: text/plain, Size: 494 bytes --]

On Thu, 2004-01-08 at 11:55, Christoph Hellwig wrote:
> On Thu, Jan 08, 2004 at 11:51:58AM -0500, Chris Meadors wrote:
> > i.e. PCI_VENDOR_ID_LSI_LOGIC, PCI_DEVICE_ID_AMI_MEGARAID3
> > 
> > When I added the lines for that combination to megaraid_pci_tbl[], the
> > driver found the card.  So, I'm cool now.
> 
> Care to send a patch to Linus to add it?  And my apologies for losing
> that entry. 

Sure thing, it is attatched, as I fear the white space mangling
abilities of my MUA.

-- 
Chris

[-- Attachment #2: LSI_MEGARAID3.patch --]
[-- Type: text/x-patch, Size: 467 bytes --]

--- linux-2.6.1-rc2.orig/drivers/scsi/megaraid.c	2004-01-08 12:14:51.000000000 -0500
+++ linux-2.6.1-rc2/drivers/scsi/megaraid.c	2004-01-08 12:01:24.000000000 -0500
@@ -5095,6 +5095,8 @@
 		PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
 	{PCI_VENDOR_ID_LSI_LOGIC, PCI_DEVICE_ID_AMI_MEGARAID,
 		PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
+	{PCI_VENDOR_ID_LSI_LOGIC, PCI_DEVICE_ID_AMI_MEGARAID3,
+		PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
 	{0,}
 };
 MODULE_DEVICE_TABLE(pci, megaraid_pci_tbl);

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] LSI Logic MegaRAID3 PCI ID [Was: MegaRAID on AMD64 under 2.6.1]
  2004-01-08 17:19       ` [PATCH] LSI Logic MegaRAID3 PCI ID [Was: MegaRAID on AMD64 under 2.6.1] Chris Meadors
@ 2004-01-08 20:29         ` Chris Meadors
  0 siblings, 0 replies; 6+ messages in thread
From: Chris Meadors @ 2004-01-08 20:29 UTC (permalink / raw)
  To: Christoph Hellwig; +Cc: Linux Kernel, Linus Torvalds

[-- Attachment #1: Type: text/plain, Size: 1689 bytes --]

On Thu, 2004-01-08 at 12:19, Chris Meadors wrote:
> On Thu, 2004-01-08 at 11:55, Christoph Hellwig wrote:
> > On Thu, Jan 08, 2004 at 11:51:58AM -0500, Chris Meadors wrote:
> > > i.e. PCI_VENDOR_ID_LSI_LOGIC, PCI_DEVICE_ID_AMI_MEGARAID3
> > > 
> > > When I added the lines for that combination to megaraid_pci_tbl[], the
> > > driver found the card.  So, I'm cool now.
> > 
> > Care to send a patch to Linus to add it?  And my apologies for losing
> > that entry. 
> 
> Sure thing, it is attatched, as I fear the white space mangling
> abilities of my MUA.

(Replying to myself with an updated version of the patch, apply this one
instead.)

I was wondering how the ID got lost.  I noticed that the file was pretty
much rewriten (the -rc patch is just a huge number of removes, followed
by an equally large number of adds).  So I started looking at the two
files side by side, wondering if any other IDs were missed.  Then I
think I spotted what happened.  In the -rc patch, there is an ID pair
for, "PCI_VENDOR_ID_LSI_LOGIC, PCI_DEVICE_ID_AMI_MEGARAID".  Since LSI
just starting making MegaRAID cards, there would have never been a
device produced with that ID.  The line I added in my patch was for the
MEGARAID3.  Looking at the older version of the file showed just as I
guessed, there wasn't an LSI_LOGIC MEGARAID.  I'm thinking the '3' got
dropped in the conversion between the old and new files.

So, attached is a second version of this patch.  Instead of adding a
totally new PCI ID, I'm just removing the incorrect LSI MEGARAID, and
replacing it with the LSI MEGARAID3.  I've also diffed against 2.6.1-rc3
this time (but megaraid.c wasn't touched between -rc2 and 3).

-- 
Chris

[-- Attachment #2: LSI_MEGARAID3-2.patch --]
[-- Type: text/x-patch, Size: 475 bytes --]

--- linux-2.6.1-rc3.orig/drivers/scsi/megaraid.c	2004-01-08 12:14:51.000000000 -0500
+++ linux-2.6.1-rc3/drivers/scsi/megaraid.c	2004-01-08 12:01:24.000000000 -0500
@@ -5093,7 +5093,7 @@
 		PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
 	{PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_AMI_MEGARAID3,
 		PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
-	{PCI_VENDOR_ID_LSI_LOGIC, PCI_DEVICE_ID_AMI_MEGARAID,
+	{PCI_VENDOR_ID_LSI_LOGIC, PCI_DEVICE_ID_AMI_MEGARAID3,
 		PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
 	{0,}
 };

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2004-01-08 20:30 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-01-07 22:01 MegaRAID on AMD64 under 2.6.1 Chris Meadors
2004-01-08 12:12 ` Christoph Hellwig
2004-01-08 16:51   ` Chris Meadors
2004-01-08 16:55     ` Christoph Hellwig
2004-01-08 17:19       ` [PATCH] LSI Logic MegaRAID3 PCI ID [Was: MegaRAID on AMD64 under 2.6.1] Chris Meadors
2004-01-08 20:29         ` Chris Meadors

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).