X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/0445b0862c323d8285fba620d5137a0891527914..6c12a132ca10eefd1d566e489e837e459db4d979:/src/surf/workstation_interface.cpp diff --git a/src/surf/workstation_interface.cpp b/src/surf/workstation_interface.cpp index 00ecfdf261..6b021c5b5f 100644 --- a/src/surf/workstation_interface.cpp +++ b/src/surf/workstation_interface.cpp @@ -125,6 +125,7 @@ void Workstation::setState(e_surf_resource_state_t state){ e_surf_resource_state_t old = Resource::getState(); Resource::setState(state); surf_callback_emit(workstationStateChangedCallbacks, this, old, state); + p_cpu->setState(state); } int Workstation::getCore(){ @@ -251,6 +252,7 @@ ActionPtr Workstation::open(const char* fullpath) { else xbt_die("Can't find mount point for '%s' on '%s'", fullpath, getName()); + XBT_DEBUG("OPEN %s on disk '%s'",path, st->getName()); ActionPtr action = st->open((const char*)mount_name, (const char*)path); free((char*)path); free((char*)mount_name); @@ -259,19 +261,19 @@ ActionPtr Workstation::open(const char* fullpath) { ActionPtr Workstation::close(surf_file_t fd) { StoragePtr st = findStorageOnMountList(fd->mount); - XBT_DEBUG("CLOSE on disk '%s'",st->getName()); + XBT_DEBUG("CLOSE %s on disk '%s'",fd->name, st->getName()); return st->close(fd); } ActionPtr Workstation::read(surf_file_t fd, sg_size_t size) { StoragePtr st = findStorageOnMountList(fd->mount); - XBT_DEBUG("READ on disk '%s'",st->getName()); + XBT_DEBUG("READ %s on disk '%s'",fd->name, st->getName()); return st->read(fd, size); } ActionPtr Workstation::write(surf_file_t fd, sg_size_t size) { StoragePtr st = findStorageOnMountList(fd->mount); - XBT_DEBUG("WRITE on disk '%s'",st->getName()); + XBT_DEBUG("WRITE %s on disk '%s'",fd->name, st->getName()); return st->write(fd, size); } @@ -288,7 +290,7 @@ int Workstation::unlink(surf_file_t fd) { st->getName()); return -1; } else { - XBT_DEBUG("UNLINK on disk '%s'",st->getName()); + XBT_DEBUG("UNLINK %s on disk '%s'",fd->name, st->getName()); st->m_usedSize -= fd->size; // Remove the file from storage @@ -325,7 +327,7 @@ sg_size_t Workstation::fileTell(surf_file_t fd){ return fd->current_position; } -int Workstation::fileSeek(surf_file_t fd, sg_size_t offset, int origin){ +int Workstation::fileSeek(surf_file_t fd, sg_offset_t offset, int origin){ switch (origin) { case SEEK_SET: @@ -353,7 +355,7 @@ int Workstation::fileMove(surf_file_t fd, const char* fullpath){ *new_psize = *psize; if (psize){// src file exists xbt_dict_remove(findStorageOnMountList(fd->mount)->p_content, fd->name); - char *path = (char *) xbt_malloc ((strlen(fullpath)-strlen(fd->mount)+1));; + char *path = (char *) xbt_malloc ((strlen(fullpath)-strlen(fd->mount)+1)); strncpy(path, fullpath+strlen(fd->mount), strlen(fullpath)-strlen(fd->mount)+1); xbt_dict_set(findStorageOnMountList(fd->mount)->p_content, path, @@ -374,7 +376,7 @@ int Workstation::fileMove(surf_file_t fd, const char* fullpath){ xbt_dynar_t Workstation::getVms() { - xbt_dynar_t dyn = xbt_dynar_new(sizeof(smx_host_t), NULL); + xbt_dynar_t dyn = xbt_dynar_new(sizeof(WorkstationVMPtr), NULL); /* iterate for all virtual machines */ for (WorkstationVMModel::vm_list_t::iterator iter = @@ -382,8 +384,8 @@ xbt_dynar_t Workstation::getVms() iter != WorkstationVMModel::ws_vms.end(); ++iter) { WorkstationVMPtr ws_vm = &*iter; - if (this == ws_vm-> p_subWs) - xbt_dynar_push(dyn, &ws_vm->p_subWs); + if (this == ws_vm->p_subWs) + xbt_dynar_push(dyn, &ws_vm); } return dyn;