Revert commit to fix CI errors
The commit https://gerrit.openbmc.org/c/openbmc/openpower-vpd-parser/+/83309
is being reverted to avoid that many changes just to avoid CI error.
The CI error can be fixed with less change.
Change-Id: Id6aeb4bfe91b66863e95c51153c9f2ec43059554
Signed-off-by: Sunny Srivastava <sunnsr25@in.ibm.com>
diff --git a/vpd-manager/include/bios_handler.hpp b/vpd-manager/include/bios_handler.hpp
index 45ebba6..98887f6 100644
--- a/vpd-manager/include/bios_handler.hpp
+++ b/vpd-manager/include/bios_handler.hpp
@@ -235,15 +235,32 @@
*
* @param[in] i_connection - Asio connection object.
* @param[in] i_manager - Manager object.
- * @throw std::exception
*/
BiosHandler(
const std::shared_ptr<sdbusplus::asio::connection>& i_connection,
const std::shared_ptr<Manager>& i_manager) : m_asioConn(i_connection)
{
- m_specificBiosHandler = std::make_shared<T>(i_manager);
+ try
+ {
+ m_specificBiosHandler = std::make_shared<T>(i_manager);
+ checkAndListenPldmService();
+ }
+ catch (std::exception& l_ex)
+ {
+ // catch any exception here itself and don't pass it to main as it
+ // will mark the service failed. Since VPD-Manager is a critical
+ // service, failing it can push BMC to quiesced state whic is not
+ // required in this case.
+ std::string l_errMsg = "Instantiation of BIOS Handler failed. { ";
+ l_errMsg += l_ex.what() + std::string(" }");
+ EventLogger::createSyncPel(
+ types::ErrorType::FirmwareError, types::SeverityType::Warning,
+ __FILE__, __FUNCTION__, 0, l_errMsg, std::nullopt, std::nullopt,
+ std::nullopt, std::nullopt);
+ }
}
+ private:
/**
* @brief API to check if PLDM service is running and run BIOS sync.
*
@@ -252,9 +269,8 @@
* registers a listener to be notified when the service starts so that a
* restore can be performed.
*/
- void checkAndListenPldmService() noexcept;
+ void checkAndListenPldmService();
- private:
/**
* @brief Register listener for BIOS attribute property change.
*