PEL: Increase PLDM timeout
The current time the code waits for a PLDM response from PHYP before it
considers it a timeout is ten seconds, after which it will retry sending
the command again. However, PHYP has two twenty second waits on its
responses to the BMC PLDM daemon so ten seconds isn't long enough to
know something failed.
There has been a case seen where it took the BMC PLDM code 12 seconds to
handle the response from PHYP, in which case the PEL daemon thought it
failed and re-sent a new file available command to PHYP for a PEL it
already knew about.
The timeout value is being increased to 45 seconds, which is the 40
seconds for the PHYP wait plus some wiggle room.
Even if PHYP does time out trying to respond it does does already know
about the PEL, so if we resend it will already have it, but I don't
really see any alternatives, as the code can't be sure PHYP got it if it
never responded.
Tested:
PELs are sent to PHYP. It's rare to hit a case where there are
timeouts, so putting this in place anyway.
Change-Id: I3f4ce422f292d8d54c36bd9cf051f776b837b983
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
diff --git a/extensions/openpower-pels/pldm_interface.hpp b/extensions/openpower-pels/pldm_interface.hpp
index b907af4..6b33af0 100644
--- a/extensions/openpower-pels/pldm_interface.hpp
+++ b/extensions/openpower-pels/pldm_interface.hpp
@@ -192,7 +192,7 @@
/**
* @brief The command timeout value
*/
- const std::chrono::milliseconds _receiveTimeout{10000};
+ const std::chrono::milliseconds _receiveTimeout{45000};
/**
* @brief The libpldm instance ID database.