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
Fix a few memory leaks.
[simgrid.git]
/
src
/
simdag
/
sd_task.c
diff --git
a/src/simdag/sd_task.c
b/src/simdag/sd_task.c
index
744e562
..
af052fb
100644
(file)
--- a/
src/simdag/sd_task.c
+++ b/
src/simdag/sd_task.c
@@
-621,9
+621,9
@@
void SD_task_dependency_add(const char *name, void *data, SD_task_t src,
SD_task_t dst)
{
xbt_dynar_t dynar;
SD_task_t dst)
{
xbt_dynar_t dynar;
-
int
length;
+
unsigned long
length;
int found = 0;
int found = 0;
-
int
i;
+
unsigned long
i;
SD_dependency_t dependency;
dynar = src->tasks_after;
SD_dependency_t dependency;
dynar = src->tasks_after;
@@
-652,7
+652,7
@@
void SD_task_dependency_add(const char *name, void *data, SD_task_t src,
for (i = 0; i < length && !found; i++) {
xbt_dynar_get_cpy(dynar, i, &dependency);
found = (dependency->dst == dst);
for (i = 0; i < length && !found; i++) {
xbt_dynar_get_cpy(dynar, i, &dependency);
found = (dependency->dst == dst);
- XBT_DEBUG("Dependency %
d
: dependency->dst = %s", i,
+ XBT_DEBUG("Dependency %
lu
: dependency->dst = %s", i,
SD_task_get_name(dependency->dst));
}
SD_task_get_name(dependency->dst));
}
@@
-746,9
+746,9
@@
void SD_task_dependency_remove(SD_task_t src, SD_task_t dst)
{
xbt_dynar_t dynar;
{
xbt_dynar_t dynar;
-
int
length;
+
unsigned long
length;
int found = 0;
int found = 0;
-
int
i;
+
unsigned long
i;
SD_dependency_t dependency;
/* remove the dependency from src->tasks_after */
SD_dependency_t dependency;
/* remove the dependency from src->tasks_after */
@@
-817,9
+817,9
@@
void *SD_task_dependency_get_data(SD_task_t src, SD_task_t dst)
{
xbt_dynar_t dynar;
{
xbt_dynar_t dynar;
-
int
length;
+
unsigned long
length;
int found = 0;
int found = 0;
-
int
i;
+
unsigned long
i;
SD_dependency_t dependency;
dynar = src->tasks_after;
SD_dependency_t dependency;
dynar = src->tasks_after;
@@
-1041,6
+1041,7
@@
void SD_task_unschedule(SD_task_t task)
&& ((task->kind == SD_TASK_COMP_PAR_AMDAHL) ||
(task->kind == SD_TASK_COMM_PAR_MXN_1D_BLOCK))) { /* Don't free scheduling data for typed tasks */
__SD_task_destroy_scheduling_data(task);
&& ((task->kind == SD_TASK_COMP_PAR_AMDAHL) ||
(task->kind == SD_TASK_COMM_PAR_MXN_1D_BLOCK))) { /* Don't free scheduling data for typed tasks */
__SD_task_destroy_scheduling_data(task);
+ xbt_free(task->workstation_list);
task->workstation_list=NULL;
task->workstation_nb = 0;
}
task->workstation_list=NULL;
task->workstation_nb = 0;
}
@@
-1418,8
+1419,7
@@
void SD_task_distribute_comp_amdhal(SD_task_t task, int ws_count)
SD_task_get_name(task));
task->computation_amount = xbt_new0(double, ws_count);
task->communication_amount = xbt_new0(double, ws_count * ws_count);
SD_task_get_name(task));
task->computation_amount = xbt_new0(double, ws_count);
task->communication_amount = xbt_new0(double, ws_count * ws_count);
- if (task->workstation_list)
- xbt_free(task->workstation_list);
+ xbt_free(task->workstation_list);
task->workstation_nb = ws_count;
task->workstation_list = xbt_new0(SD_workstation_t, ws_count);
task->workstation_nb = ws_count;
task->workstation_list = xbt_new0(SD_workstation_t, ws_count);
@@
-1569,11
+1569,8
@@
void SD_task_schedulev(SD_task_t task, int count,
task->workstation_list[i];
before->workstation_nb += count;
task->workstation_list[i];
before->workstation_nb += count;
- if (before->computation_amount)
- xbt_free(before->computation_amount);
- if (before->communication_amount)
- xbt_free(before->communication_amount);
-
+ xbt_free(before->computation_amount);
+ xbt_free(before->communication_amount);
before->computation_amount = xbt_new0(double,
before->workstation_nb);
before->communication_amount = xbt_new0(double,
before->computation_amount = xbt_new0(double,
before->workstation_nb);
before->communication_amount = xbt_new0(double,
@@
-1638,10
+1635,8
@@
void SD_task_schedulev(SD_task_t task, int count,
after->workstation_nb += count;
after->workstation_nb += count;
- if (after->computation_amount)
- xbt_free(after->computation_amount);
- if (after->communication_amount)
- xbt_free(after->communication_amount);
+ xbt_free(after->computation_amount);
+ xbt_free(after->communication_amount);
after->computation_amount = xbt_new0(double, after->workstation_nb);
after->communication_amount = xbt_new0(double,
after->computation_amount = xbt_new0(double, after->workstation_nb);
after->communication_amount = xbt_new0(double,