summaryrefslogtreecommitdiff
path: root/meta-ibm
diff options
context:
space:
mode:
authorManojkiran Eda <manojkiran.eda@gmail.com>2024-01-08 19:52:54 +0300
committerAdriana Kobylak <anoo@us.ibm.com>2024-01-18 01:17:14 +0300
commit2232995c3b381906b7cc505d51a49b09fba92cd0 (patch)
tree915dd6518a162e3d3690dc4153993df702ea443f /meta-ibm
parentf079ad7e47d674943dc841bd3f5a81887b2ad092 (diff)
downloadopenbmc-2232995c3b381906b7cc505d51a49b09fba92cd0.tar.xz
meta-ibm: Bind MCTP daemon in tandem to PLDM daemon
Applications that operate on BMC typically rely on the standard systemd recovery mechanism. In this setup, systemd automatically restarts applications when they encounter issues. However, for critical daemons like PLDM in IBM systems, the situation is more nuanced. PLDM plays a vital role in IBM infrastructures as it facilitates communication between BMC and the host. Therefore, if the PLDM daemon experiences a crash or restarts unexpectedly, it's crucial to notify the remote PLDM endpoints. This notification ensures that the remote endpoints can detect the disruption and initiate corrective measures to synchronize critical data, such as PDRs, between the two endpoints. To efficiently communicate the status of a remote endpoint when the PLDM faces an interruption, the MTCP channel serves as a key mechanism. Specifically, when the mctp-demux daemon undergoes a restart, it reinitializes the MCTP channel. This action effectively signals the remote endpoint that an issue has occurred. By doing so, the remote side can promptly take the necessary corrective actions to maintain data synchronization and system integrity. Change-Id: I7d28ef9b3fc8263a100d7ff1f5378fcddcdd3f89 Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>
Diffstat (limited to 'meta-ibm')
-rw-r--r--meta-ibm/recipes-phosphor/libmctp/files/p10bmc/service-override.conf2
-rw-r--r--meta-ibm/recipes-phosphor/libmctp/files/witherspoon-tacoma/service-override.conf2
-rw-r--r--meta-ibm/recipes-phosphor/libmctp/libmctp_%.bbappend6
3 files changed, 10 insertions, 0 deletions
diff --git a/meta-ibm/recipes-phosphor/libmctp/files/p10bmc/service-override.conf b/meta-ibm/recipes-phosphor/libmctp/files/p10bmc/service-override.conf
new file mode 100644
index 0000000000..04c1245801
--- /dev/null
+++ b/meta-ibm/recipes-phosphor/libmctp/files/p10bmc/service-override.conf
@@ -0,0 +1,2 @@
+[Unit]
+BindsTo=pldmd.service
diff --git a/meta-ibm/recipes-phosphor/libmctp/files/witherspoon-tacoma/service-override.conf b/meta-ibm/recipes-phosphor/libmctp/files/witherspoon-tacoma/service-override.conf
new file mode 100644
index 0000000000..04c1245801
--- /dev/null
+++ b/meta-ibm/recipes-phosphor/libmctp/files/witherspoon-tacoma/service-override.conf
@@ -0,0 +1,2 @@
+[Unit]
+BindsTo=pldmd.service
diff --git a/meta-ibm/recipes-phosphor/libmctp/libmctp_%.bbappend b/meta-ibm/recipes-phosphor/libmctp/libmctp_%.bbappend
index 48829aebee..637fad615d 100644
--- a/meta-ibm/recipes-phosphor/libmctp/libmctp_%.bbappend
+++ b/meta-ibm/recipes-phosphor/libmctp/libmctp_%.bbappend
@@ -3,14 +3,20 @@ FILESEXTRAPATHS:prepend := "${THISDIR}/files:"
install_mctp_configuration() {
install -d ${D}${sysconfdir}/default
install -m 0644 ${WORKDIR}/mctp ${D}${sysconfdir}/default/mctp
+ install -d ${D}${systemd_system_unitdir}/mctp-demux.service.d
+ install -D -m 0644 ${WORKDIR}/service-override.conf ${D}${systemd_system_unitdir}/mctp-demux.service.d/
}
SRC_URI:append:p10bmc = " file://mctp"
+SRC_URI:append:p10bmc = " file://service-override.conf"
do_install:append:p10bmc() {
install_mctp_configuration
}
SRC_URI:append:witherspoon-tacoma = " file://mctp"
+SRC_URI:append:witherspoon-tacoma = " file://service-override.conf"
do_install:append:witherspoon-tacoma() {
install_mctp_configuration
}
+
+FILES:${PN}:append = " ${systemd_system_unitdir}/mctp-demux.service.d/service-override.conf"