HomeFreeBSD

MFC r348996 (by jtl):

Description

MFC r348996 (by jtl):
The current IPMI KCS code is waiting 100us for all transitions (roughly
between each byte either sent or received). However, most transitions
actually complete in 2-3 microseconds.

By polling the status register with a delay of 4us with exponential
backoff, the performance of most IPMI operations is significantly
improved:

  • A BMC update on a Supermicro x9 or x11 motherboard goes from ~1 hour to ~6-8 minutes.
  • An ipmitool sensor list time improves by a factor of 4.

Testing showed no significant improvements on a modern server by using
a lower delay.

The changes should also generally reduce the total amount of CPU or
I/O bandwidth used for a given IPMI operation.

Details

Provenance
mavAuthored on
Parents
rS360155: kevent32: fix the split of data into data1/data2
Branches
Unknown
Tags
Unknown