kernel: mps0: Out of chain frames, consider increasing hw.mps.max_chains.

Slawa Olhovchenkov slw at zxy.spb.ru
Tue Mar 8 18:48:28 UTC 2016


On Tue, Mar 08, 2016 at 10:34:23AM -0800, Scott Long wrote:

> 
> > On Mar 8, 2016, at 10:07 AM, Slawa Olhovchenkov <slw at zxy.spb.ru> wrote:
> > 
> > On Mon, Mar 07, 2016 at 02:10:12PM +0300, Slawa Olhovchenkov wrote:
> > 
> >>>>>> This allocated one for all controllers, or allocated for every controller?
> >>>>> 
> >>>>> It’s per-controller.
> >>>>> 
> >>>>> I’ve thought about making the tuning be dynamic at runtime.  I
> >>>>> implemented similar dynamic tuning for other drivers, but it seemed
> >>>>> overly complex for low benefit.  Implementing it for this driver
> >>>>> would be possible but require some significant code changes.
> >>>> 
> >>>> What cause of chain_free+io_cmds_active << max_chains?
> >>>> One cmd can use many chains?
> >>> 
> >>> Yes.  A request uses and active command, and depending on the size of the I/O,
> >>> it might use several chain frames.
> > 
> > I am play with max_chains and like significant cost of handling
> > max_chains: with 8192 system resonded badly vs 2048. Now try 3192,
> > response like with 2048.
> 
> Hi, I’m not sure I understand what you’re saying.  You said that you tried 8192, but the system still complained of being out of chain frames?  Now you are trying fewer, only 3192?

With 8192 system not complained of being out of chain frames, but like
need more CPU power to handle this chain list -- traffic graf (this
host servered HTTP by nginx) have many "jerking", with 3192 traffic
graf is more smooth.


More information about the freebsd-stable mailing list