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
Revert "[mmalloc] Use mremap to expand heaps (heap collision prevention)"
[simgrid.git]
/
src
/
msg
/
msg_task.c
diff --git
a/src/msg/msg_task.c
b/src/msg/msg_task.c
index
ec9a0d3
..
7c775a4
100644
(file)
--- a/
src/msg/msg_task.c
+++ b/
src/msg/msg_task.c
@@
-1,4
+1,4
@@
-/* Copyright (c) 2004
, 2005, 2006, 2007, 2008, 2009, 2010
. The SimGrid Team.
+/* Copyright (c) 2004
-2014
. The SimGrid Team.
* All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
* All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
@@
-10,8
+10,8
@@
#include "xbt/log.h"
/** @addtogroup m_task_management
#include "xbt/log.h"
/** @addtogroup m_task_management
- *
- *
+ *
+ *
* Since most scheduling algorithms rely on a concept of task
* that can be either <em>computed</em> locally or
* <em>transferred</em> on another processor, it seems to be the
* Since most scheduling algorithms rely on a concept of task
* that can be either <em>computed</em> locally or
* <em>transferred</em> on another processor, it seems to be the
@@
-310,7
+310,10
@@
msg_error_t MSG_task_cancel(msg_task_t task)
}
else if (task->simdata->comm) {
simcall_comm_cancel(task->simdata->comm);
}
else if (task->simdata->comm) {
simcall_comm_cancel(task->simdata->comm);
- task->simdata->isused = 0;
+ simdata_task_t simdata = task->simdata;
+ if (msg_global->debug_multiple_use && simdata->isused!=0)
+ xbt_ex_free(*(xbt_ex_t*)simdata->isused);
+ simdata->isused = 0;
}
return MSG_OK;
}
}
return MSG_OK;
}
@@
-351,7
+354,7
@@
void MSG_task_set_compute_duration(msg_task_t task,
* \brief set the amount data attached with a task #msg_task_t.
*
* \warning If the transfer is ongoing (already started and not finished),
* \brief set the amount data attached with a task #msg_task_t.
*
* \warning If the transfer is ongoing (already started and not finished),
- * it is not modified by this call.
+ * it is not modified by this call.
*/
void MSG_task_set_data_size(msg_task_t task,
*/
void MSG_task_set_data_size(msg_task_t task,
@@
-428,7
+431,7
@@
double MSG_task_get_data_size(msg_task_t task)
/** \ingroup m_task_management
/** \ingroup m_task_management
- * \brief Changes the priority of a computation task. This priority doesn't affect
+ * \brief Changes the priority of a computation task. This priority doesn't affect
* the transfer rate. A priority of 2 will make a task receive two times more
* cpu power than the other ones.
*
* the transfer rate. A priority of 2 will make a task receive two times more
* cpu power than the other ones.
*
@@
-480,7
+483,7
@@
void MSG_task_set_bound(msg_task_t task, double bound)
*
* Usage:
* 0. Define a host with multiple cores.
*
* Usage:
* 0. Define a host with multiple cores.
- *
<host id="PM0" power="1E8" core="2"/
>
+ *
\<host id="PM0" power="1E8" core="2"/\
>
*
* 1. Pin a given task to the first CPU core of a host.
* MSG_task_set_affinity(task, pm0, 0x01);
*
* 1. Pin a given task to the first CPU core of a host.
* MSG_task_set_affinity(task, pm0, 0x01);