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
Merge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot/simgrid/simgrid
[simgrid.git]
/
src
/
simix
/
smx_io.c
diff --git
a/src/simix/smx_io.c
b/src/simix/smx_io.c
index
a657e1b
..
d8477ae
100644
(file)
--- a/
src/simix/smx_io.c
+++ b/
src/simix/smx_io.c
@@
-55,16
+55,14
@@
void SIMIX_file_set_data(smx_file_t fd, void *data){
}
//SIMIX FILE READ
}
//SIMIX FILE READ
-void SIMIX_pre_file_read(smx_simcall_t simcall, sg_storage_size_t size,
- smx_file_t fd)
+void SIMIX_pre_file_read(smx_simcall_t simcall, smx_file_t fd, sg_storage_size_t size)
{
{
- smx_action_t action = SIMIX_file_read(simcall->issuer,
size, fd
);
+ smx_action_t action = SIMIX_file_read(simcall->issuer,
fd, size
);
xbt_fifo_push(action->simcalls, simcall);
simcall->issuer->waiting_action = action;
}
xbt_fifo_push(action->simcalls, simcall);
simcall->issuer->waiting_action = action;
}
-smx_action_t SIMIX_file_read(smx_process_t process, sg_storage_size_t size,
- smx_file_t fd)
+smx_action_t SIMIX_file_read(smx_process_t process, smx_file_t fd, sg_storage_size_t size)
{
smx_action_t action;
smx_host_t host = process->smx_host;
{
smx_action_t action;
smx_host_t host = process->smx_host;
@@
-85,8
+83,7
@@
smx_action_t SIMIX_file_read(smx_process_t process, sg_storage_size_t size,
action->io.host = host;
action->io.surf_io =
action->io.host = host;
action->io.surf_io =
- surf_workstation_model->extension.workstation.read(host, size,
- fd->surf_file);
+ surf_workstation_model->extension.workstation.read(host, fd->surf_file, size);
surf_workstation_model->action_data_set(action->io.surf_io, action);
XBT_DEBUG("Create io action %p", action);
surf_workstation_model->action_data_set(action->io.surf_io, action);
XBT_DEBUG("Create io action %p", action);
@@
-95,16
+92,14
@@
smx_action_t SIMIX_file_read(smx_process_t process, sg_storage_size_t size,
}
//SIMIX FILE WRITE
}
//SIMIX FILE WRITE
-void SIMIX_pre_file_write(smx_simcall_t simcall, sg_storage_size_t size,
- smx_file_t fd)
+void SIMIX_pre_file_write(smx_simcall_t simcall, smx_file_t fd, sg_storage_size_t size)
{
{
- smx_action_t action = SIMIX_file_write(simcall->issuer,
size, fd
);
+ smx_action_t action = SIMIX_file_write(simcall->issuer,
fd, size
);
xbt_fifo_push(action->simcalls, simcall);
simcall->issuer->waiting_action = action;
}
xbt_fifo_push(action->simcalls, simcall);
simcall->issuer->waiting_action = action;
}
-smx_action_t SIMIX_file_write(smx_process_t process,
- sg_storage_size_t size, smx_file_t fd)
+smx_action_t SIMIX_file_write(smx_process_t process, smx_file_t fd, sg_storage_size_t size)
{
smx_action_t action;
smx_host_t host = process->smx_host;
{
smx_action_t action;
smx_host_t host = process->smx_host;
@@
-125,8
+120,7
@@
smx_action_t SIMIX_file_write(smx_process_t process,
action->io.host = host;
action->io.surf_io =
action->io.host = host;
action->io.surf_io =
- surf_workstation_model->extension.workstation.write(host, size,
- fd->surf_file);
+ surf_workstation_model->extension.workstation.write(host, fd->surf_file, size);
surf_workstation_model->action_data_set(action->io.surf_io, action);
XBT_DEBUG("Create io action %p", action);
surf_workstation_model->action_data_set(action->io.surf_io, action);
XBT_DEBUG("Create io action %p", action);
@@
-227,7
+221,7
@@
int SIMIX_file_unlink(smx_process_t process, smx_file_t fd)
}
if (surf_workstation_model->extension.workstation.unlink(host, fd->surf_file)){
}
if (surf_workstation_model->extension.workstation.unlink(host, fd->surf_file)){
-
fd->surf_file = NULL
;
+
xbt_free(fd)
;
return 1;
} else
return 0;
return 1;
} else
return 0;
@@
-358,6
+352,11
@@
xbt_dict_t SIMIX_storage_get_content(smx_storage_t storage){
return surf_storage_model->extension.storage.get_content(storage);
}
return surf_storage_model->extension.storage.get_content(storage);
}
+sg_storage_size_t SIMIX_storage_get_size(smx_storage_t storage){
+ xbt_assert((storage != NULL), "Invalid parameters (simix storage is NULL)");
+ return surf_storage_model->extension.storage.get_size(storage);
+}
+
void SIMIX_post_io(smx_action_t action)
{
xbt_fifo_item_t i;
void SIMIX_post_io(smx_action_t action)
{
xbt_fifo_item_t i;