A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix GH#133
[simgrid.git]
/
src
/
s4u
/
s4u_Host.cpp
diff --git
a/src/s4u/s4u_Host.cpp
b/src/s4u/s4u_Host.cpp
index
46d86bb
..
a99e6a8
100644
(file)
--- a/
src/s4u/s4u_Host.cpp
+++ b/
src/s4u/s4u_Host.cpp
@@
-7,6
+7,8
@@
#include "simgrid/s4u/Actor.hpp"
#include "simgrid/s4u/Engine.hpp"
#include "simgrid/s4u/Exec.hpp"
#include "simgrid/s4u/Actor.hpp"
#include "simgrid/s4u/Engine.hpp"
#include "simgrid/s4u/Exec.hpp"
+#include "simgrid/s4u/VirtualMachine.hpp"
+#include "src/plugins/vm/VirtualMachineImpl.hpp"
#include "src/simix/smx_private.hpp"
#include "src/surf/HostImpl.hpp"
#include "src/simix/smx_private.hpp"
#include "src/surf/HostImpl.hpp"
@@
-98,6
+100,11
@@
void Host::turn_off()
{
if (is_on()) {
simix::simcall([this] {
{
if (is_on()) {
simix::simcall([this] {
+ for (VirtualMachine* const& vm : vm::VirtualMachineImpl::allVms_)
+ if (vm->get_pm() == this) {
+ vm->shutdown();
+ vm->turn_off();
+ }
this->pimpl_cpu->turn_off();
this->pimpl_->turn_off();
this->pimpl_cpu->turn_off();
this->pimpl_->turn_off();