On Saturday, March 23, 2013 11:11:20 pm Eric van Gyzen wrote:
> At work, we discovered that our application's IPMI thread would often 
> use a lot of CPU time.  The KCS thread uses DELAY to wait for the BMC, 
> so it can run without sleeping for a "long" time with a slow BMC.  It 
> also holds the ipmi_softc.ipmi_lock during this time.  When using 
> adaptive mutexes, an application thread that wants to operate on the 
> ipmi_pending_requests list will also spin during this same time.
> 
> We see no reason that the KCS thread needs to hold the lock while 
> servicing a request.  We've been running with the attached patch for a 
> few months, with no ill effects.

The lock protects against concurrent access to the registers themselves
(though the thread sort of does this already).  However, even with a slow
BMC it shouldn't be waiting but so long.  I had some other comments about
this patch in my reply to when it was committed.

-- 
John Baldwin
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "[email protected]"

Reply via email to