Description of problem: The megaraid_sas driver uses pci_alloc_consistent to allocate an array of buffers to copy user arguments into within the ioctl path. This can fail under heavy load leading to messages like: megasas: Failed to alloc kernel SGL buffer for IOCTL Upstream fixed this here: commit 9f35fa8a14e6216a859e2dfbe50ade497f9603ef Author: Sumant Patro <sumantp> Date: Wed Feb 14 12:55:45 2007 -0800 [SCSI] megaraid_sas: replace pci_alloc_consitent with dma_alloc_coherent in ioctl path Replaced pci_alloc_consistent with dma_alloc_coherent from the ioctl path. This is to avoid situations where ioctl fails for lack of memory (when system under heavy stress). Signed-off-by: Sumant Patro <sumant.patro> Signed-off-by: James Bottomley <James.Bottomley> Appearing in dmesg. Version-Release number of selected component (if applicable): kernel-2.6.9-55.EL How reproducible: Moderate; problem was observed during pre-production stress testing of boxes using megaraid_sas as the primary storage. Steps to Reproduce: 1. Configure a system with megaraid_sas providing storage 2. Create memory pressure on the system while something is attempting ioctl commands on the megaraid Actual results: Appearance of: "megasas: Failed to alloc kernel SGL buffer for IOCTL" in dmesg. Expected results: Megaraid_sas ioctls succeed.
Created attachment 158935 [details] re-diff of upstream patch for RHEL4
This problem is addressed with the updated driver being tracked in bug 312061. *** This bug has been marked as a duplicate of 312061 ***
where is the patch for this? what is thenumber?
Attached in comment #4 (a backport of the git commit given in comment #0).
This bug is a duplicate of bug 312061, but that bug is not viewable by me. Why is it being kept a secret?
Ben - this issue was resolved in RHEL 4.7. Please upgrade to RHEL 4.7, else file a support ticket. Bug 312061 contains partner-NDA confidential information in it.