Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Messing up with VM
authorFrederic Suter <frederic.suter@cc.in2p3.fr>
Thu, 11 Jan 2018 12:40:24 +0000 (13:40 +0100)
committerFrederic Suter <frederic.suter@cc.in2p3.fr>
Thu, 11 Jan 2018 12:51:28 +0000 (13:51 +0100)
commit55ff61a313ebbe8195ca80dcb61697b47f59d98f
treea8ba6dee2f40822b5377cc2c383369f229fd230f
parenta3f8804bb5e5c627116322217d36cce6c9df9495
Messing up with VM
 - move VM tracing to S4U
 - move last functions related to migration to the plugin
    - MSG_vm_create is now MSG_vm_create_migratable and tagged
      as DEPRECATED (will be removed in 3.21)
    - Assume that the live migration plugin is always loaded in JAVA
      (because all VMs are create with MSG_vm_create there)
 - add a proper destroy function to S4U VMs (shutdown first, then
   destroy)
 - pimpl_vm_ is now private (with getImpl() as accessor)
    - and use the user level interface as much as possible

Conclusion: The MSG_vm interface is now just a dummy wrapper on the
S4U interface and live migration is fully isolated in a plugin. Only
the is_migrating bool remains in VirtualMachineImpl, but is not (and
should not be) accessed or modified from outside the plugin. We can live
with that.
17 files changed:
examples/java/cloud/masterworker/Main.java
examples/java/cloud/migration/Main.java
examples/s4u/cloud-migration/s4u-cloud-migration.tesh
include/simgrid/msg.h
include/simgrid/plugins/live_migration.h
include/simgrid/s4u/VirtualMachine.hpp
src/bindings/java/jmsg.cpp
src/bindings/java/jmsg_vm.cpp
src/bindings/java/org/simgrid/msg/Msg.java
src/msg/msg_vm.cpp
src/plugins/vm/VirtualMachineImpl.cpp
src/plugins/vm/VmLiveMigration.cpp
src/plugins/vm/s4u_VirtualMachine.cpp
src/surf/HostImpl.cpp
src/surf/plugins/dirty_page_tracking.cpp
src/surf/plugins/host_energy.cpp
teshsuite/msg/cloud-migration/cloud-migration.tesh