Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge pull request #244 from Takishipp/actor-yield
[simgrid.git] / examples / msg / io-storage / io-storage.c
index 4094c93..69d0713 100644 (file)
@@ -4,6 +4,7 @@
  * under the terms of the license (GNU LGPL) which comes with this package. */
 
 #include "simgrid/msg.h"
+#include "simgrid/plugins/file_system.h"
 
 XBT_LOG_NEW_DEFAULT_CATEGORY(storage,"Messages specific for this simulation");
 
@@ -73,6 +74,7 @@ static int host(int argc, char *argv[]){
   /* - Then retrieve this data */
   char *data = MSG_file_get_data(file);
   XBT_INFO("User data attached to the file: %s", data);
+  xbt_free(data);
 
   MSG_file_close(file);
   free(file_name);
@@ -92,18 +94,17 @@ static int host(int argc, char *argv[]){
 
   /* - Finally dump disks contents */
   XBT_INFO("*** Dump content of %s ***",MSG_host_get_name(MSG_host_self()));
-  xbt_dict_t contents = NULL;
-  contents = MSG_host_get_storage_content(MSG_host_self()); // contents is a dict of dicts
+  xbt_dict_t contents = MSG_host_get_storage_content(MSG_host_self()); // contents is a dict of dicts
   xbt_dict_cursor_t curs;
   xbt_dict_cursor_t curs2 = NULL;
   char* mountname;
   xbt_dict_t content;
   char* path;
-  sg_size_t *size;
+  sg_size_t* psize;
   xbt_dict_foreach(contents, curs, mountname, content){
     XBT_INFO("Print the content of mount point: %s",mountname);
-    xbt_dict_foreach(content,curs2,path,size){
-       XBT_INFO("%s size: %llu bytes", path,*((sg_size_t*)size));
+    xbt_dict_foreach (content, curs2, path, psize) {
+      XBT_INFO("%s size: %llu bytes", path, *psize);
     }
     xbt_dict_free(&content);
   }
@@ -114,6 +115,8 @@ static int host(int argc, char *argv[]){
 int main(int argc, char *argv[])
 {
   MSG_init(&argc, argv);
+  MSG_storage_file_system_init();
+
   MSG_create_environment(argv[1]);
   MSG_function_register("host", host);
   xbt_dynar_t hosts =  MSG_hosts_as_dynar();