Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Really fix the issue.
[simgrid.git] / src / simix / libsmx.cpp
index 261f22c..2fa37b7 100644 (file)
@@ -26,6 +26,8 @@
 #include "mc/mc.h"
 #include "src/simix/smx_host_private.h"
 #include "src/kernel/activity/SynchroComm.hpp"
+#include "src/surf/virtual_machine.hpp"
+
 
 #include <simgrid/simix.hpp>
 
@@ -191,7 +193,12 @@ e_smx_state_t simcall_execution_wait(smx_activity_t execution)
  */
 sg_host_t simcall_vm_create(const char *name, sg_host_t phys_host)
 {
-  return simgrid::simix::kernelImmediate(std::bind(SIMIX_vm_create, name, phys_host));
+  return simgrid::simix::kernelImmediate([&name, &phys_host] {
+    sg_host_t host = surf_vm_model->createVM(name, phys_host);
+    host->extension_set<simgrid::simix::Host>(new simgrid::simix::Host());
+
+    return host;
+  });
 }
 
 /**