Re: LSI MegaRAID not recognised correctly in 64-bit. 2.6.29.6

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, 19 Sep 2009 08:24:02 -0700
Eddie <stunnel@xxxxxxxxxxxxx> wrote:

> FUJITA Tomonori wrote:
> > Thanks, now the problem is clear; the driver uses 64bit dma_mask but
> > the hardware is not capable of 64bit dma according to James. Seems
> > that hardware lies about the dma capability.
> >
> > Can you try the following patch?
> >
> >
> > diff --git a/drivers/scsi/megaraid/megaraid_mbox.c b/drivers/scsi/megaraid/megaraid_mbox.c
> > index 234f0b7..9ead856 100644
> > --- a/drivers/scsi/megaraid/megaraid_mbox.c
> > +++ b/drivers/scsi/megaraid/megaraid_mbox.c
> > @@ -888,6 +888,8 @@ megaraid_init_mbox(adapter_t *adapter)
> >  	if (((magic64 == HBA_SIGNATURE_64_BIT) &&
> >  		((adapter->pdev->subsystem_device !=
> >  		PCI_SUBSYS_ID_MEGARAID_SATA_150_6) &&
> > +		(adapter->pdev->device !=
> > +		PCI_DEVICE_ID_AMI_MEGARAID3) &&
> >  		(adapter->pdev->subsystem_device !=
> >  		PCI_SUBSYS_ID_MEGARAID_SATA_150_4))) ||
> >  		(adapter->pdev->vendor == PCI_VENDOR_ID_LSI_LOGIC &&
> >
> >   
> OK, that appears to have done the trick.

Thanks for the confirmation.

James, here's a patch in the proper format.

=
From: FUJITA Tomonori <fujita.tomonori@xxxxxxxxxxxxx>
Subject: [PATCH] megaraid: use 32bit DMA mask for AMI Megaraid3

The hardware says that it supports 64bit DMA however it doesn't. This
patch always uses 32bit DMA mask.

Reported-by: Eddie <stunnel@xxxxxxxxxxxxx>
Tested-by: Eddie <stunnel@xxxxxxxxxxxxx>
Cc: stable@xxxxxxxxxx
Signed-off-by: FUJITA Tomonori <fujita.tomonori@xxxxxxxxxxxxx>
---
 drivers/scsi/megaraid/megaraid_mbox.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/drivers/scsi/megaraid/megaraid_mbox.c b/drivers/scsi/megaraid/megaraid_mbox.c
index 234f0b7..9ead856 100644
--- a/drivers/scsi/megaraid/megaraid_mbox.c
+++ b/drivers/scsi/megaraid/megaraid_mbox.c
@@ -888,6 +888,8 @@ megaraid_init_mbox(adapter_t *adapter)
 	if (((magic64 == HBA_SIGNATURE_64_BIT) &&
 		((adapter->pdev->subsystem_device !=
 		PCI_SUBSYS_ID_MEGARAID_SATA_150_6) &&
+		(adapter->pdev->device !=
+		PCI_DEVICE_ID_AMI_MEGARAID3) &&
 		(adapter->pdev->subsystem_device !=
 		PCI_SUBSYS_ID_MEGARAID_SATA_150_4))) ||
 		(adapter->pdev->vendor == PCI_VENDOR_ID_LSI_LOGIC &&
-- 
1.6.0.6

--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux