Description of problem: LSI Logic MegaRAID SATA RAID Controllers (150-4 and 150-6) are not works correctly if more than 4 GB memory installed on the node. According to Ju Seokmann this hardware is not supported 64 bit DMA. He tried to fix this issue in 2.20.4.9 version of megaraid_mbox driver, however OpenVZ linux kernel team has discovered that his patch was wrong. Version-Release number of selected component (if applicable): RHEL4u4 2.6.9-42.0.3 kernels How reproducible: smp and hugemem kernels hangs or tried to access beyond end of device on the nodes with more than 4Gb memory and LSI Logic MegaRAID SATA RAID Controllers (150-4 or 150-6). Steps to Reproduce: just try to but kernel on the nodes with more than 4Gb memory and LSI Logic MegaRAID SATA RAID Controllers (150-4 or 150-6) Actual results: booting freezed or kernel tried to access beyond end of device Expected results: kernel should boot correctly Additional info: the same kernels works correctly if they are loaded with "mem=3072M" substring in kernel commandline.
Created attachment 138559 [details] this patch prevents enabling of 64-bit dma on SATA 150-4 and 150-6 devices
Chip, Please review. Compare with upstream and RHEL 5. See if we need this fix there, or there is something to backport. Check with LSI Logic for other updates to this driver as RHEL 4.5 gets closer.
This patch is in RHEL5.
Created attachment 146623 [details] touch up of the previous patch to apply cleanly
commit 031280f6e73d9177c93333c96e37eb05f2522faa Author: Andrey Mirkin <(amirkin)> Date: Mon Oct 16 12:08:43 2006 +0400 [SCSI] megaraid_{mm,mbox}: 64-bit DMA capability fix It is known that 2 LSI Logic MegaRAID SATA RAID Controllers (150-4 and 150-6) don't support 64-bit DMA. Unfortunately currently this check is wrong and driver sets 64-bit DMA mode for these devices. Signed-off-by: Andrey Mirkin <amirkin> Acked-by: "Ju, Seokmann" <Seokmann.Ju> Signed-off-by: James Bottomley <James.Bottomley> :100644 100644 c0edb66... 7bac86d... M drivers/scsi/megaraid/megaraid_mbox.c commit 8741ca71a3f626a56595b88200ebf952ce77ceef Author: Andrey Mirkin <amirkin> Date: Mon Oct 16 12:08:43 2006 +0400 [PATCH] scsi: megaraid_{mm,mbox}: 64-bit DMA capability fix It is known that 2 LSI Logic MegaRAID SATA RAID Controllers (150-4 and 150-6) don't support 64-bit DMA. Unfortunately currently this check is wrong and driver sets 64-bit DMA mode for these devices. Signed-off-by: Andrey Mirkin <amirkin> Acked-by: Vasily Averin <vvs> Signed-off-by: Linus Torvalds <torvalds> :100644 100644 c0edb66... 7bac86d... M drivers/scsi/megaraid/megaraid_mbox.c commit fbf6080225a03aa2b3671acacebdf615f1d3f6ba Author: Ju, Seokmann <Seokmann.Ju> Date: Tue Jul 25 08:44:48 2006 -0600 [SCSI] megaraid_{mm,mbox}: 64-bit DMA capability checker This patch contains - a fix for 64-bit DMA capability check in megaraid_{mm,mbox} driver. - includes changes (going back to 32-bit DMA mask if 64-bit DMA mask failes) suggested by James with previous patch. - addition of SATA 150-4/6 as commented by Vasily Averin. With patch, the driver access PCIconfiguration space with dedicated offset to read a signature. If the signature read, it means that the controller has capability to handle 64-bit DMA. Without this patch, the driver used to blindly claim 64-bit DMA capability. The issue has been reported by Vasily Averin [vvs]. Thank you Vasily for the reporting. Signed-Off By: Seokmann Ju <seokmann.ju> Signed-off-by: James Bottomley <James.Bottomley> :100644 100644 9271513... e671af0... M drivers/scsi/megaraid/megaraid_mbox.c
QE ack for RHEL4.5.
Adding LSI for their feedback...
committed in stream U5 build 45. A test kernel with this patch is available from http://people.redhat.com/~jbaron/rhel4/
The patch is in the -52 kernel, still awaiting partner feedback.
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on the solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2007-0304.html