/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
-#include <simgrid/s4u/host.hpp>
-
-#include "src/simix/smx_private.h"
-#include "cpu_cas01.hpp"
#include "src/surf/HostImpl.hpp"
-#include "simgrid/sg_config.h"
-
-#include "VirtualMachineImpl.hpp"
-#include "network_interface.hpp"
+#include "src/plugins/vm/VirtualMachineImpl.hpp"
XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_host, surf, "Logging specific to the SURF host module");
void HostModel::adjustWeightOfDummyCpuActions()
{
/* iterate for all virtual machines */
- for (VirtualMachineImpl* ws_vm : VirtualMachineImpl::allVms_) {
+ for (s4u::VirtualMachine* ws_vm : vm::VirtualMachineImpl::allVms_) {
- Cpu* cpu = ws_vm->piface_->pimpl_cpu;
+ Cpu* cpu = ws_vm->pimpl_cpu;
int is_active = lmm_constraint_used(cpu->getModel()->getMaxminSystem(), cpu->getConstraint());
/* FIXME: we should use lmm_update_variable_weight() ? */
/* FIXME: If we assign 1.05 and 0.05, the system makes apparently wrong values. */
- ws_vm->action_->setPriority(1);
+ ws_vm->pimpl_vm_->action_->setPriority(1);
} else {
/* no task exits on this VM */
XBT_DEBUG("set the weight of the dummy CPU action on PM to 0");
- ws_vm->action_->setPriority(0);
+ ws_vm->pimpl_vm_->action_->setPriority(0);
}
}
}
s_mount_t mnt;
unsigned int cursor;
- XBT_DEBUG("Search for storage name '%s' on '%s'", mount, piface_->name().c_str());
+ XBT_DEBUG("Search for storage name '%s' on '%s'", mount, piface_->cname());
xbt_dynar_foreach (storage_, cursor, mnt) {
XBT_DEBUG("See '%s'", mnt.name);
if (!strcmp(mount, mnt.name)) {
}
}
if (!st)
- xbt_die("Can't find mount '%s' for '%s'", mount, piface_->name().c_str());
+ xbt_die("Can't find mount '%s' for '%s'", mount, piface_->cname());
return st;
}
if (xbt_lib_get_level(xbt_lib_get_elm_or_null(storage_lib, key), SURF_STORAGE_LEVEL) != nullptr) {
simgrid::surf::Storage* storage = static_cast<simgrid::surf::Storage*>(
xbt_lib_get_level(xbt_lib_get_elm_or_null(storage_lib, key), SURF_STORAGE_LEVEL));
- if (!strcmp((const char*)storage->attach_, piface_->name().c_str())) {
+ if (!strcmp((const char*)storage->attach_, piface_->cname())) {
xbt_dynar_push_as(result, void*, (void*)storage->getName());
}
}
char* file_mount_name = nullptr;
char* mount_name = nullptr;
- XBT_DEBUG("Search for storage name for '%s' on '%s'", fullpath, piface_->name().c_str());
+ XBT_DEBUG("Search for storage name for '%s' on '%s'", fullpath, piface_->cname());
xbt_dynar_foreach (storage_, cursor, mnt) {
XBT_DEBUG("See '%s'", mnt.name);
file_mount_name = (char*)xbt_malloc((strlen(mnt.name) + 1));
path[strlen(fullpath) - longest_prefix_length] = '\0';
mount_name[longest_prefix_length] = '\0';
} else
- xbt_die("Can't find mount point for '%s' on '%s'", fullpath, piface_->name().c_str());
+ xbt_die("Can't find mount point for '%s' on '%s'", fullpath, piface_->cname());
XBT_DEBUG("OPEN %s on disk '%s'", path, st->getName());
Action* action = st->open((const char*)mount_name, (const char*)path);
{
/* Check if the new full path is on the same mount point */
if (!strncmp((const char*)fd->mount, fullpath, strlen(fd->mount))) {
- sg_size_t *psize, *new_psize;
- psize = (sg_size_t*)xbt_dict_get_or_null(findStorageOnMountList(fd->mount)->content_, fd->name);
- new_psize = xbt_new(sg_size_t, 1);
- *new_psize = *psize;
+ sg_size_t* psize = (sg_size_t*)xbt_dict_get_or_null(findStorageOnMountList(fd->mount)->content_, fd->name);
if (psize) { // src file exists
+ sg_size_t* new_psize = xbt_new(sg_size_t, 1);
+ *new_psize = *psize;
xbt_dict_remove(findStorageOnMountList(fd->mount)->content_, fd->name);
char* path = (char*)xbt_malloc((strlen(fullpath) - strlen(fd->mount) + 1));
strncpy(path, fullpath + strlen(fd->mount), strlen(fullpath) - strlen(fd->mount) + 1);
}
}
- xbt_dynar_t HostImpl::getVms()
- {
- xbt_dynar_t dyn = xbt_dynar_new(sizeof(simgrid::surf::VirtualMachineImpl*), nullptr);
-
- for (VirtualMachineImpl* ws_vm : VirtualMachineImpl::allVms_) {
- if (this == ws_vm->getPm()->pimpl_)
- xbt_dynar_push(dyn, &ws_vm);
- }
-
- return dyn;
- }
}
}