commit | b18c8bc310333719419ca7fedfceb3f7fdabfc17 | [log] [tgz] |
---|---|---|
author | Andrew Geissler <geissonator@yahoo.com> | Wed Aug 05 15:54:44 2020 -0500 |
committer | Andrew Geissler <geissonator@yahoo.com> | Wed Aug 05 15:54:44 2020 -0500 |
tree | 553d7e9f9ad202cb4ccfb4511a909fd3bb9b00e8 | |
parent | 98d28d875c9c800f6a8ec94397833b07bec58f18 [diff] |
mapper: remove mapper from host attention path Error injection testing has shown a significant bottleneck in the host attention path as the BMC is processing the error and also receiving commands from an external device requesting writes to the flash. During this scenario, there are a lot of BMC processes stopping and starting (as the host is being stopped and error data is collected). This results in a lot of work for the mapper application. It must delete its data structure for removed services and introspect all new services. This heavy workload by mapper not only affects the overall utilization of the BMC processor, but it also affect any other applications making D-Bus calls into mapper. Given the critical nature of this host ipmid code, which is being used as a part of the protocol with the debug collecting external device, it's important that mapper not be a bottle neck in this flow. This commit removes the mapper call from this critical path and just hard codes the needed service name. In general, BMC code is moving away from using mapper as a service lookup application if there is minimal chance of a service being implemented by multiple applications. In this case, the org.openbmc.HostIpmi service has had a single implementation since the beginning of the project. Tested: Verified that with this change the error inject was successfully processed and expected error was logged. Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I4db3b309db0169cbb98a9c0fd7527379a9071287
To build this package, do the following steps:
1. ./bootstrap.sh 2. ./configure ${CONFIGURE_FLAGS} 3. make
To clean the repository run ./bootstrap.sh clean
.