summaryrefslogtreecommitdiffstats
path: root/chassis_state_manager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'chassis_state_manager.cpp')
-rw-r--r--chassis_state_manager.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/chassis_state_manager.cpp b/chassis_state_manager.cpp
index e1a2e0f..9c771bd 100644
--- a/chassis_state_manager.cpp
+++ b/chassis_state_manager.cpp
@@ -15,6 +15,7 @@ namespace server = sdbusplus::xyz::openbmc_project::State::server;
using namespace phosphor::logging;
constexpr auto CHASSIS_STATE_POWEROFF_TGT = "obmc-chassis-poweroff@0.target";
+constexpr auto CHASSIS_STATE_HARD_POWEROFF_TGT = "obmc-chassis-hard-poweroff@0.target";
constexpr auto CHASSIS_STATE_POWERON_TGT = "obmc-chassis-poweron@0.target";
constexpr auto ACTIVE_STATE = "active";
@@ -23,7 +24,8 @@ constexpr auto ACTIVATING_STATE = "activating";
/* Map a transition to it's systemd target */
const std::map<server::Chassis::Transition,std::string> SYSTEMD_TARGET_TABLE =
{
- {server::Chassis::Transition::Off, CHASSIS_STATE_POWEROFF_TGT},
+ // Use the hard off target to ensure we shutdown immediately
+ {server::Chassis::Transition::Off, CHASSIS_STATE_HARD_POWEROFF_TGT},
{server::Chassis::Transition::On, CHASSIS_STATE_POWERON_TGT}
};
OpenPOWER on IntegriCloud