[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [win-pv-devel] [PATCH 16/20] Only acknowledge the shutdown if type is known
> -----Original Message----- > From: win-pv-devel [mailto:win-pv-devel-bounces@xxxxxxxxxxxxxxxxxxxx] On > Behalf Of Owen Smith > Sent: 24 May 2016 15:21 > To: win-pv-devel@xxxxxxxxxxxxxxxxxxxx > Cc: Owen Smith > Subject: [win-pv-devel] [PATCH 16/20] Only acknowledge the shutdown if > type is known > Looks like this should be folded into the previous patch but... > Signed-off-by: Owen Smith <owen.smith@xxxxxxxxxx> > --- > src/liteagent/LiteAgent.cpp | 13 +++++++++++-- > 1 file changed, 11 insertions(+), 2 deletions(-) > > diff --git a/src/liteagent/LiteAgent.cpp b/src/liteagent/LiteAgent.cpp > index 9f6f56f..739acbb 100644 > --- a/src/liteagent/LiteAgent.cpp > +++ b/src/liteagent/LiteAgent.cpp > @@ -309,8 +309,8 @@ void CLiteAgent::OnShutdown() > > // check shutdown type and enact shutdown > std::string type; > - m_dev->StoreRead("control/shutdown", type); > - m_dev->StoreRemove("control/shutdown"); > + if (!m_dev->StoreRead("control/shutdown", type)) > + return; > > CLiteAgent::Log("OnShutdown(%s)\n", type.c_str()); > > @@ -326,6 +326,7 @@ void CLiteAgent::OnShutdown() > m_dev->StoreWrite("control/shutdown-state", "failed"); > CLiteAgent::Log("InitiateSystemShutdownEx failed %08x\n", > GetLastError()); > } > + m_dev->StoreRemove("control/shutdown"); > } > else if (type == "reboot") { > AcquireSystemPrivilege(SE_SHUTDOWN_NAME); > @@ -338,6 +339,7 @@ void CLiteAgent::OnShutdown() > m_dev->StoreWrite("control/shutdown-state", "failed"); > CLiteAgent::Log("InitiateSystemShutdownEx failed %08x\n", > GetLastError()); > } > + m_dev->StoreRemove("control/shutdown"); > } > else if (type == "hibernate") { > AcquireSystemPrivilege(SE_SHUTDOWN_NAME); > @@ -347,6 +349,7 @@ void CLiteAgent::OnShutdown() > m_dev->StoreWrite("control/hibernation-state", "failed"); > CLiteAgent::Log("SetSystemPowerState failed %08x\n", > GetLastError()); > } > + m_dev->StoreRemove("control/shutdown"); > } > else if (type == "s3") { > AcquireSystemPrivilege(SE_SHUTDOWN_NAME); > @@ -356,6 +359,7 @@ void CLiteAgent::OnShutdown() > m_dev->StoreWrite("control/s3-state", "failed"); > CLiteAgent::Log("SetSuspendState failed %08x\n", GetLastError()); > } > + m_dev->StoreRemove("control/shutdown"); > } > } > > @@ -367,6 +371,11 @@ void CLiteAgent::OnSuspend() > return; > CLiteAgent::Log("OnSuspend(%ws)\n", m_dev->Path()); > > + if (m_ctxt_shutdown) > + m_dev->StoreRemoveWatch(m_ctxt_shutdown); > + m_ctxt_shutdown = NULL; > + m_dev->StoreAddWatch("control/shutdown", m_shutdown, > &m_ctxt_shutdown); > + ... this looks like it should have been in an even earlier patch. Paul > // advertise > m_dev->StoreWrite("control/feature-shutdown", "1"); > // set xen time > -- > 1.9.4.msysgit.1 > > > _______________________________________________ > win-pv-devel mailing list > win-pv-devel@xxxxxxxxxxxxxxxxxxxx > http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel _______________________________________________ win-pv-devel mailing list win-pv-devel@xxxxxxxxxxxxxxxxxxxx http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |