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
Restarting or killing maestro does not seem to be a cleaver idea
[simgrid.git]
/
src
/
surf
/
surf_interface.cpp
diff --git
a/src/surf/surf_interface.cpp
b/src/surf/surf_interface.cpp
index
ce3e759
..
8beb759
100644
(file)
--- a/
src/surf/surf_interface.cpp
+++ b/
src/surf/surf_interface.cpp
@@
-1,4
+1,4
@@
-/* Copyright (c) 2004-201
8
. The SimGrid Team. All rights reserved. */
+/* Copyright (c) 2004-201
9
. The SimGrid Team. All rights reserved. */
/* 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. */
/* 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. */
@@
-8,6
+8,7
@@
#include "simgrid/s4u/Engine.hpp"
#include "simgrid/sg_config.hpp"
#include "src/internal_config.h"
#include "simgrid/s4u/Engine.hpp"
#include "simgrid/sg_config.hpp"
#include "src/internal_config.h"
+#include "src/simgrid/version.h"
#include "src/surf/HostImpl.hpp"
#include "src/surf/xml/platf.hpp"
#include "surf/surf.hpp"
#include "src/surf/HostImpl.hpp"
#include "src/surf/xml/platf.hpp"
#include "surf/surf.hpp"
@@
-27,14
+28,13
@@
XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_kernel, surf, "Logging specific to SURF (ke
* Utils *
*********/
* Utils *
*********/
-std::vector<simgrid::kernel::resource::Model*>
* all_existing_models = nullptr
; /* to destroy models correctly */
+std::vector<simgrid::kernel::resource::Model*>
all_existing_models
; /* to destroy models correctly */
-simgrid::
trace_mgr::future_evt_set *future_evt_set = nullptr
;
+simgrid::
kernel::profile::FutureEvtSet future_evt_set
;
std::vector<std::string> surf_path;
std::vector<std::string> surf_path;
-std::vector<simgrid::s4u::Host*> host_that_restart;
/** set of hosts for which one want to be notified if they ever restart. */
std::set<std::string> watched_hosts;
/** set of hosts for which one want to be notified if they ever restart. */
std::set<std::string> watched_hosts;
-extern std::map<std::string, simgrid::
surf
::StorageType*> storage_types;
+extern std::map<std::string, simgrid::
kernel::resource
::StorageType*> storage_types;
s_surf_model_description_t* surf_plugin_description = nullptr;
XBT_PUBLIC void simgrid_add_plugin_description(const char* name, const char* description, void_f_void_t init_fun)
s_surf_model_description_t* surf_plugin_description = nullptr;
XBT_PUBLIC void simgrid_add_plugin_description(const char* name, const char* description, void_f_void_t init_fun)
@@
-127,11
+127,11
@@
double surf_get_clock()
}
/* returns whether #file_path is a absolute file path. Surprising, isn't it ? */
}
/* returns whether #file_path is a absolute file path. Surprising, isn't it ? */
-static bool is_absolute_file_path(const
char*
file_path)
+static bool is_absolute_file_path(const
std::string&
file_path)
{
#ifdef _WIN32
WIN32_FIND_DATA wfd = {0};
{
#ifdef _WIN32
WIN32_FIND_DATA wfd = {0};
- HANDLE hFile = FindFirstFile(file_path, &wfd);
+ HANDLE hFile = FindFirstFile(file_path
.c_str()
, &wfd);
if (INVALID_HANDLE_VALUE == hFile)
return false;
if (INVALID_HANDLE_VALUE == hFile)
return false;
@@
-139,16
+139,16
@@
static bool is_absolute_file_path(const char* file_path)
FindClose(hFile);
return true;
#else
FindClose(hFile);
return true;
#else
- return (file_path[0] == '/');
+ return (file_path
.c_str()
[0] == '/');
#endif
}
#endif
}
-std::ifstream* surf_ifsopen(
std::string
name)
+std::ifstream* surf_ifsopen(
const std::string&
name)
{
xbt_assert(not name.empty());
std::ifstream* fs = new std::ifstream();
{
xbt_assert(not name.empty());
std::ifstream* fs = new std::ifstream();
- if (is_absolute_file_path(name
.c_str()
)) { /* don't mess with absolute file names */
+ if (is_absolute_file_path(name)) { /* don't mess with absolute file names */
fs->open(name.c_str(), std::ifstream::in);
}
fs->open(name.c_str(), std::ifstream::in);
}
@@
-166,14
+166,12
@@
std::ifstream* surf_ifsopen(std::string name)
return fs;
}
return fs;
}
-FILE
*surf_fopen(const char *name, const char *
mode)
+FILE
* surf_fopen(const std::string& name, const char*
mode)
{
FILE *file = nullptr;
{
FILE *file = nullptr;
- xbt_assert(name);
-
if (is_absolute_file_path(name)) /* don't mess with absolute file names */
if (is_absolute_file_path(name)) /* don't mess with absolute file names */
- return fopen(name, mode);
+ return fopen(name
.c_str()
, mode);
/* search relative files in the path */
for (auto const& path_elm : surf_path) {
/* search relative files in the path */
for (auto const& path_elm : surf_path) {
@@
-194,7
+192,7
@@
void model_help(const char *category, s_surf_model_description_t * table)
printf(" %s: %s\n", table[i].name, table[i].description);
}
printf(" %s: %s\n", table[i].name, table[i].description);
}
-int find_model_description(s_surf_model_description_t* table,
std::string
name)
+int find_model_description(s_surf_model_description_t* table,
const std::string&
name)
{
for (int i = 0; table[i].name; i++)
if (name == table[i].name)
{
for (int i = 0; table[i].name; i++)
if (name == table[i].name)
@@
-221,7
+219,7
@@
void sg_version_check(int lib_version_major, int lib_version_minor, int lib_vers
abort();
}
if (lib_version_patch != SIMGRID_VERSION_PATCH) {
abort();
}
if (lib_version_patch != SIMGRID_VERSION_PATCH) {
- if (SIMGRID_VERSION_PATCH >
= 90 || lib_version_patch >= 90
) {
+ if (SIMGRID_VERSION_PATCH >
89 || lib_version_patch > 89
) {
fprintf(
stderr,
"FATAL ERROR: Your program was compiled with SimGrid version %d.%d.%d, "
fprintf(
stderr,
"FATAL ERROR: Your program was compiled with SimGrid version %d.%d.%d, "
@@
-296,10
+294,6
@@
void surf_init(int *argc, char **argv)
USER_HOST_LEVEL = simgrid::s4u::Host::extension_create(nullptr);
xbt_init(argc, argv);
USER_HOST_LEVEL = simgrid::s4u::Host::extension_create(nullptr);
xbt_init(argc, argv);
- if (not all_existing_models)
- all_existing_models = new std::vector<simgrid::kernel::resource::Model*>();
- if (not future_evt_set)
- future_evt_set = new simgrid::trace_mgr::future_evt_set();
sg_config_init(argc, argv);
sg_config_init(argc, argv);
@@
-311,18
+305,16
@@
void surf_exit()
{
simgrid::s4u::Engine::shutdown();
for (auto const& e : storage_types) {
{
simgrid::s4u::Engine::shutdown();
for (auto const& e : storage_types) {
- simgrid::
surf
::StorageType* stype = e.second;
+ simgrid::
kernel::resource
::StorageType* stype = e.second;
delete stype->properties;
delete stype->model_properties;
delete stype;
}
delete stype->properties;
delete stype->model_properties;
delete stype;
}
- for (auto const& model :
*
all_existing_models)
+ for (auto const& model : all_existing_models)
delete model;
delete model;
- delete all_existing_models;
- delete future_evt_set;
- future_evt_set = nullptr;
+ xbt_free(surf_plugin_description);
tmgr_finalize();
sg_platf_exit();
tmgr_finalize();
sg_platf_exit();