FWIW - I don't experience the problem/message on a Debian Squeeze box running 
Linux deb003.pod01 2.6.32-5-xen-amd64 #1 SMP Mon Jan 16 20:48:30 UTC 2012 
x86_64 GNU/Linux

I'm not currently able to re-compile my 3.2 ubuntu 12.04 kernel, but will try 
to find a comparable system to do it on.

On Nov 20, 2012, at 11:20 PM, Bjørn Mork wrote:

> Todd Fleisher <t...@fleetstreetops.com> writes:
> 
>> I get this periodically (seemingly random - but usually once it starts 
>> happening it sticks around for a while, then disappears only to return 
>> later) when I'm using LSI's MegaCli64 utility. When the kernel logs the 
>> error the MegaCli64 command doesn't return any data either.
>> 
>> Ex:
>> root@deb015.pod02:~# MegaCli64 -PDList -aALL
>> 
>> 
>> Exit Code: 0x00
>> 
>> 
>> Which is paired with a kernel message:
>> Nov 20 20:29:50 deb015 kernel: [797020.797811] megasas: Failed to alloc 
>> kernel SGL buffer for IOCTL 
>> 
>> Other times that same command (or other MegaCli64 commands) will succeed and 
>> return the associated data. When this happens, there is no megasas kernel 
>> message.
> 
> 
> Thanks.  I don't know what the MegaCli64 utility does, but I assume it
> use the driver specific ioctls to send passthrough commands like the
> smartmontools do.  That is consistent with your description.
> 
> But I was concluding too fast as usual.  The bug I found needs to be
> fixed, but it cannot be the cause of this problem.  If it were then you
> would most likely see many other effects on your system.  And the same
> bug has been backported to 2.6.32 as well.  And if if had not been, and
> you are in fact hit by it, then your system would have crashed instead.
> 
> So that cannot be the problem.  And then I don't know what could have
> changed between 2.6.32 and 3.2.  Could be something outside this driver.
> 
> It would be interesting to know something about the size of the buffers
> which cannot be allocated.  But running with debug pacthes is maybe out
> of the question? Otherwise you could try running with something like
> this to get a better picture of why this is failing:
> 
> 
> diff --git a/drivers/scsi/megaraid/megaraid_sas_base.c 
> b/drivers/scsi/megaraid/megaraid_sas_base.c
> index f013432..1c0fa1d 100644
> --- a/drivers/scsi/megaraid/megaraid_sas_base.c
> +++ b/drivers/scsi/megaraid/megaraid_sas_base.c
> @@ -4797,6 +4797,7 @@ megasas_mgmt_fw_ioctl(struct megasas_instance *instance,
>               if (!kbuff_arr[i]) {
>                       printk(KERN_DEBUG "megasas: Failed to alloc "
>                              "kernel SGL buffer for IOCTL \n");
> +                     printk(KERN_DEBUG "megasas: iov_len=%d\n", 
> ioc->sgl[i].iov_len);
>                       error = -ENOMEM;
>                       goto out;
>               }
> 
> 
> 
> 
> Bjørn


--
To UNSUBSCRIBE, email to debian-kernel-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/ec4cf311-1d76-4377-9ca8-f2fdca291...@fleetstreetops.com

Reply via email to