Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 21 Jan 2013 09:43:48 -0700
From:      Jim Harris <jimharris@freebsd.org>
To:        "Desai, Kashyap" <Kashyap.Desai@lsi.com>
Cc:        "freebsd-scsi@freebsd.org" <freebsd-scsi@freebsd.org>, "Kenneth D. Merry" <ken@freebsd.org>, "McConnell, Stephen" <Stephen.McConnell@lsi.com>, "jhb@freebsd.org" <jhb@freebsd.org>
Subject:   Re: Max Queue depth of HBA limited to 256 ?
Message-ID:  <CAJP=Hc8VYxSO7i9CMmNLWvsBkZWnw_YcNMTEXEpdzjiM_icLOA@mail.gmail.com>
In-Reply-To: <B2FD678A64EAAD45B089B123FDFC3ED75E68FD6158@inbmail01.lsi.com>
References:  <B2FD678A64EAAD45B089B123FDFC3ED75E68FD6158@inbmail01.lsi.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Jan 21, 2013 at 7:45 AM, Desai, Kashyap <Kashyap.Desai@lsi.com>wrote:

> Hi,
>
> I was trying to check few things on LSI controller, where we have more
> than 256 queue depth support.
> I added default maxtags in scsi/scsi_xpt.c as below. (Because I don't want
> mattags to restrict any outstanding commands the LSI HBA.
>
>     {
>         /* Default tagged queuing parameters for all devices */
>         {
>           T_ANY, SIP_MEDIA_REMOVABLE|SIP_MEDIA_FIXED,
>           /*vendor*/"*", /*product*/"*", /*revision*/"*"
>         },
>         /*quirks*/0, /*mintags*/2, /*maxtags*/1024      <--- Default
> maxtags were 256. I increase it to 10234
>     },
>
>
> LSI's SAS-HBA and MR-HBA can support more than 256 outstanding commands in
> Firmware.  But due to some reason, I am not able to pump more than 256
> outstanding commands to the HBA.
>
> I used "rawio -p 256 /dev/da1" and more /dev/dax in loop. I have sysctl
> parameter in Driver to display outstanding "FW commands". Max value for FW
> outstanding only goes up to 256.
>
> Also from some other mail thread Subject "mfi driver performance", I found
> that folks talk about tuning queue depth _but_ nobody discussed to increase
> it beyond 256. Is there any limitation in FreeBSD ?
>
>
What is your driver passing to cam_simq_alloc()?  This is where you specify
the controller's queue depth.

-Jim



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJP=Hc8VYxSO7i9CMmNLWvsBkZWnw_YcNMTEXEpdzjiM_icLOA>