From: Martin Quinson Date: Tue, 27 May 2014 22:09:33 +0000 (+0200) Subject: Merge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid X-Git-Tag: v3_11~19^2~10 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/1bdda1e97bd0162312e4b1d6c6d5b8ec18f4d9f7?hp=aee58827f69b637a767d51db4c5a0f14aefce3b9 Merge branch 'master' of scm.gforge.inria.fr:/gitroot/simgrid/simgrid --- diff --git a/buildtools/Cmake/AddTests.cmake b/buildtools/Cmake/AddTests.cmake index f57e826fab..a42b620c3d 100644 --- a/buildtools/Cmake/AddTests.cmake +++ b/buildtools/Cmake/AddTests.cmake @@ -186,6 +186,7 @@ IF(NOT enable_memcheck) ADD_TESH(msg-file --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/ --setenv srcdir=${CMAKE_HOME_DIRECTORY}/ --cd ${CMAKE_HOME_DIRECTORY}/examples/ ${CMAKE_HOME_DIRECTORY}/examples/msg/io/io.tesh) ADD_TESH(msg-storage --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/ --setenv srcdir=${CMAKE_HOME_DIRECTORY}/ --cd ${CMAKE_HOME_DIRECTORY}/examples/ ${CMAKE_HOME_DIRECTORY}/examples/msg/io/storage.tesh) + ADD_TESH(msg-remote-io --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/ --setenv srcdir=${CMAKE_HOME_DIRECTORY}/ --cd ${CMAKE_HOME_DIRECTORY}/examples/ ${CMAKE_HOME_DIRECTORY}/examples/msg/io/remote.tesh) ADD_TESH(msg-start-kill-time --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/ --setenv srcdir=${CMAKE_HOME_DIRECTORY}/ --cd ${CMAKE_HOME_DIRECTORY}/examples/ ${CMAKE_HOME_DIRECTORY}/examples/msg/start_kill_time/start_kill_time.tesh) ADD_TESH(msg-chainsend --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/chainsend --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/msg/chainsend --cd ${CMAKE_HOME_DIRECTORY}/examples/msg ${CMAKE_HOME_DIRECTORY}/examples/msg/chainsend/chainsend.tesh) ADD_TESH_FACTORIES(msg-sendrecv-CLM03 "thread;ucontext;raw" --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/msg --cd ${CMAKE_BINARY_DIR}/examples/msg ${CMAKE_HOME_DIRECTORY}/examples/msg/sendrecv/sendrecv_CLM03.tesh) diff --git a/buildtools/Cmake/DefinePackages.cmake b/buildtools/Cmake/DefinePackages.cmake index 9d125d53d6..7e26f34506 100644 --- a/buildtools/Cmake/DefinePackages.cmake +++ b/buildtools/Cmake/DefinePackages.cmake @@ -1163,6 +1163,7 @@ set(PLATFORMS_EXAMPLES examples/platforms/content/win_storage_content.txt examples/platforms/data_center.xml examples/platforms/deployment_remote_io.xml + examples/platforms/fat_tree_cluster.xml examples/platforms/g5k.xml examples/platforms/generation_scripts/create_hierarchical_clusters.pl examples/platforms/generation_scripts/enhancedDTDwithHierarchicalCluster.pl diff --git a/buildtools/Cmake/Scripts/tesh.pl b/buildtools/Cmake/Scripts/tesh.pl index 0b819b1841..ec72da11c2 100755 --- a/buildtools/Cmake/Scripts/tesh.pl +++ b/buildtools/Cmake/Scripts/tesh.pl @@ -373,10 +373,14 @@ sub parse_out { # Check the result of execution ### my $diff; - if (!defined($cmd{'output ignore'})){ + if (defined($cmd{'output display'})){ + print "[Tesh/INFO] Here is the (ignored) command output:\n"; + map { print "||$_\n" } \@got; + } + elsif (!defined($cmd{'output ignore'})){ $diff = build_diff(\@{$cmd{'out'}}, \@got); }else{ - print "(ignoring the output of <$cmd{'file'}:$cmd{'line'}> as requested)\n" + print "(ignoring the output of <$cmd{'file'}:$cmd{'line'}> as requested)\n" } if (length $diff) { print "Output of <$cmd{'file'}:$cmd{'line'}> mismatch:\n"; @@ -522,6 +526,13 @@ LINE: while (not $finished and not $error) { } $cmd{'output ignore'} = 1; } + elsif($line =~ /^!\s*output display/){ #output display + if (defined($cmd{'cmd'})) { + exec_cmd(\%cmd); + %cmd = (); + } + $cmd{'output display'} = 1; + } elsif($line =~ /^!\s*expect signal (\w*)/) {#expect signal SIGABRT if (defined($cmd{'cmd'})) { exec_cmd(\%cmd); diff --git a/examples/msg/io/CMakeLists.txt b/examples/msg/io/CMakeLists.txt index 42c3f2bf3f..b8c0a046fc 100644 --- a/examples/msg/io/CMakeLists.txt +++ b/examples/msg/io/CMakeLists.txt @@ -11,12 +11,13 @@ add_executable(remote remote.c) if(NOT WIN32) target_link_libraries(file simgrid pthread) target_link_libraries(file_unlink simgrid pthread) - target_link_libraries(storage simgrid pthread) target_link_libraries(remote simgrid pthread) + target_link_libraries(storage simgrid pthread) else() target_link_libraries(file simgrid) target_link_libraries(file_unlink simgrid) target_link_libraries(remote simgrid) + target_link_libraries(storage simgrid) endif() set(tesh_files diff --git a/examples/msg/io/file_unlink.c b/examples/msg/io/file_unlink.c index 04e7bddc3d..c07e7112d4 100644 --- a/examples/msg/io/file_unlink.c +++ b/examples/msg/io/file_unlink.c @@ -48,6 +48,10 @@ int host(int argc, char *argv[]) write = MSG_file_write(file,100000); // Write for 100Ko XBT_INFO("\tHave written %llu on %s",write,MSG_file_get_name(file)); + // Write into the new file + write = MSG_file_write(file,100000); // Write for 100Ko + XBT_INFO("\tHave written %llu on %s",write,MSG_file_get_name(file)); + // Close the file XBT_INFO("\tClose file '%s'",MSG_file_get_name(file)); MSG_file_close(file); diff --git a/examples/msg/io/io.tesh b/examples/msg/io/io.tesh index 4afb302d99..bf22827e7d 100644 --- a/examples/msg/io/io.tesh +++ b/examples/msg/io/io.tesh @@ -27,33 +27,33 @@ $ ${bindir:=.}/io/file ${srcdir:=.}/examples/platforms/storage.xml "--log=root.f > [ 0.002175] (2:1@alice) Have written 100000 in 'c:\Windows\setupact.log'. Size now is: 201663 > [ 0.002175] (2:1@alice) Capacity of the storage element 'c:\Windows\setupact.log' is stored on: 2391637133 / 536870912000 > [ 0.002175] (2:1@alice) Coming back to the beginning of the stream for file 'c:\Windows\setupact.log' -> [ 0.002439] (1:0@denise) Have read 110000 from '/home/doc/simgrid/examples/platforms/g5k.xml' (of size 117028) -> [ 0.002439] (1:0@denise) Coming back to the beginning of the stream for file '/home/doc/simgrid/examples/platforms/g5k.xml' -> [ 0.002862] (2:1@alice) Have read 110000 from 'c:\Windows\setupact.log' (of size 201663) -> [ 0.002862] (2:1@alice) Coming back to the beginning of the stream for file 'c:\Windows\setupact.log' +> [ 0.002302] (1:0@denise) Have read 110000 from '/home/doc/simgrid/examples/platforms/g5k.xml' (of size 117028) +> [ 0.002302] (1:0@denise) Coming back to the beginning of the stream for file '/home/doc/simgrid/examples/platforms/g5k.xml' +> [ 0.002725] (2:1@alice) Have read 110000 from 'c:\Windows\setupact.log' (of size 201663) +> [ 0.002725] (2:1@alice) Coming back to the beginning of the stream for file 'c:\Windows\setupact.log' > [ 0.003374] (4:3@bob) Have written 100000 in '/home/doc/simgrid/examples/platforms/nancy.xml'. Size now is: 104028 > [ 0.003374] (4:3@bob) Capacity of the storage element '/home/doc/simgrid/examples/platforms/nancy.xml' is stored on: 37046053 / 536870912000 > [ 0.003374] (4:3@bob) Coming back to the beginning of the stream for file '/home/doc/simgrid/examples/platforms/nancy.xml' > [ 0.003560] (3:2@carl) Have written 100000 in '/home/doc/simgrid/examples/platforms/g5k_cabinets.xml'. Size now is: 122645 > [ 0.003560] (3:2@carl) Capacity of the storage element '/home/doc/simgrid/examples/platforms/g5k_cabinets.xml' is stored on: 37046053 / 536870912000 > [ 0.003560] (3:2@carl) Coming back to the beginning of the stream for file '/home/doc/simgrid/examples/platforms/g5k_cabinets.xml' -> [ 0.004529] (4:3@bob) Have read 104028 from '/home/doc/simgrid/examples/platforms/nancy.xml' (of size 104028) -> [ 0.004529] (4:3@bob) Coming back to the beginning of the stream for file '/home/doc/simgrid/examples/platforms/nancy.xml' -> [ 0.004782] (3:2@carl) Have read 110000 from '/home/doc/simgrid/examples/platforms/g5k_cabinets.xml' (of size 122645) -> [ 0.004782] (3:2@carl) Coming back to the beginning of the stream for file '/home/doc/simgrid/examples/platforms/g5k_cabinets.xml' -> [ 0.006106] (1:0@denise) Have written 110000 in '/home/doc/simgrid/examples/platforms/g5k.xml'. Size now is: 110000 -> [ 0.006106] (1:0@denise) Capacity of the storage element '/home/doc/simgrid/examples/platforms/g5k.xml' is stored on: 13314966 / 536870912000 -> [ 0.006106] (1:0@denise) Close file '/home/doc/simgrid/examples/platforms/g5k.xml' -> [ 0.006529] (2:1@alice) Have written 110000 in 'c:\Windows\setupact.log'. Size now is: 110000 -> [ 0.006529] (2:1@alice) Capacity of the storage element 'c:\Windows\setupact.log' is stored on: 2391545470 / 536870912000 -> [ 0.006529] (2:1@alice) Close file 'c:\Windows\setupact.log' -> [ 0.011863] (4:3@bob) Have written 110000 in '/home/doc/simgrid/examples/platforms/nancy.xml'. Size now is: 110000 -> [ 0.011863] (4:3@bob) Capacity of the storage element '/home/doc/simgrid/examples/platforms/nancy.xml' is stored on: 37052025 / 536870912000 -> [ 0.011863] (4:3@bob) Close file '/home/doc/simgrid/examples/platforms/nancy.xml' -> [ 0.012115] (3:2@carl) Have written 110000 in '/home/doc/simgrid/examples/platforms/g5k_cabinets.xml'. Size now is: 110000 -> [ 0.012115] (3:2@carl) Capacity of the storage element '/home/doc/simgrid/examples/platforms/g5k_cabinets.xml' is stored on: 37033408 / 536870912000 -> [ 0.012115] (3:2@carl) Close file '/home/doc/simgrid/examples/platforms/g5k_cabinets.xml' -> [ 0.012115] (0:@) Simulation time 0.0121153 +> [ 0.004135] (1:0@denise) Have written 110000 in '/home/doc/simgrid/examples/platforms/g5k.xml'. Size now is: 110000 +> [ 0.004135] (1:0@denise) Capacity of the storage element '/home/doc/simgrid/examples/platforms/g5k.xml' is stored on: 13314966 / 536870912000 +> [ 0.004135] (1:0@denise) Close file '/home/doc/simgrid/examples/platforms/g5k.xml' +> [ 0.004414] (4:3@bob) Have read 104028 from '/home/doc/simgrid/examples/platforms/nancy.xml' (of size 104028) +> [ 0.004414] (4:3@bob) Coming back to the beginning of the stream for file '/home/doc/simgrid/examples/platforms/nancy.xml' +> [ 0.004558] (2:1@alice) Have written 110000 in 'c:\Windows\setupact.log'. Size now is: 110000 +> [ 0.004558] (2:1@alice) Capacity of the storage element 'c:\Windows\setupact.log' is stored on: 2391545470 / 536870912000 +> [ 0.004558] (2:1@alice) Close file 'c:\Windows\setupact.log' +> [ 0.004660] (3:2@carl) Have read 110000 from '/home/doc/simgrid/examples/platforms/g5k_cabinets.xml' (of size 122645) +> [ 0.004660] (3:2@carl) Coming back to the beginning of the stream for file '/home/doc/simgrid/examples/platforms/g5k_cabinets.xml' +> [ 0.008081] (4:3@bob) Have written 110000 in '/home/doc/simgrid/examples/platforms/nancy.xml'. Size now is: 110000 +> [ 0.008081] (4:3@bob) Capacity of the storage element '/home/doc/simgrid/examples/platforms/nancy.xml' is stored on: 37052025 / 536870912000 +> [ 0.008081] (4:3@bob) Close file '/home/doc/simgrid/examples/platforms/nancy.xml' +> [ 0.008326] (3:2@carl) Have written 110000 in '/home/doc/simgrid/examples/platforms/g5k_cabinets.xml'. Size now is: 110000 +> [ 0.008326] (3:2@carl) Capacity of the storage element '/home/doc/simgrid/examples/platforms/g5k_cabinets.xml' is stored on: 37033408 / 536870912000 +> [ 0.008326] (3:2@carl) Close file '/home/doc/simgrid/examples/platforms/g5k_cabinets.xml' +> [ 0.008326] (0:@) Simulation time 0.00832645 $ ${bindir:=.}/io/file_unlink ${srcdir:=.}/examples/platforms/storage.xml "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" > [ 0.000000] (0:@) Number of host '4' @@ -61,5 +61,6 @@ $ ${bindir:=.}/io/file_unlink ${srcdir:=.}/examples/platforms/storage.xml "--log > [ 0.000000] (1:0@denise) Unlink file '/home/doc/simgrid/examples/platforms/g5k.xml' > [ 0.000000] (1:0@denise) Open file '/home/doc/simgrid/examples/platforms/g5k.xml' > [ 0.001667] (1:0@denise) Have written 100000 on /home/doc/simgrid/examples/platforms/g5k.xml -> [ 0.001667] (1:0@denise) Close file '/home/doc/simgrid/examples/platforms/g5k.xml' -> [ 0.001667] (0:@) Simulation time 0.00166667 +> [ 0.003333] (1:0@denise) Have written 100000 on /home/doc/simgrid/examples/platforms/g5k.xml +> [ 0.003333] (1:0@denise) Close file '/home/doc/simgrid/examples/platforms/g5k.xml' +> [ 0.003333] (0:@) Simulation time 0.00333333 diff --git a/examples/msg/io/remote.c b/examples/msg/io/remote.c index 3a3efbcbed..c0e263dace 100644 --- a/examples/msg/io/remote.c +++ b/examples/msg/io/remote.c @@ -20,6 +20,8 @@ #include "msg/msg.h" #include "surf/surf_private.h" +#define INMEGA (1024*1024) + int host(int argc, char *argv[]); XBT_LOG_NEW_DEFAULT_CATEGORY(remote_io, @@ -29,108 +31,82 @@ XBT_LOG_NEW_DEFAULT_CATEGORY(remote_io, int host(int argc, char *argv[]){ msg_file_t file = NULL; const char* filename; -// msg_storage_t st; - sg_size_t read;//,write; + sg_size_t read, write; file = MSG_file_open(argv[1], NULL); filename = MSG_file_get_name(file); XBT_INFO("Opened file '%s'",filename); MSG_file_dump(file); - // st = MSG_storage_get_by_name(st_name); - XBT_INFO("Try to read %llu from '%s'",MSG_file_get_size(file),filename); read = MSG_file_read(file, MSG_file_get_size(file)); - XBT_INFO("Have read %llu from '%s'",read,filename); + XBT_INFO("Have read %llu from '%s'. Offset is now at: %llu",read,filename, + MSG_file_tell(file)); + XBT_INFO("Seek back to the begining of the stream..."); + MSG_file_seek(file, 0, SEEK_SET); + XBT_INFO("Offset is now at: %llu", MSG_file_tell(file)); MSG_file_close(file); + + if (argc > 5){ + file = MSG_file_open(argv[2], NULL); + filename = MSG_file_get_name(file); + XBT_INFO("Opened file '%s'",filename); + XBT_INFO("Try to write %llu MiB to '%s'", + MSG_file_get_size(file)/1024, + filename); + write = MSG_file_write(file, MSG_file_get_size(file)*1024); + XBT_INFO("Have written %llu bytes to '%s'.",write,filename); + + msg_host_t src, dest; + src= MSG_host_self(); + dest = MSG_get_host_by_name(argv[3]); + if (atoi(argv[5])){ + XBT_INFO("Move '%s' (of size %llu) from '%s' to '%s'", filename, + MSG_file_get_size(file), MSG_host_get_name(src), + argv[3]); + MSG_file_rmove(file, dest, argv[4]); + } else { + XBT_INFO("Copy '%s' (of size %llu) from '%s' to '%s'", filename, + MSG_file_get_size(file), MSG_host_get_name(src), + argv[3]); + MSG_file_rcopy(file, dest, argv[4]); + } + } + return 0; } -//int host(int argc, char *argv[]) -//{ -// msg_file_t file = NULL; -// sg_size_t read,write; -// msg_storage_t st; -// const char* st_name; -// -// if(!strcmp(MSG_process_get_name(MSG_process_self()),"0")){ -// file = MSG_file_open(FILENAME1, NULL); -// MSG_file_dump(file); -// st_name = "Disk4"; -// } else if(!strcmp(MSG_process_get_name(MSG_process_self()),"1")) { -// file = MSG_file_open(FILENAME2, NULL); -// st_name = "Disk2"; -// } else if(!strcmp(MSG_process_get_name(MSG_process_self()),"2")){ -// file = MSG_file_open(FILENAME3, NULL); -// st_name = "Disk3"; -// } else if(!strcmp(MSG_process_get_name(MSG_process_self()),"3")){ -// file = MSG_file_open(FILENAME4, NULL); -// st_name = "Disk1"; -// } -// else xbt_die("FILENAME NOT DEFINED %s",MSG_process_get_name(MSG_process_self())); -// -// const char* filename = MSG_file_get_name(file); -// XBT_INFO("\tOpen file '%s'",filename); -// st = MSG_storage_get_by_name(st_name); -// -// XBT_INFO("\tCapacity of the storage element '%s' is stored on: %llu / %llu", -// filename, MSG_storage_get_used_size(st), MSG_storage_get_size(st)); -// -// /* Try to read for 10MB */ -// read = MSG_file_read(file, 10000000); -// XBT_INFO("\tHave read %llu from '%s'",read,filename); -// -// /* Write 100KB in file from the current position, i.e, end of file or 10MB */ -// write = MSG_file_write(file, 100000); -// XBT_INFO("\tHave written %llu in '%s'. Size now is: %llu",write,filename, -// MSG_file_get_size(file)); -// -// -// XBT_INFO("\tCapacity of the storage element '%s' is stored on: %llu / %llu", -// filename, MSG_storage_get_used_size(st), MSG_storage_get_size(st)); -// -// /* rewind to the beginning of the file */ -// XBT_INFO("\tComing back to the beginning of the stream for file '%s'", -// filename); -// MSG_file_seek(file, 0, SEEK_SET); -// -// /* Try to read 110KB */ -// read = MSG_file_read(file, 110000); -// XBT_INFO("\tHave read %llu from '%s' (of size %llu)",read,filename, -// MSG_file_get_size(file)); -// -// /* rewind once again to the beginning of the file */ -// XBT_INFO("\tComing back to the beginning of the stream for file '%s'", -// filename); -// MSG_file_seek(file, 0, SEEK_SET); -// -// /* Write 110KB in file from the current position, i.e, end of file or 10MB */ -// write = MSG_file_write(file, 110000); -// XBT_INFO("\tHave written %llu in '%s'. Size now is: %llu", write,filename, -// MSG_file_get_size(file)); -// -// XBT_INFO("\tCapacity of the storage element '%s' is stored on: %llu / %llu", -// filename, MSG_storage_get_used_size(st), MSG_storage_get_size(st)); -// -// XBT_INFO("\tClose file '%s'",filename); -// MSG_file_close(file); -// -// -// return 0; -//} + int main(int argc, char **argv) { int res; + unsigned int cur; + xbt_dynar_t storages; + msg_storage_t st; MSG_init(&argc, argv); MSG_create_environment(argv[1]); MSG_function_register("host", host); MSG_launch_application(argv[2]); + storages = MSG_storages_as_dynar(); + xbt_dynar_foreach(storages, cur, st){ + XBT_INFO("Init: %llu MiB used on '%s'", + MSG_storage_get_used_size(st)/INMEGA, + MSG_storage_get_name(st)); + } + res = MSG_main(); + xbt_dynar_foreach(storages, cur, st){ + XBT_INFO("Init: %llu MiB used on '%s'", + MSG_storage_get_used_size(st)/INMEGA, + MSG_storage_get_name(st)); + } + xbt_dynar_free_container(&storages); + XBT_INFO("Simulation time %g", MSG_get_clock()); if (res == MSG_OK) return 0; diff --git a/examples/msg/io/remote.tesh b/examples/msg/io/remote.tesh index 73eacef8ba..28efe17cd4 100644 --- a/examples/msg/io/remote.tesh +++ b/examples/msg/io/remote.tesh @@ -1,4 +1,65 @@ #! ./tesh -$ ${bindir:=.}/io/remote_io ${srcdir:=.}/examples/platforms/remote_io.xml \ -${srcdir:=.}/examples/platforms/deployment_remote_io.xml "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" +$ ${bindir:=.}io/remote$EXEEX ${srcdir:=.}/examples/platforms/remote_io.xml \ +${srcdir:=.}/examples/platforms/deployment_remote_io.xml "--log=root.fmt:[%10.6r]%e(%i@%5h)%e%m%n" +> [ 0.000000] (0@ ) Init: 12 MiB used on 'Disk1' +> [ 0.000000] (0@ ) Init: 2280 MiB used on 'Disk2' +> [ 0.000000] (1@alice) Opened file 'c:\Windows\setupact.log' +> [ 0.000000] (2@ bob) Opened file '/scratch/lib/libsimgrid.so.3.6.2' +> [ 0.000000] (3@ carl) Opened file '/scratch/lib/libsimgrid.so.3.6.2' +> [ 0.000000] (4@ dave) Opened file 'c:\Windows\bootstat.dat' +> [ 0.000000] (1@alice) File Descriptor information: +> Full path: 'c:\Windows\setupact.log' +> Size: 101663 +> Mount point: 'c:' +> Storage Id: 'Disk2' +> Storage Type: 'SATA-II_HDD' +> Content Type: 'txt_windows' +> [ 0.000000] (2@ bob) File Descriptor information: +> Full path: '/scratch/lib/libsimgrid.so.3.6.2' +> Size: 12710497 +> Mount point: '/scratch' +> Storage Id: 'Disk1' +> Storage Type: 'SATA-II_HDD' +> Content Type: 'txt_unix' +> [ 0.000000] (3@ carl) File Descriptor information: +> Full path: '/scratch/lib/libsimgrid.so.3.6.2' +> Size: 12710497 +> Mount point: '/scratch' +> Storage Id: 'Disk1' +> Storage Type: 'SATA-II_HDD' +> Content Type: 'txt_unix' +> [ 0.000000] (4@ dave) File Descriptor information: +> Full path: 'c:\Windows\bootstat.dat' +> Size: 67584 +> Mount point: 'c:' +> Storage Id: 'Disk2' +> Storage Type: 'SATA-II_HDD' +> Content Type: 'txt_windows' +> [ 0.000000] (1@alice) Try to read 101663 from 'c:\Windows\setupact.log' +> [ 0.000000] (2@ bob) Try to read 12710497 from '/scratch/lib/libsimgrid.so.3.6.2' +> [ 0.000000] (3@ carl) Try to read 12710497 from '/scratch/lib/libsimgrid.so.3.6.2' +> [ 0.000000] (4@ dave) Try to read 67584 from 'c:\Windows\bootstat.dat' +> [ 0.001469] (4@ dave) Have read 67584 from 'c:\Windows\bootstat.dat'. Offset is now at: 67584 +> [ 0.001469] (4@ dave) Seek back to the begining of the stream... +> [ 0.001469] (4@ dave) Offset is now at: 0 +> [ 0.001469] (4@ dave) Opened file 'c:\Windows\Professional.xml' +> [ 0.001469] (4@ dave) Try to write 31 MiB to 'c:\Windows\Professional.xml' +> [ 0.003559] (1@alice) Have read 101663 from 'c:\Windows\setupact.log'. Offset is now at: 101663 +> [ 0.003559] (1@alice) Seek back to the begining of the stream... +> [ 0.003559] (1@alice) Offset is now at: 0 +> [ 0.276315] (3@ carl) Have read 12710497 from '/scratch/lib/libsimgrid.so.3.6.2'. Offset is now at: 12710497 +> [ 0.276315] (3@ carl) Seek back to the begining of the stream... +> [ 0.276315] (3@ carl) Offset is now at: 0 +> [ 0.387036] (2@ bob) Have read 12710497 from '/scratch/lib/libsimgrid.so.3.6.2'. Offset is now at: 12710497 +> [ 0.387036] (2@ bob) Seek back to the begining of the stream... +> [ 0.387036] (2@ bob) Offset is now at: 0 +> [ 0.387036] (2@ bob) Opened file '/scratch/doc/simgrid/examples/platforms/g5k.xml' +> [ 0.387036] (2@ bob) Try to write 16 MiB to '/scratch/doc/simgrid/examples/platforms/g5k.xml' +> [ 0.528029] (4@ dave) Have written 32646144 bytes to 'c:\Windows\Professional.xml'. +> [ 0.528029] (4@ dave) Move 'c:\Windows\Professional.xml' (of size 32646144) from 'dave' to 'carl' +> [ 0.819921] (2@ bob) Have written 17436672 bytes to '/scratch/doc/simgrid/examples/platforms/g5k.xml'. +> [ 0.819921] (2@ bob) Copy '/scratch/doc/simgrid/examples/platforms/g5k.xml' (of size 17436672) from 'bob' to 'alice' +> [ 1.843786] (0@ ) Init: 60 MiB used on 'Disk1' +> [ 1.843786] (0@ ) Init: 2297 MiB used on 'Disk2' +> [ 1.843786] (0@ ) Simulation time 1.84379 diff --git a/examples/msg/io/storage.c b/examples/msg/io/storage.c index 05f14d1094..22325ae64a 100644 --- a/examples/msg/io/storage.c +++ b/examples/msg/io/storage.c @@ -89,15 +89,21 @@ static int host(int argc, char *argv[]){ XBT_INFO("*** Move '/tmp/data.txt' into '/tmp/simgrid.readme'"); MSG_file_move(file, "/home/tmp/simgrid.readme"); + // Attach some user data to the file + MSG_file_set_data(file, xbt_strdup("777")); + // Retrieve these data + char *data = MSG_file_get_data(file); + XBT_INFO("User data attached to the file: %s", data); + MSG_file_close(file); free(file_name); // Now attach some user data to disk1 XBT_INFO("*** Get/set data for storage element: %s ***",storage_name); - char *data = MSG_storage_get_data(storage); + data = MSG_storage_get_data(storage); - XBT_INFO("Get data: '%s'", data); + XBT_INFO("Get storage data: '%s'", data); MSG_storage_set_data(storage, xbt_strdup("Some user data")); data = MSG_storage_get_data(storage); diff --git a/examples/msg/io/storage.tesh b/examples/msg/io/storage.tesh index f3512c028f..93393fc408 100644 --- a/examples/msg/io/storage.tesh +++ b/examples/msg/io/storage.tesh @@ -1,6 +1,6 @@ #! ./tesh -$ ${bindir:=.}/io/storage ${srcdir:=.}/examples/platforms/storage.xml "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" +$ ${bindir:=.}/io/storage$EXEEXT ${srcdir:=.}/examples/platforms/storage.xml "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" > [ 0.000000] (1:(null)@denise) *** Storage info on denise *** > [ 0.000000] (1:(null)@denise) Storage name: Disk2, mount name: c: > [ 0.000000] (1:(null)@denise) Total size: 536870912000 bytes @@ -20,87 +20,88 @@ $ ${bindir:=.}/io/storage ${srcdir:=.}/examples/platforms/storage.xml "--log=roo > Content Type: 'txt_unix' > [ 0.003333] (1:(null)@denise) Free size: 536857490006 bytes > [ 0.003333] (1:(null)@denise) Used size: 13421994 bytes -> [ 0.004583] (1:(null)@denise) Read 200000 bytes on /home/tmp/data.txt -> [ 0.007917] (1:(null)@denise) Write 100000 bytes on /home/tmp/data.txt -> [ 0.007917] (1:(null)@denise) File Descriptor information: +> [ 0.004333] (1:(null)@denise) Read 200000 bytes on /home/tmp/data.txt +> [ 0.006000] (1:(null)@denise) Write 100000 bytes on /home/tmp/data.txt +> [ 0.006000] (1:(null)@denise) File Descriptor information: > Full path: '/home/tmp/data.txt' > Size: 300000 > Mount point: '/home' > Storage Id: 'Disk4' > Storage Type: 'single_SSD' > Content Type: 'txt_unix' -> [ 0.007917] (1:(null)@denise) *** Move '/tmp/data.txt' into '/tmp/simgrid.readme' -> [ 0.007917] (1:(null)@denise) *** Get/set data for storage element: Disk4 *** -> [ 0.007917] (1:(null)@denise) Get data: '(null)' -> [ 0.007917] (1:(null)@denise) Set and get data: 'Some user data' -> [ 0.007917] (1:(null)@denise) *** Dump content of denise *** -> [ 0.007917] (1:(null)@denise) Print the content of mount point: c: -> [ 0.007917] (1:(null)@denise) \Windows\win.ini size: 92 bytes -> [ 0.007917] (1:(null)@denise) \Windows\mib.bin size: 43131 bytes -> [ 0.007917] (1:(null)@denise) \Windows\DtcInstall.log size: 1955 bytes -> [ 0.007917] (1:(null)@denise) \Windows\vmgcoinstall.log size: 1585 bytes -> [ 0.007917] (1:(null)@denise) \Windows\Starter.xml size: 31537 bytes -> [ 0.007917] (1:(null)@denise) \Windows\_isusr32.dll size: 180320 bytes -> [ 0.007917] (1:(null)@denise) \Windows\winhlp32.exe size: 10752 bytes -> [ 0.007917] (1:(null)@denise) \Windows\setuperr.log size: 0 bytes -> [ 0.007917] (1:(null)@denise) \Windows\system.ini size: 219 bytes -> [ 0.007917] (1:(null)@denise) \Windows\hapint.exe size: 382056 bytes -> [ 0.007917] (1:(null)@denise) \Windows\Professional.xml size: 31881 bytes -> [ 0.007917] (1:(null)@denise) \Windows\regedit.exe size: 159232 bytes -> [ 0.007917] (1:(null)@denise) \Windows\setupact.log size: 101663 bytes -> [ 0.007917] (1:(null)@denise) \Windows\WindowsUpdate.log size: 1518934 bytes -> [ 0.007917] (1:(null)@denise) \Windows\explorer.exe size: 2380944 bytes -> [ 0.007917] (1:(null)@denise) \Windows\DirectX.log size: 10486 bytes -> [ 0.007917] (1:(null)@denise) \Windows\WMSysPr9.prx size: 316640 bytes -> [ 0.007917] (1:(null)@denise) \Windows\PFRO.log size: 6770 bytes -> [ 0.007917] (1:(null)@denise) \Windows\csup.txt size: 12 bytes -> [ 0.007917] (1:(null)@denise) \Windows\WLXPGSS.SCR size: 322048 bytes -> [ 0.007917] (1:(null)@denise) \Windows\avastSS.scr size: 41664 bytes -> [ 0.007917] (1:(null)@denise) \Windows\font1.sii size: 4907 bytes -> [ 0.007917] (1:(null)@denise) \Windows\write.exe size: 10752 bytes -> [ 0.007917] (1:(null)@denise) \Windows\font2.sii size: 8698 bytes -> [ 0.007917] (1:(null)@denise) \Windows\CoreSingleLanguage.xml size: 31497 bytes -> [ 0.007917] (1:(null)@denise) \Windows\dchcfg64.exe size: 335464 bytes -> [ 0.007917] (1:(null)@denise) \Windows\notepad.exe size: 243712 bytes -> [ 0.007917] (1:(null)@denise) \Windows\HelpPane.exe size: 883712 bytes -> [ 0.007917] (1:(null)@denise) \Windows\hh.exe size: 17408 bytes -> [ 0.007917] (1:(null)@denise) \Windows\DPINST.LOG size: 18944 bytes -> [ 0.007917] (1:(null)@denise) \Windows\bfsvc.exe size: 75264 bytes -> [ 0.007917] (1:(null)@denise) \Windows\splwow64.exe size: 126464 bytes -> [ 0.007917] (1:(null)@denise) \Windows\MEMORY.DMP size: 2384027342 bytes -> [ 0.007917] (1:(null)@denise) \Windows\dcmdev64.exe size: 93288 bytes -> [ 0.007917] (1:(null)@denise) \Windows\twain_32.dll size: 50176 bytes -> [ 0.007917] (1:(null)@denise) \Windows\bootstat.dat size: 67584 bytes -> [ 0.007917] (1:(null)@denise) Print the content of mount point: /home -> [ 0.007917] (1:(null)@denise) /include/simix/simix.h size: 13003 bytes -> [ 0.007917] (1:(null)@denise) /include/mc/modelchecker.h size: 96 bytes -> [ 0.007917] (1:(null)@denise) /doc/simgrid/examples/msg/README size: 4805 bytes -> [ 0.007917] (1:(null)@denise) /include/instr/instr.h size: 5750 bytes -> [ 0.007917] (1:(null)@denise) /doc/simgrid/examples/smpi/mc_bugged2.c size: 1387 bytes -> [ 0.007917] (1:(null)@denise) /doc/simgrid/html/group__XBT__str.html size: 36192 bytes -> [ 0.007917] (1:(null)@denise) /doc/simgrid/examples/smpi/NAS/EP/README size: 347 bytes -> [ 0.007917] (1:(null)@denise) /doc/simgrid/examples/smpi/NAS/DT/README size: 999 bytes -> [ 0.007917] (1:(null)@denise) /doc/simgrid/examples/smpi/NAS/FT/README size: 276 bytes -> [ 0.007917] (1:(null)@denise) /lib/libsimgrid.so.3.6.2 size: 12710497 bytes -> [ 0.007917] (1:(null)@denise) /doc/simgrid/examples/smpi/NAS/sys/README size: 1461 bytes -> [ 0.007917] (1:(null)@denise) /doc/simgrid/examples/msg/alias/masterslave_forwarder_with_alias.c size: 6217 bytes -> [ 0.007917] (1:(null)@denise) /doc/simgrid/examples/smpi/NAS/SP/README size: 926 bytes -> [ 0.007917] (1:(null)@denise) /tmp/simgrid.readme size: 300000 bytes -> [ 0.007917] (1:(null)@denise) /doc/simgrid/examples/msg/parallel_task/test_ptask_deployment.xml size: 654 bytes -> [ 0.007917] (1:(null)@denise) /doc/simgrid/examples/msg/icomms/small_platform.xml size: 972 bytes -> [ 0.007917] (1:(null)@denise) /doc/simgrid/examples/smpi/NAS/MG/README size: 5465 bytes -> [ 0.007917] (1:(null)@denise) /doc/simgrid/examples/msg/trace/test9.xml size: 598 bytes -> [ 0.007917] (1:(null)@denise) /include/smpi/mpif.h size: 4826 bytes -> [ 0.007917] (1:(null)@denise) /doc/simgrid/examples/smpi/NAS/README size: 1857 bytes -> [ 0.007917] (1:(null)@denise) /bin/tesh size: 356434 bytes -> [ 0.007917] (1:(null)@denise) /include/simdag/simdag.h size: 10325 bytes -> [ 0.007917] (1:(null)@denise) /doc/simgrid/examples/xbt/sem_basic.c size: 1970 bytes -> [ 0.007917] (1:(null)@denise) /include/xbt/fifo.h size: 3626 bytes -> [ 0.007917] (1:(null)@denise) /doc/simgrid/examples/smpi/NAS/common/randdp.c size: 1441 bytes -> [ 0.007917] (1:(null)@denise) /include/msg/datatypes.h size: 4635 bytes -> [ 0.007917] (1:(null)@denise) /doc/simgrid/examples/smpi/NAS/EP/randlc.c size: 3300 bytes -> [ 0.007917] (1:(null)@denise) /doc/simgrid/examples/smpi/NAS/MPI_dummy/README size: 2406 bytes -> [ 0.007917] (1:(null)@denise) /doc/simgrid/examples/platforms/g5k.xml size: 17028 bytes -> [ 0.007917] (1:(null)@denise) /include/surf/simgrid_dtd.h size: 23583 bytes -> [ 0.007917] (1:(null)@denise) /bin/smpicc size: 918 bytes -> [ 0.007917] (0:@) Simulated time: 0.00791667 +> [ 0.006000] (1:(null)@denise) *** Move '/tmp/data.txt' into '/tmp/simgrid.readme' +> [ 0.006000] (1:(null)@denise) User data attached to the file: 777 +> [ 0.006000] (1:(null)@denise) *** Get/set data for storage element: Disk4 *** +> [ 0.006000] (1:(null)@denise) Get storage data: '(null)' +> [ 0.006000] (1:(null)@denise) Set and get data: 'Some user data' +> [ 0.006000] (1:(null)@denise) *** Dump content of denise *** +> [ 0.006000] (1:(null)@denise) Print the content of mount point: c: +> [ 0.006000] (1:(null)@denise) \Windows\win.ini size: 92 bytes +> [ 0.006000] (1:(null)@denise) \Windows\mib.bin size: 43131 bytes +> [ 0.006000] (1:(null)@denise) \Windows\DtcInstall.log size: 1955 bytes +> [ 0.006000] (1:(null)@denise) \Windows\vmgcoinstall.log size: 1585 bytes +> [ 0.006000] (1:(null)@denise) \Windows\Starter.xml size: 31537 bytes +> [ 0.006000] (1:(null)@denise) \Windows\_isusr32.dll size: 180320 bytes +> [ 0.006000] (1:(null)@denise) \Windows\winhlp32.exe size: 10752 bytes +> [ 0.006000] (1:(null)@denise) \Windows\setuperr.log size: 0 bytes +> [ 0.006000] (1:(null)@denise) \Windows\system.ini size: 219 bytes +> [ 0.006000] (1:(null)@denise) \Windows\hapint.exe size: 382056 bytes +> [ 0.006000] (1:(null)@denise) \Windows\Professional.xml size: 31881 bytes +> [ 0.006000] (1:(null)@denise) \Windows\regedit.exe size: 159232 bytes +> [ 0.006000] (1:(null)@denise) \Windows\setupact.log size: 101663 bytes +> [ 0.006000] (1:(null)@denise) \Windows\WindowsUpdate.log size: 1518934 bytes +> [ 0.006000] (1:(null)@denise) \Windows\explorer.exe size: 2380944 bytes +> [ 0.006000] (1:(null)@denise) \Windows\DirectX.log size: 10486 bytes +> [ 0.006000] (1:(null)@denise) \Windows\WMSysPr9.prx size: 316640 bytes +> [ 0.006000] (1:(null)@denise) \Windows\PFRO.log size: 6770 bytes +> [ 0.006000] (1:(null)@denise) \Windows\csup.txt size: 12 bytes +> [ 0.006000] (1:(null)@denise) \Windows\WLXPGSS.SCR size: 322048 bytes +> [ 0.006000] (1:(null)@denise) \Windows\avastSS.scr size: 41664 bytes +> [ 0.006000] (1:(null)@denise) \Windows\font1.sii size: 4907 bytes +> [ 0.006000] (1:(null)@denise) \Windows\write.exe size: 10752 bytes +> [ 0.006000] (1:(null)@denise) \Windows\font2.sii size: 8698 bytes +> [ 0.006000] (1:(null)@denise) \Windows\CoreSingleLanguage.xml size: 31497 bytes +> [ 0.006000] (1:(null)@denise) \Windows\dchcfg64.exe size: 335464 bytes +> [ 0.006000] (1:(null)@denise) \Windows\notepad.exe size: 243712 bytes +> [ 0.006000] (1:(null)@denise) \Windows\HelpPane.exe size: 883712 bytes +> [ 0.006000] (1:(null)@denise) \Windows\hh.exe size: 17408 bytes +> [ 0.006000] (1:(null)@denise) \Windows\DPINST.LOG size: 18944 bytes +> [ 0.006000] (1:(null)@denise) \Windows\bfsvc.exe size: 75264 bytes +> [ 0.006000] (1:(null)@denise) \Windows\splwow64.exe size: 126464 bytes +> [ 0.006000] (1:(null)@denise) \Windows\MEMORY.DMP size: 2384027342 bytes +> [ 0.006000] (1:(null)@denise) \Windows\dcmdev64.exe size: 93288 bytes +> [ 0.006000] (1:(null)@denise) \Windows\twain_32.dll size: 50176 bytes +> [ 0.006000] (1:(null)@denise) \Windows\bootstat.dat size: 67584 bytes +> [ 0.006000] (1:(null)@denise) Print the content of mount point: /home +> [ 0.006000] (1:(null)@denise) /include/simix/simix.h size: 13003 bytes +> [ 0.006000] (1:(null)@denise) /include/mc/modelchecker.h size: 96 bytes +> [ 0.006000] (1:(null)@denise) /doc/simgrid/examples/msg/README size: 4805 bytes +> [ 0.006000] (1:(null)@denise) /include/instr/instr.h size: 5750 bytes +> [ 0.006000] (1:(null)@denise) /doc/simgrid/examples/smpi/mc_bugged2.c size: 1387 bytes +> [ 0.006000] (1:(null)@denise) /doc/simgrid/html/group__XBT__str.html size: 36192 bytes +> [ 0.006000] (1:(null)@denise) /doc/simgrid/examples/smpi/NAS/EP/README size: 347 bytes +> [ 0.006000] (1:(null)@denise) /doc/simgrid/examples/smpi/NAS/DT/README size: 999 bytes +> [ 0.006000] (1:(null)@denise) /doc/simgrid/examples/smpi/NAS/FT/README size: 276 bytes +> [ 0.006000] (1:(null)@denise) /lib/libsimgrid.so.3.6.2 size: 12710497 bytes +> [ 0.006000] (1:(null)@denise) /doc/simgrid/examples/smpi/NAS/sys/README size: 1461 bytes +> [ 0.006000] (1:(null)@denise) /doc/simgrid/examples/msg/alias/masterslave_forwarder_with_alias.c size: 6217 bytes +> [ 0.006000] (1:(null)@denise) /doc/simgrid/examples/smpi/NAS/SP/README size: 926 bytes +> [ 0.006000] (1:(null)@denise) /tmp/simgrid.readme size: 300000 bytes +> [ 0.006000] (1:(null)@denise) /doc/simgrid/examples/msg/parallel_task/test_ptask_deployment.xml size: 654 bytes +> [ 0.006000] (1:(null)@denise) /doc/simgrid/examples/msg/icomms/small_platform.xml size: 972 bytes +> [ 0.006000] (1:(null)@denise) /doc/simgrid/examples/smpi/NAS/MG/README size: 5465 bytes +> [ 0.006000] (1:(null)@denise) /doc/simgrid/examples/msg/trace/test9.xml size: 598 bytes +> [ 0.006000] (1:(null)@denise) /include/smpi/mpif.h size: 4826 bytes +> [ 0.006000] (1:(null)@denise) /doc/simgrid/examples/smpi/NAS/README size: 1857 bytes +> [ 0.006000] (1:(null)@denise) /bin/tesh size: 356434 bytes +> [ 0.006000] (1:(null)@denise) /include/simdag/simdag.h size: 10325 bytes +> [ 0.006000] (1:(null)@denise) /doc/simgrid/examples/xbt/sem_basic.c size: 1970 bytes +> [ 0.006000] (1:(null)@denise) /include/xbt/fifo.h size: 3626 bytes +> [ 0.006000] (1:(null)@denise) /doc/simgrid/examples/smpi/NAS/common/randdp.c size: 1441 bytes +> [ 0.006000] (1:(null)@denise) /include/msg/datatypes.h size: 4635 bytes +> [ 0.006000] (1:(null)@denise) /doc/simgrid/examples/smpi/NAS/EP/randlc.c size: 3300 bytes +> [ 0.006000] (1:(null)@denise) /doc/simgrid/examples/smpi/NAS/MPI_dummy/README size: 2406 bytes +> [ 0.006000] (1:(null)@denise) /doc/simgrid/examples/platforms/g5k.xml size: 17028 bytes +> [ 0.006000] (1:(null)@denise) /include/surf/simgrid_dtd.h size: 23583 bytes +> [ 0.006000] (1:(null)@denise) /bin/smpicc size: 918 bytes +> [ 0.006000] (0:@) Simulated time: 0.006 diff --git a/examples/platforms/deployment_remote_io.xml b/examples/platforms/deployment_remote_io.xml index d957aee6af..41cb6c827a 100644 --- a/examples/platforms/deployment_remote_io.xml +++ b/examples/platforms/deployment_remote_io.xml @@ -6,11 +6,19 @@ + + + + + + + + diff --git a/examples/platforms/fat_tree_cluster.xml b/examples/platforms/fat_tree_cluster.xml new file mode 100644 index 0000000000..d20e7fbef5 --- /dev/null +++ b/examples/platforms/fat_tree_cluster.xml @@ -0,0 +1,18 @@ + + + + + + + + + + diff --git a/include/msg/msg.h b/include/msg/msg.h index 341afa20d8..b145614b7e 100644 --- a/include/msg/msg.h +++ b/include/msg/msg.h @@ -91,7 +91,7 @@ XBT_PUBLIC(int) MSG_file_close(msg_file_t fd); XBT_PUBLIC(sg_size_t) MSG_file_get_size(msg_file_t fd); XBT_PUBLIC(void) MSG_file_dump(msg_file_t fd); XBT_PUBLIC(msg_error_t) MSG_file_unlink(msg_file_t fd); -XBT_PUBLIC(msg_error_t) MSG_file_seek(msg_file_t fd, sg_size_t offset, int origin); +XBT_PUBLIC(msg_error_t) MSG_file_seek(msg_file_t fd, sg_offset_t offset, int origin); XBT_PUBLIC(sg_size_t) MSG_file_tell (msg_file_t fd); XBT_PUBLIC(void) __MSG_file_get_info(msg_file_t fd); XBT_PUBLIC(void) __MSG_file_priv_free(msg_file_priv_t priv); diff --git a/include/simgrid/platf.h b/include/simgrid/platf.h index 4399096299..9a86f63676 100644 --- a/include/simgrid/platf.h +++ b/include/simgrid/platf.h @@ -95,6 +95,11 @@ static inline char* sg_storage_name(sg_storage_t storage) { */ typedef unsigned long long sg_size_t; +/** @ingroup m_datatypes_management_details + * @brief Type for any simgrid offset + */ +typedef long long sg_offset_t; + /* * Platform creation functions. Instead of passing 123 arguments to the creation functions * (one for each possible XML attribute), we pass structures containing them all. It removes the diff --git a/include/simgrid/simix.h b/include/simgrid/simix.h index 2b0b20007f..303f49499c 100644 --- a/include/simgrid/simix.h +++ b/include/simgrid/simix.h @@ -501,11 +501,11 @@ XBT_PUBLIC(sg_size_t) simcall_file_read(smx_file_t fd, sg_size_t size, smx_host_ XBT_PUBLIC(sg_size_t) simcall_file_write(smx_file_t fd, sg_size_t size, smx_host_t host); XBT_PUBLIC(smx_file_t) simcall_file_open(const char* fullpath, smx_host_t host); XBT_PUBLIC(int) simcall_file_close(smx_file_t fd, smx_host_t host); -XBT_PUBLIC(int) simcall_file_unlink(smx_file_t fd); +XBT_PUBLIC(int) simcall_file_unlink(smx_file_t fd, smx_host_t host); XBT_PUBLIC(sg_size_t) simcall_file_get_size(smx_file_t fd); XBT_PUBLIC(xbt_dynar_t) simcall_file_get_info(smx_file_t fd); XBT_PUBLIC(sg_size_t) simcall_file_tell(smx_file_t fd); -XBT_PUBLIC(int) simcall_file_seek(smx_file_t fd, sg_size_t offset, int origin); +XBT_PUBLIC(int) simcall_file_seek(smx_file_t fd, sg_offset_t offset, int origin); XBT_PUBLIC(int) simcall_file_move(smx_file_t fd, const char* fullpath); /***************************** Storage **********************************/ XBT_PUBLIC(sg_size_t) simcall_storage_get_free_size (smx_storage_t storage); diff --git a/include/surf/simgrid_dtd.h b/include/surf/simgrid_dtd.h index 0b17c6dafc..bea720bad5 100644 --- a/include/surf/simgrid_dtd.h +++ b/include/surf/simgrid_dtd.h @@ -108,598 +108,598 @@ XBT_PUBLIC(void) STag_surfxml_model___prop(void); XBT_PUBLIC(void) ETag_surfxml_model___prop(void); /* XML application data. */ -typedef int AT_surfxml_random_id; -#define AU_surfxml_random_id NULL -typedef int AT_surfxml_trace_periodicity; -#define AU_surfxml_trace_periodicity NULL -typedef int AT_surfxml_host_availability; -#define AU_surfxml_host_availability NULL -typedef enum { AU_surfxml_cluster_topology, A_surfxml_cluster_topology_FLAT,A_surfxml_cluster_topology_TORUS,A_surfxml_cluster_topology_FAT___TREE } AT_surfxml_cluster_topology; -typedef int AT_surfxml_process_function; -#define AU_surfxml_process_function NULL -typedef int AT_surfxml_link_latency___file; -#define AU_surfxml_link_latency___file NULL -typedef int AT_surfxml_bypassRoute_src; -#define AU_surfxml_bypassRoute_src NULL -typedef int AT_surfxml_link___ctn_id; -#define AU_surfxml_link___ctn_id NULL -typedef int AT_surfxml_host___link_id; -#define AU_surfxml_host___link_id NULL -typedef int AT_surfxml_host_power; -#define AU_surfxml_host_power NULL -typedef int AT_surfxml_ASroute_dst; -#define AU_surfxml_ASroute_dst NULL -typedef int AT_surfxml_storage_content; -#define AU_surfxml_storage_content NULL +typedef int AT_surfxml_cluster_bb___lat; +#define AU_surfxml_cluster_bb___lat NULL +typedef int AT_surfxml_random_max; +#define AU_surfxml_random_max NULL +typedef int AT_surfxml_host_availability___file; +#define AU_surfxml_host_availability___file NULL +typedef int AT_surfxml_ASroute_src; +#define AU_surfxml_ASroute_src NULL typedef int AT_surfxml_cabinet_id; #define AU_surfxml_cabinet_id NULL -typedef int AT_surfxml_cabinet_radical; -#define AU_surfxml_cabinet_radical NULL -typedef int AT_surfxml_random_std___deviation; -#define AU_surfxml_random_std___deviation NULL +typedef int AT_surfxml_cabinet_prefix; +#define AU_surfxml_cabinet_prefix NULL +typedef int AT_surfxml_process_function; +#define AU_surfxml_process_function NULL typedef int AT_surfxml_ASroute_gw___dst; #define AU_surfxml_ASroute_gw___dst NULL +typedef int AT_surfxml_storage___type_content___type; +#define AU_surfxml_storage___type_content___type NULL typedef int AT_surfxml_include_file; #define AU_surfxml_include_file NULL -typedef int AT_surfxml_cabinet_bw; -#define AU_surfxml_cabinet_bw NULL -typedef enum { AU_surfxml_link_sharing___policy, A_surfxml_link_sharing___policy_SHARED,A_surfxml_link_sharing___policy_FATPIPE,A_surfxml_link_sharing___policy_FULLDUPLEX } AT_surfxml_link_sharing___policy; -typedef int AT_surfxml_link_id; -#define AU_surfxml_link_id NULL -typedef int AT_surfxml_argument_value; -#define AU_surfxml_argument_value NULL -typedef int AT_surfxml_peer_bw___in; -#define AU_surfxml_peer_bw___in NULL -typedef int AT_surfxml_router_coordinates; -#define AU_surfxml_router_coordinates NULL -typedef int AT_surfxml_trace___connect_trace; -#define AU_surfxml_trace___connect_trace NULL -typedef int AT_surfxml_random_max; -#define AU_surfxml_random_max NULL -typedef int AT_surfxml_storage_id; -#define AU_surfxml_storage_id NULL -typedef int AT_surfxml_model___prop_id; -#define AU_surfxml_model___prop_id NULL -typedef int AT_surfxml_cluster_bb___bw; -#define AU_surfxml_cluster_bb___bw NULL -typedef int AT_surfxml_backbone_id; -#define AU_surfxml_backbone_id NULL -typedef int AT_surfxml_host_state___file; -#define AU_surfxml_host_state___file NULL -typedef int AT_surfxml_cluster_loopback___bw; -#define AU_surfxml_cluster_loopback___bw NULL -typedef int AT_surfxml_cluster_bb___lat; -#define AU_surfxml_cluster_bb___lat NULL -typedef int AT_surfxml_host___link_up; -#define AU_surfxml_host___link_up NULL -typedef enum { AU_surfxml_cluster_sharing___policy, A_surfxml_cluster_sharing___policy_SHARED,A_surfxml_cluster_sharing___policy_FULLDUPLEX,A_surfxml_cluster_sharing___policy_FATPIPE } AT_surfxml_cluster_sharing___policy; -typedef int AT_surfxml_bypassASroute_dst; -#define AU_surfxml_bypassASroute_dst NULL -typedef int AT_surfxml_mount_storageId; -#define AU_surfxml_mount_storageId NULL -typedef int AT_surfxml_storage___type_content; -#define AU_surfxml_storage___type_content NULL -typedef int AT_surfxml_link_latency; -#define AU_surfxml_link_latency NULL -typedef int AT_surfxml_mount_name; -#define AU_surfxml_mount_name NULL -typedef int AT_surfxml_peer_availability___file; -#define AU_surfxml_peer_availability___file NULL -typedef int AT_surfxml_mstorage_typeId; -#define AU_surfxml_mstorage_typeId NULL -typedef int AT_surfxml_host_pstate; -#define AU_surfxml_host_pstate NULL typedef int AT_surfxml_link_bandwidth___file; #define AU_surfxml_link_bandwidth___file NULL -typedef int AT_surfxml_cabinet_suffix; -#define AU_surfxml_cabinet_suffix NULL -typedef int AT_surfxml_cluster_power; -#define AU_surfxml_cluster_power NULL -typedef int AT_surfxml_platform_version; -#define AU_surfxml_platform_version NULL -typedef int AT_surfxml_cabinet_power; -#define AU_surfxml_cabinet_power NULL -typedef int AT_surfxml_route_dst; -#define AU_surfxml_route_dst NULL -typedef int AT_surfxml_host_core; -#define AU_surfxml_host_core NULL -typedef int AT_surfxml_storage_content___type; -#define AU_surfxml_storage_content___type NULL -typedef int AT_surfxml_backbone_bandwidth; -#define AU_surfxml_backbone_bandwidth NULL -typedef int AT_surfxml_peer_coordinates; -#define AU_surfxml_peer_coordinates NULL -typedef enum { AU_surfxml_process_on___failure, A_surfxml_process_on___failure_DIE,A_surfxml_process_on___failure_RESTART } AT_surfxml_process_on___failure; -typedef int AT_surfxml_backbone_latency; -#define AU_surfxml_backbone_latency NULL -typedef int AT_surfxml_trace___connect_element; -#define AU_surfxml_trace___connect_element NULL -typedef int AT_surfxml_cluster_availability___file; -#define AU_surfxml_cluster_availability___file NULL -typedef enum { AU_surfxml_link_state, A_surfxml_link_state_ON,A_surfxml_link_state_OFF } AT_surfxml_link_state; -typedef int AT_surfxml_storage___type_content___type; -#define AU_surfxml_storage___type_content___type NULL +typedef int AT_surfxml_process_kill___time; +#define AU_surfxml_process_kill___time NULL typedef int AT_surfxml_link_bandwidth; #define AU_surfxml_link_bandwidth NULL -typedef int AT_surfxml_host___link_down; -#define AU_surfxml_host___link_down NULL -typedef int AT_surfxml_cluster_lat; -#define AU_surfxml_cluster_lat NULL -typedef int AT_surfxml_random_radical; -#define AU_surfxml_random_radical NULL -typedef int AT_surfxml_peer_state___file; -#define AU_surfxml_peer_state___file NULL -typedef int AT_surfxml_bypassASroute_src; -#define AU_surfxml_bypassASroute_src NULL +typedef int AT_surfxml_trace_periodicity; +#define AU_surfxml_trace_periodicity NULL typedef int AT_surfxml_storage_typeId; #define AU_surfxml_storage_typeId NULL -typedef int AT_surfxml_host_coordinates; -#define AU_surfxml_host_coordinates NULL -typedef int AT_surfxml_trace_file; -#define AU_surfxml_trace_file NULL -typedef int AT_surfxml_bypassASroute_gw___src; -#define AU_surfxml_bypassASroute_gw___src NULL -typedef int AT_surfxml_host_availability___file; -#define AU_surfxml_host_availability___file NULL -typedef int AT_surfxml_AS_id; -#define AU_surfxml_AS_id NULL -typedef int AT_surfxml_process_kill___time; -#define AU_surfxml_process_kill___time NULL -typedef enum { AU_surfxml_AS_routing, A_surfxml_AS_routing_Full,A_surfxml_AS_routing_Floyd,A_surfxml_AS_routing_Dijkstra,A_surfxml_AS_routing_DijkstraCache,A_surfxml_AS_routing_None,A_surfxml_AS_routing_Vivaldi,A_surfxml_AS_routing_Cluster,A_surfxml_AS_routing_Cluster___torus,A_surfxml_AS_routing_Cluster___fat___tree } AT_surfxml_AS_routing; -typedef int AT_surfxml_cluster_limiter___link; -#define AU_surfxml_cluster_limiter___link NULL -typedef enum { AU_surfxml_cluster_bb___sharing___policy, A_surfxml_cluster_bb___sharing___policy_SHARED,A_surfxml_cluster_bb___sharing___policy_FATPIPE } AT_surfxml_cluster_bb___sharing___policy; +typedef int AT_surfxml_cabinet_suffix; +#define AU_surfxml_cabinet_suffix NULL +typedef int AT_surfxml_link_latency___file; +#define AU_surfxml_link_latency___file NULL +typedef int AT_surfxml_link_id; +#define AU_surfxml_link_id NULL typedef int AT_surfxml_trace_id; #define AU_surfxml_trace_id NULL -typedef int AT_surfxml_cabinet_prefix; -#define AU_surfxml_cabinet_prefix NULL -typedef int AT_surfxml_config_id; -#define AU_surfxml_config_id NULL -typedef int AT_surfxml_cluster_topo___parameters; -#define AU_surfxml_cluster_topo___parameters NULL -typedef int AT_surfxml_cluster_bw; -#define AU_surfxml_cluster_bw NULL -typedef int AT_surfxml_storage___type_size; -#define AU_surfxml_storage___type_size NULL -typedef int AT_surfxml_cluster_radical; -#define AU_surfxml_cluster_radical NULL -typedef int AT_surfxml_storage___type_id; -#define AU_surfxml_storage___type_id NULL -typedef int AT_surfxml_cluster_id; -#define AU_surfxml_cluster_id NULL -typedef int AT_surfxml_cluster_loopback___lat; -#define AU_surfxml_cluster_loopback___lat NULL -typedef int AT_surfxml_random_seed; -#define AU_surfxml_random_seed NULL -typedef int AT_surfxml_route_src; -#define AU_surfxml_route_src NULL -typedef int AT_surfxml_mstorage_name; -#define AU_surfxml_mstorage_name NULL -typedef int AT_surfxml_cabinet_lat; -#define AU_surfxml_cabinet_lat NULL -typedef int AT_surfxml_storage___type_model; -#define AU_surfxml_storage___type_model NULL +typedef enum { AU_surfxml_cluster_bb___sharing___policy, A_surfxml_cluster_bb___sharing___policy_SHARED,A_surfxml_cluster_bb___sharing___policy_FATPIPE } AT_surfxml_cluster_bb___sharing___policy; +typedef int AT_surfxml_cabinet_radical; +#define AU_surfxml_cabinet_radical NULL +typedef int AT_surfxml_cluster_lat; +#define AU_surfxml_cluster_lat NULL +typedef int AT_surfxml_process_host; +#define AU_surfxml_process_host NULL typedef int AT_surfxml_cluster_core; #define AU_surfxml_cluster_core NULL -typedef int AT_surfxml_cluster_suffix; -#define AU_surfxml_cluster_suffix NULL +typedef int AT_surfxml_peer_id; +#define AU_surfxml_peer_id NULL +typedef int AT_surfxml_storage___type_content; +#define AU_surfxml_storage___type_content NULL +typedef enum { AU_surfxml_link___ctn_direction, A_surfxml_link___ctn_direction_UP,A_surfxml_link___ctn_direction_DOWN,A_surfxml_link___ctn_direction_NONE } AT_surfxml_link___ctn_direction; typedef enum { AU_surfxml_random_generator, A_surfxml_random_generator_DRAND48,A_surfxml_random_generator_RAND,A_surfxml_random_generator_RNGSTREAM,A_surfxml_random_generator_NONE } AT_surfxml_random_generator; -typedef enum { AU_surfxml_host_state, A_surfxml_host_state_ON,A_surfxml_host_state_OFF } AT_surfxml_host_state; -typedef int AT_surfxml_cluster_state___file; -#define AU_surfxml_cluster_state___file NULL typedef int AT_surfxml_bypassRoute_dst; #define AU_surfxml_bypassRoute_dst NULL -typedef enum { AU_surfxml_trace___connect_kind, A_surfxml_trace___connect_kind_HOST___AVAIL,A_surfxml_trace___connect_kind_POWER,A_surfxml_trace___connect_kind_LINK___AVAIL,A_surfxml_trace___connect_kind_BANDWIDTH,A_surfxml_trace___connect_kind_LATENCY } AT_surfxml_trace___connect_kind; -typedef int AT_surfxml_prop_value; -#define AU_surfxml_prop_value NULL -typedef enum { AU_surfxml_route_symmetrical, A_surfxml_route_symmetrical_YES,A_surfxml_route_symmetrical_NO } AT_surfxml_route_symmetrical; -typedef int AT_surfxml_link_state___file; -#define AU_surfxml_link_state___file NULL -typedef int AT_surfxml_process_host; -#define AU_surfxml_process_host NULL -typedef int AT_surfxml_ASroute_gw___src; -#define AU_surfxml_ASroute_gw___src NULL -typedef int AT_surfxml_peer_id; -#define AU_surfxml_peer_id NULL -typedef int AT_surfxml_cluster_prefix; -#define AU_surfxml_cluster_prefix NULL -typedef int AT_surfxml_ASroute_src; -#define AU_surfxml_ASroute_src NULL -typedef int AT_surfxml_host_id; -#define AU_surfxml_host_id NULL -typedef int AT_surfxml_bypassASroute_gw___dst; -#define AU_surfxml_bypassASroute_gw___dst NULL -typedef int AT_surfxml_peer_lat; -#define AU_surfxml_peer_lat NULL -typedef int AT_surfxml_cluster_router___id; -#define AU_surfxml_cluster_router___id NULL -typedef int AT_surfxml_storage_attach; -#define AU_surfxml_storage_attach NULL +typedef int AT_surfxml_cluster_loopback___lat; +#define AU_surfxml_cluster_loopback___lat NULL +typedef int AT_surfxml_bypassRoute_src; +#define AU_surfxml_bypassRoute_src NULL +typedef int AT_surfxml_cluster_limiter___link; +#define AU_surfxml_cluster_limiter___link NULL +typedef int AT_surfxml_mstorage_typeId; +#define AU_surfxml_mstorage_typeId NULL +typedef int AT_surfxml_random_seed; +#define AU_surfxml_random_seed NULL +typedef int AT_surfxml_random_mean; +#define AU_surfxml_random_mean NULL +typedef int AT_surfxml_link___ctn_id; +#define AU_surfxml_link___ctn_id NULL +typedef int AT_surfxml_model___prop_value; +#define AU_surfxml_model___prop_value NULL typedef int AT_surfxml_peer_bw___out; #define AU_surfxml_peer_bw___out NULL +typedef int AT_surfxml_bypassASroute_src; +#define AU_surfxml_bypassASroute_src NULL +typedef int AT_surfxml_backbone_bandwidth; +#define AU_surfxml_backbone_bandwidth NULL +typedef int AT_surfxml_host___link_up; +#define AU_surfxml_host___link_up NULL +typedef enum { AU_surfxml_cluster_topology, A_surfxml_cluster_topology_FLAT,A_surfxml_cluster_topology_TORUS,A_surfxml_cluster_topology_FAT___TREE } AT_surfxml_cluster_topology; +typedef int AT_surfxml_ASroute_gw___src; +#define AU_surfxml_ASroute_gw___src NULL +typedef int AT_surfxml_random_id; +#define AU_surfxml_random_id NULL typedef int AT_surfxml_peer_power; #define AU_surfxml_peer_power NULL -typedef int AT_surfxml_router_id; -#define AU_surfxml_router_id NULL -typedef enum { AU_surfxml_link___ctn_direction, A_surfxml_link___ctn_direction_UP,A_surfxml_link___ctn_direction_DOWN,A_surfxml_link___ctn_direction_NONE } AT_surfxml_link___ctn_direction; -typedef int AT_surfxml_gpu_name; -#define AU_surfxml_gpu_name NULL -typedef int AT_surfxml_model___prop_value; -#define AU_surfxml_model___prop_value NULL -typedef int AT_surfxml_prop_id; -#define AU_surfxml_prop_id NULL +typedef enum { AU_surfxml_AS_routing, A_surfxml_AS_routing_Full,A_surfxml_AS_routing_Floyd,A_surfxml_AS_routing_Dijkstra,A_surfxml_AS_routing_DijkstraCache,A_surfxml_AS_routing_None,A_surfxml_AS_routing_Vivaldi,A_surfxml_AS_routing_Cluster,A_surfxml_AS_routing_Cluster___torus,A_surfxml_AS_routing_Cluster___fat___tree } AT_surfxml_AS_routing; typedef int AT_surfxml_process_start___time; #define AU_surfxml_process_start___time NULL +typedef int AT_surfxml_cluster_topo___parameters; +#define AU_surfxml_cluster_topo___parameters NULL +typedef int AT_surfxml_route_dst; +#define AU_surfxml_route_dst NULL +typedef int AT_surfxml_host_coordinates; +#define AU_surfxml_host_coordinates NULL +typedef int AT_surfxml_host___link_down; +#define AU_surfxml_host___link_down NULL +typedef int AT_surfxml_cluster_radical; +#define AU_surfxml_cluster_radical NULL +typedef int AT_surfxml_config_id; +#define AU_surfxml_config_id NULL +typedef int AT_surfxml_cabinet_power; +#define AU_surfxml_cabinet_power NULL +typedef int AT_surfxml_model___prop_id; +#define AU_surfxml_model___prop_id NULL +typedef int AT_surfxml_peer_coordinates; +#define AU_surfxml_peer_coordinates NULL +typedef int AT_surfxml_mstorage_name; +#define AU_surfxml_mstorage_name NULL +typedef int AT_surfxml_host___link_id; +#define AU_surfxml_host___link_id NULL +typedef int AT_surfxml_cluster_loopback___bw; +#define AU_surfxml_cluster_loopback___bw NULL +typedef int AT_surfxml_cluster_suffix; +#define AU_surfxml_cluster_suffix NULL +typedef int AT_surfxml_cluster_router___id; +#define AU_surfxml_cluster_router___id NULL +typedef int AT_surfxml_prop_id; +#define AU_surfxml_prop_id NULL +typedef int AT_surfxml_backbone_id; +#define AU_surfxml_backbone_id NULL +typedef int AT_surfxml_link_state___file; +#define AU_surfxml_link_state___file NULL +typedef int AT_surfxml_cabinet_lat; +#define AU_surfxml_cabinet_lat NULL +typedef int AT_surfxml_storage___type_id; +#define AU_surfxml_storage___type_id NULL +typedef int AT_surfxml_storage_content___type; +#define AU_surfxml_storage_content___type NULL +typedef int AT_surfxml_random_radical; +#define AU_surfxml_random_radical NULL +typedef int AT_surfxml_cluster_power; +#define AU_surfxml_cluster_power NULL +typedef int AT_surfxml_trace___connect_element; +#define AU_surfxml_trace___connect_element NULL +typedef int AT_surfxml_link_latency; +#define AU_surfxml_link_latency NULL +typedef enum { AU_surfxml_host_state, A_surfxml_host_state_ON,A_surfxml_host_state_OFF } AT_surfxml_host_state; +typedef int AT_surfxml_host_core; +#define AU_surfxml_host_core NULL +typedef int AT_surfxml_storage___type_size; +#define AU_surfxml_storage___type_size NULL +typedef int AT_surfxml_mount_name; +#define AU_surfxml_mount_name NULL +typedef int AT_surfxml_cluster_id; +#define AU_surfxml_cluster_id NULL +typedef int AT_surfxml_peer_state___file; +#define AU_surfxml_peer_state___file NULL +typedef int AT_surfxml_host_state___file; +#define AU_surfxml_host_state___file NULL +typedef int AT_surfxml_bypassASroute_dst; +#define AU_surfxml_bypassASroute_dst NULL +typedef enum { AU_surfxml_link_state, A_surfxml_link_state_ON,A_surfxml_link_state_OFF } AT_surfxml_link_state; +typedef int AT_surfxml_bypassASroute_gw___dst; +#define AU_surfxml_bypassASroute_gw___dst NULL +typedef int AT_surfxml_random_std___deviation; +#define AU_surfxml_random_std___deviation NULL +typedef int AT_surfxml_cluster_bb___bw; +#define AU_surfxml_cluster_bb___bw NULL +typedef int AT_surfxml_trace___connect_trace; +#define AU_surfxml_trace___connect_trace NULL +typedef int AT_surfxml_peer_lat; +#define AU_surfxml_peer_lat NULL +typedef int AT_surfxml_cabinet_bw; +#define AU_surfxml_cabinet_bw NULL +typedef int AT_surfxml_cluster_prefix; +#define AU_surfxml_cluster_prefix NULL +typedef int AT_surfxml_storage_attach; +#define AU_surfxml_storage_attach NULL typedef int AT_surfxml_random_min; #define AU_surfxml_random_min NULL -typedef int AT_surfxml_random_mean; -#define AU_surfxml_random_mean NULL +typedef enum { AU_surfxml_trace___connect_kind, A_surfxml_trace___connect_kind_HOST___AVAIL,A_surfxml_trace___connect_kind_POWER,A_surfxml_trace___connect_kind_LINK___AVAIL,A_surfxml_trace___connect_kind_BANDWIDTH,A_surfxml_trace___connect_kind_LATENCY } AT_surfxml_trace___connect_kind; +typedef int AT_surfxml_router_coordinates; +#define AU_surfxml_router_coordinates NULL +typedef int AT_surfxml_bypassASroute_gw___src; +#define AU_surfxml_bypassASroute_gw___src NULL +typedef int AT_surfxml_backbone_latency; +#define AU_surfxml_backbone_latency NULL +typedef int AT_surfxml_host_id; +#define AU_surfxml_host_id NULL +typedef int AT_surfxml_AS_id; +#define AU_surfxml_AS_id NULL +typedef int AT_surfxml_cluster_state___file; +#define AU_surfxml_cluster_state___file NULL +typedef int AT_surfxml_peer_bw___in; +#define AU_surfxml_peer_bw___in NULL +typedef int AT_surfxml_ASroute_dst; +#define AU_surfxml_ASroute_dst NULL +typedef int AT_surfxml_trace_file; +#define AU_surfxml_trace_file NULL +typedef int AT_surfxml_router_id; +#define AU_surfxml_router_id NULL +typedef int AT_surfxml_prop_value; +#define AU_surfxml_prop_value NULL +typedef int AT_surfxml_storage_id; +#define AU_surfxml_storage_id NULL +typedef int AT_surfxml_storage_content; +#define AU_surfxml_storage_content NULL +typedef enum { AU_surfxml_link_sharing___policy, A_surfxml_link_sharing___policy_SHARED,A_surfxml_link_sharing___policy_FATPIPE,A_surfxml_link_sharing___policy_FULLDUPLEX } AT_surfxml_link_sharing___policy; +typedef enum { AU_surfxml_process_on___failure, A_surfxml_process_on___failure_DIE,A_surfxml_process_on___failure_RESTART } AT_surfxml_process_on___failure; +typedef int AT_surfxml_host_power; +#define AU_surfxml_host_power NULL +typedef int AT_surfxml_cluster_availability___file; +#define AU_surfxml_cluster_availability___file NULL +typedef int AT_surfxml_platform_version; +#define AU_surfxml_platform_version NULL +typedef int AT_surfxml_host_availability; +#define AU_surfxml_host_availability NULL +typedef int AT_surfxml_mount_storageId; +#define AU_surfxml_mount_storageId NULL +typedef int AT_surfxml_host_pstate; +#define AU_surfxml_host_pstate NULL +typedef int AT_surfxml_cluster_bw; +#define AU_surfxml_cluster_bw NULL +typedef int AT_surfxml_argument_value; +#define AU_surfxml_argument_value NULL +typedef enum { AU_surfxml_route_symmetrical, A_surfxml_route_symmetrical_YES,A_surfxml_route_symmetrical_NO } AT_surfxml_route_symmetrical; +typedef int AT_surfxml_route_src; +#define AU_surfxml_route_src NULL +typedef int AT_surfxml_peer_availability___file; +#define AU_surfxml_peer_availability___file NULL typedef enum { AU_surfxml_ASroute_symmetrical, A_surfxml_ASroute_symmetrical_YES,A_surfxml_ASroute_symmetrical_NO } AT_surfxml_ASroute_symmetrical; +typedef enum { AU_surfxml_cluster_sharing___policy, A_surfxml_cluster_sharing___policy_SHARED,A_surfxml_cluster_sharing___policy_FULLDUPLEX,A_surfxml_cluster_sharing___policy_FATPIPE } AT_surfxml_cluster_sharing___policy; +typedef int AT_surfxml_gpu_name; +#define AU_surfxml_gpu_name NULL +typedef int AT_surfxml_storage___type_model; +#define AU_surfxml_storage___type_model NULL /* FleXML-provided data. */ XBT_PUBLIC_DATA(int) surfxml_pcdata_ix; XBT_PUBLIC_DATA(char *) surfxml_bufferstack; #define surfxml_pcdata (surfxml_bufferstack + surfxml_pcdata_ix) -XBT_PUBLIC_DATA(AT_surfxml_random_id) AX_surfxml_random_id; -#define A_surfxml_random_id (surfxml_bufferstack + AX_surfxml_random_id) -XBT_PUBLIC_DATA(short int) surfxml_random_id_isset; -XBT_PUBLIC_DATA(AT_surfxml_trace_periodicity) AX_surfxml_trace_periodicity; -#define A_surfxml_trace_periodicity (surfxml_bufferstack + AX_surfxml_trace_periodicity) -XBT_PUBLIC_DATA(short int) surfxml_trace_periodicity_isset; -XBT_PUBLIC_DATA(AT_surfxml_host_availability) AX_surfxml_host_availability; -#define A_surfxml_host_availability (surfxml_bufferstack + AX_surfxml_host_availability) -XBT_PUBLIC_DATA(short int) surfxml_host_availability_isset; -XBT_PUBLIC_DATA(AT_surfxml_cluster_topology) AX_surfxml_cluster_topology; -#define A_surfxml_cluster_topology AX_surfxml_cluster_topology -XBT_PUBLIC_DATA(short int) surfxml_cluster_topology_isset; -XBT_PUBLIC_DATA(AT_surfxml_process_function) AX_surfxml_process_function; -#define A_surfxml_process_function (surfxml_bufferstack + AX_surfxml_process_function) -XBT_PUBLIC_DATA(short int) surfxml_process_function_isset; -XBT_PUBLIC_DATA(AT_surfxml_link_latency___file) AX_surfxml_link_latency___file; -#define A_surfxml_link_latency___file (surfxml_bufferstack + AX_surfxml_link_latency___file) -XBT_PUBLIC_DATA(short int) surfxml_link_latency___file_isset; -XBT_PUBLIC_DATA(AT_surfxml_bypassRoute_src) AX_surfxml_bypassRoute_src; -#define A_surfxml_bypassRoute_src (surfxml_bufferstack + AX_surfxml_bypassRoute_src) -XBT_PUBLIC_DATA(short int) surfxml_bypassRoute_src_isset; -XBT_PUBLIC_DATA(AT_surfxml_link___ctn_id) AX_surfxml_link___ctn_id; -#define A_surfxml_link___ctn_id (surfxml_bufferstack + AX_surfxml_link___ctn_id) -XBT_PUBLIC_DATA(short int) surfxml_link___ctn_id_isset; -XBT_PUBLIC_DATA(AT_surfxml_host___link_id) AX_surfxml_host___link_id; -#define A_surfxml_host___link_id (surfxml_bufferstack + AX_surfxml_host___link_id) -XBT_PUBLIC_DATA(short int) surfxml_host___link_id_isset; -XBT_PUBLIC_DATA(AT_surfxml_host_power) AX_surfxml_host_power; -#define A_surfxml_host_power (surfxml_bufferstack + AX_surfxml_host_power) -XBT_PUBLIC_DATA(short int) surfxml_host_power_isset; -XBT_PUBLIC_DATA(AT_surfxml_ASroute_dst) AX_surfxml_ASroute_dst; -#define A_surfxml_ASroute_dst (surfxml_bufferstack + AX_surfxml_ASroute_dst) -XBT_PUBLIC_DATA(short int) surfxml_ASroute_dst_isset; -XBT_PUBLIC_DATA(AT_surfxml_storage_content) AX_surfxml_storage_content; -#define A_surfxml_storage_content (surfxml_bufferstack + AX_surfxml_storage_content) -XBT_PUBLIC_DATA(short int) surfxml_storage_content_isset; +XBT_PUBLIC_DATA(AT_surfxml_cluster_bb___lat) AX_surfxml_cluster_bb___lat; +#define A_surfxml_cluster_bb___lat (surfxml_bufferstack + AX_surfxml_cluster_bb___lat) +XBT_PUBLIC_DATA(short int) surfxml_cluster_bb___lat_isset; +XBT_PUBLIC_DATA(AT_surfxml_random_max) AX_surfxml_random_max; +#define A_surfxml_random_max (surfxml_bufferstack + AX_surfxml_random_max) +XBT_PUBLIC_DATA(short int) surfxml_random_max_isset; +XBT_PUBLIC_DATA(AT_surfxml_host_availability___file) AX_surfxml_host_availability___file; +#define A_surfxml_host_availability___file (surfxml_bufferstack + AX_surfxml_host_availability___file) +XBT_PUBLIC_DATA(short int) surfxml_host_availability___file_isset; +XBT_PUBLIC_DATA(AT_surfxml_ASroute_src) AX_surfxml_ASroute_src; +#define A_surfxml_ASroute_src (surfxml_bufferstack + AX_surfxml_ASroute_src) +XBT_PUBLIC_DATA(short int) surfxml_ASroute_src_isset; XBT_PUBLIC_DATA(AT_surfxml_cabinet_id) AX_surfxml_cabinet_id; #define A_surfxml_cabinet_id (surfxml_bufferstack + AX_surfxml_cabinet_id) XBT_PUBLIC_DATA(short int) surfxml_cabinet_id_isset; -XBT_PUBLIC_DATA(AT_surfxml_cabinet_radical) AX_surfxml_cabinet_radical; -#define A_surfxml_cabinet_radical (surfxml_bufferstack + AX_surfxml_cabinet_radical) -XBT_PUBLIC_DATA(short int) surfxml_cabinet_radical_isset; -XBT_PUBLIC_DATA(AT_surfxml_random_std___deviation) AX_surfxml_random_std___deviation; -#define A_surfxml_random_std___deviation (surfxml_bufferstack + AX_surfxml_random_std___deviation) -XBT_PUBLIC_DATA(short int) surfxml_random_std___deviation_isset; +XBT_PUBLIC_DATA(AT_surfxml_cabinet_prefix) AX_surfxml_cabinet_prefix; +#define A_surfxml_cabinet_prefix (surfxml_bufferstack + AX_surfxml_cabinet_prefix) +XBT_PUBLIC_DATA(short int) surfxml_cabinet_prefix_isset; +XBT_PUBLIC_DATA(AT_surfxml_process_function) AX_surfxml_process_function; +#define A_surfxml_process_function (surfxml_bufferstack + AX_surfxml_process_function) +XBT_PUBLIC_DATA(short int) surfxml_process_function_isset; XBT_PUBLIC_DATA(AT_surfxml_ASroute_gw___dst) AX_surfxml_ASroute_gw___dst; #define A_surfxml_ASroute_gw___dst (surfxml_bufferstack + AX_surfxml_ASroute_gw___dst) XBT_PUBLIC_DATA(short int) surfxml_ASroute_gw___dst_isset; +XBT_PUBLIC_DATA(AT_surfxml_storage___type_content___type) AX_surfxml_storage___type_content___type; +#define A_surfxml_storage___type_content___type (surfxml_bufferstack + AX_surfxml_storage___type_content___type) +XBT_PUBLIC_DATA(short int) surfxml_storage___type_content___type_isset; XBT_PUBLIC_DATA(AT_surfxml_include_file) AX_surfxml_include_file; #define A_surfxml_include_file (surfxml_bufferstack + AX_surfxml_include_file) XBT_PUBLIC_DATA(short int) surfxml_include_file_isset; -XBT_PUBLIC_DATA(AT_surfxml_cabinet_bw) AX_surfxml_cabinet_bw; -#define A_surfxml_cabinet_bw (surfxml_bufferstack + AX_surfxml_cabinet_bw) -XBT_PUBLIC_DATA(short int) surfxml_cabinet_bw_isset; -XBT_PUBLIC_DATA(AT_surfxml_link_sharing___policy) AX_surfxml_link_sharing___policy; -#define A_surfxml_link_sharing___policy AX_surfxml_link_sharing___policy -XBT_PUBLIC_DATA(short int) surfxml_link_sharing___policy_isset; -XBT_PUBLIC_DATA(AT_surfxml_link_id) AX_surfxml_link_id; -#define A_surfxml_link_id (surfxml_bufferstack + AX_surfxml_link_id) -XBT_PUBLIC_DATA(short int) surfxml_link_id_isset; -XBT_PUBLIC_DATA(AT_surfxml_argument_value) AX_surfxml_argument_value; -#define A_surfxml_argument_value (surfxml_bufferstack + AX_surfxml_argument_value) -XBT_PUBLIC_DATA(short int) surfxml_argument_value_isset; -XBT_PUBLIC_DATA(AT_surfxml_peer_bw___in) AX_surfxml_peer_bw___in; -#define A_surfxml_peer_bw___in (surfxml_bufferstack + AX_surfxml_peer_bw___in) -XBT_PUBLIC_DATA(short int) surfxml_peer_bw___in_isset; -XBT_PUBLIC_DATA(AT_surfxml_router_coordinates) AX_surfxml_router_coordinates; -#define A_surfxml_router_coordinates (surfxml_bufferstack + AX_surfxml_router_coordinates) -XBT_PUBLIC_DATA(short int) surfxml_router_coordinates_isset; -XBT_PUBLIC_DATA(AT_surfxml_trace___connect_trace) AX_surfxml_trace___connect_trace; -#define A_surfxml_trace___connect_trace (surfxml_bufferstack + AX_surfxml_trace___connect_trace) -XBT_PUBLIC_DATA(short int) surfxml_trace___connect_trace_isset; -XBT_PUBLIC_DATA(AT_surfxml_random_max) AX_surfxml_random_max; -#define A_surfxml_random_max (surfxml_bufferstack + AX_surfxml_random_max) -XBT_PUBLIC_DATA(short int) surfxml_random_max_isset; -XBT_PUBLIC_DATA(AT_surfxml_storage_id) AX_surfxml_storage_id; -#define A_surfxml_storage_id (surfxml_bufferstack + AX_surfxml_storage_id) -XBT_PUBLIC_DATA(short int) surfxml_storage_id_isset; -XBT_PUBLIC_DATA(AT_surfxml_model___prop_id) AX_surfxml_model___prop_id; -#define A_surfxml_model___prop_id (surfxml_bufferstack + AX_surfxml_model___prop_id) -XBT_PUBLIC_DATA(short int) surfxml_model___prop_id_isset; -XBT_PUBLIC_DATA(AT_surfxml_cluster_bb___bw) AX_surfxml_cluster_bb___bw; -#define A_surfxml_cluster_bb___bw (surfxml_bufferstack + AX_surfxml_cluster_bb___bw) -XBT_PUBLIC_DATA(short int) surfxml_cluster_bb___bw_isset; -XBT_PUBLIC_DATA(AT_surfxml_backbone_id) AX_surfxml_backbone_id; -#define A_surfxml_backbone_id (surfxml_bufferstack + AX_surfxml_backbone_id) -XBT_PUBLIC_DATA(short int) surfxml_backbone_id_isset; -XBT_PUBLIC_DATA(AT_surfxml_host_state___file) AX_surfxml_host_state___file; -#define A_surfxml_host_state___file (surfxml_bufferstack + AX_surfxml_host_state___file) -XBT_PUBLIC_DATA(short int) surfxml_host_state___file_isset; -XBT_PUBLIC_DATA(AT_surfxml_cluster_loopback___bw) AX_surfxml_cluster_loopback___bw; -#define A_surfxml_cluster_loopback___bw (surfxml_bufferstack + AX_surfxml_cluster_loopback___bw) -XBT_PUBLIC_DATA(short int) surfxml_cluster_loopback___bw_isset; -XBT_PUBLIC_DATA(AT_surfxml_cluster_bb___lat) AX_surfxml_cluster_bb___lat; -#define A_surfxml_cluster_bb___lat (surfxml_bufferstack + AX_surfxml_cluster_bb___lat) -XBT_PUBLIC_DATA(short int) surfxml_cluster_bb___lat_isset; -XBT_PUBLIC_DATA(AT_surfxml_host___link_up) AX_surfxml_host___link_up; -#define A_surfxml_host___link_up (surfxml_bufferstack + AX_surfxml_host___link_up) -XBT_PUBLIC_DATA(short int) surfxml_host___link_up_isset; -XBT_PUBLIC_DATA(AT_surfxml_cluster_sharing___policy) AX_surfxml_cluster_sharing___policy; -#define A_surfxml_cluster_sharing___policy AX_surfxml_cluster_sharing___policy -XBT_PUBLIC_DATA(short int) surfxml_cluster_sharing___policy_isset; -XBT_PUBLIC_DATA(AT_surfxml_bypassASroute_dst) AX_surfxml_bypassASroute_dst; -#define A_surfxml_bypassASroute_dst (surfxml_bufferstack + AX_surfxml_bypassASroute_dst) -XBT_PUBLIC_DATA(short int) surfxml_bypassASroute_dst_isset; -XBT_PUBLIC_DATA(AT_surfxml_mount_storageId) AX_surfxml_mount_storageId; -#define A_surfxml_mount_storageId (surfxml_bufferstack + AX_surfxml_mount_storageId) -XBT_PUBLIC_DATA(short int) surfxml_mount_storageId_isset; -XBT_PUBLIC_DATA(AT_surfxml_storage___type_content) AX_surfxml_storage___type_content; -#define A_surfxml_storage___type_content (surfxml_bufferstack + AX_surfxml_storage___type_content) -XBT_PUBLIC_DATA(short int) surfxml_storage___type_content_isset; -XBT_PUBLIC_DATA(AT_surfxml_link_latency) AX_surfxml_link_latency; -#define A_surfxml_link_latency (surfxml_bufferstack + AX_surfxml_link_latency) -XBT_PUBLIC_DATA(short int) surfxml_link_latency_isset; -XBT_PUBLIC_DATA(AT_surfxml_mount_name) AX_surfxml_mount_name; -#define A_surfxml_mount_name (surfxml_bufferstack + AX_surfxml_mount_name) -XBT_PUBLIC_DATA(short int) surfxml_mount_name_isset; -XBT_PUBLIC_DATA(AT_surfxml_peer_availability___file) AX_surfxml_peer_availability___file; -#define A_surfxml_peer_availability___file (surfxml_bufferstack + AX_surfxml_peer_availability___file) -XBT_PUBLIC_DATA(short int) surfxml_peer_availability___file_isset; -XBT_PUBLIC_DATA(AT_surfxml_mstorage_typeId) AX_surfxml_mstorage_typeId; -#define A_surfxml_mstorage_typeId (surfxml_bufferstack + AX_surfxml_mstorage_typeId) -XBT_PUBLIC_DATA(short int) surfxml_mstorage_typeId_isset; -XBT_PUBLIC_DATA(AT_surfxml_host_pstate) AX_surfxml_host_pstate; -#define A_surfxml_host_pstate (surfxml_bufferstack + AX_surfxml_host_pstate) -XBT_PUBLIC_DATA(short int) surfxml_host_pstate_isset; XBT_PUBLIC_DATA(AT_surfxml_link_bandwidth___file) AX_surfxml_link_bandwidth___file; #define A_surfxml_link_bandwidth___file (surfxml_bufferstack + AX_surfxml_link_bandwidth___file) XBT_PUBLIC_DATA(short int) surfxml_link_bandwidth___file_isset; -XBT_PUBLIC_DATA(AT_surfxml_cabinet_suffix) AX_surfxml_cabinet_suffix; -#define A_surfxml_cabinet_suffix (surfxml_bufferstack + AX_surfxml_cabinet_suffix) -XBT_PUBLIC_DATA(short int) surfxml_cabinet_suffix_isset; -XBT_PUBLIC_DATA(AT_surfxml_cluster_power) AX_surfxml_cluster_power; -#define A_surfxml_cluster_power (surfxml_bufferstack + AX_surfxml_cluster_power) -XBT_PUBLIC_DATA(short int) surfxml_cluster_power_isset; -XBT_PUBLIC_DATA(AT_surfxml_platform_version) AX_surfxml_platform_version; -#define A_surfxml_platform_version (surfxml_bufferstack + AX_surfxml_platform_version) -XBT_PUBLIC_DATA(short int) surfxml_platform_version_isset; -XBT_PUBLIC_DATA(AT_surfxml_cabinet_power) AX_surfxml_cabinet_power; -#define A_surfxml_cabinet_power (surfxml_bufferstack + AX_surfxml_cabinet_power) -XBT_PUBLIC_DATA(short int) surfxml_cabinet_power_isset; -XBT_PUBLIC_DATA(AT_surfxml_route_dst) AX_surfxml_route_dst; -#define A_surfxml_route_dst (surfxml_bufferstack + AX_surfxml_route_dst) -XBT_PUBLIC_DATA(short int) surfxml_route_dst_isset; -XBT_PUBLIC_DATA(AT_surfxml_host_core) AX_surfxml_host_core; -#define A_surfxml_host_core (surfxml_bufferstack + AX_surfxml_host_core) -XBT_PUBLIC_DATA(short int) surfxml_host_core_isset; -XBT_PUBLIC_DATA(AT_surfxml_storage_content___type) AX_surfxml_storage_content___type; -#define A_surfxml_storage_content___type (surfxml_bufferstack + AX_surfxml_storage_content___type) -XBT_PUBLIC_DATA(short int) surfxml_storage_content___type_isset; -XBT_PUBLIC_DATA(AT_surfxml_backbone_bandwidth) AX_surfxml_backbone_bandwidth; -#define A_surfxml_backbone_bandwidth (surfxml_bufferstack + AX_surfxml_backbone_bandwidth) -XBT_PUBLIC_DATA(short int) surfxml_backbone_bandwidth_isset; -XBT_PUBLIC_DATA(AT_surfxml_peer_coordinates) AX_surfxml_peer_coordinates; -#define A_surfxml_peer_coordinates (surfxml_bufferstack + AX_surfxml_peer_coordinates) -XBT_PUBLIC_DATA(short int) surfxml_peer_coordinates_isset; -XBT_PUBLIC_DATA(AT_surfxml_process_on___failure) AX_surfxml_process_on___failure; -#define A_surfxml_process_on___failure AX_surfxml_process_on___failure -XBT_PUBLIC_DATA(short int) surfxml_process_on___failure_isset; -XBT_PUBLIC_DATA(AT_surfxml_backbone_latency) AX_surfxml_backbone_latency; -#define A_surfxml_backbone_latency (surfxml_bufferstack + AX_surfxml_backbone_latency) -XBT_PUBLIC_DATA(short int) surfxml_backbone_latency_isset; -XBT_PUBLIC_DATA(AT_surfxml_trace___connect_element) AX_surfxml_trace___connect_element; -#define A_surfxml_trace___connect_element (surfxml_bufferstack + AX_surfxml_trace___connect_element) -XBT_PUBLIC_DATA(short int) surfxml_trace___connect_element_isset; -XBT_PUBLIC_DATA(AT_surfxml_cluster_availability___file) AX_surfxml_cluster_availability___file; -#define A_surfxml_cluster_availability___file (surfxml_bufferstack + AX_surfxml_cluster_availability___file) -XBT_PUBLIC_DATA(short int) surfxml_cluster_availability___file_isset; -XBT_PUBLIC_DATA(AT_surfxml_link_state) AX_surfxml_link_state; -#define A_surfxml_link_state AX_surfxml_link_state -XBT_PUBLIC_DATA(short int) surfxml_link_state_isset; -XBT_PUBLIC_DATA(AT_surfxml_storage___type_content___type) AX_surfxml_storage___type_content___type; -#define A_surfxml_storage___type_content___type (surfxml_bufferstack + AX_surfxml_storage___type_content___type) -XBT_PUBLIC_DATA(short int) surfxml_storage___type_content___type_isset; +XBT_PUBLIC_DATA(AT_surfxml_process_kill___time) AX_surfxml_process_kill___time; +#define A_surfxml_process_kill___time (surfxml_bufferstack + AX_surfxml_process_kill___time) +XBT_PUBLIC_DATA(short int) surfxml_process_kill___time_isset; XBT_PUBLIC_DATA(AT_surfxml_link_bandwidth) AX_surfxml_link_bandwidth; #define A_surfxml_link_bandwidth (surfxml_bufferstack + AX_surfxml_link_bandwidth) XBT_PUBLIC_DATA(short int) surfxml_link_bandwidth_isset; -XBT_PUBLIC_DATA(AT_surfxml_host___link_down) AX_surfxml_host___link_down; -#define A_surfxml_host___link_down (surfxml_bufferstack + AX_surfxml_host___link_down) -XBT_PUBLIC_DATA(short int) surfxml_host___link_down_isset; +XBT_PUBLIC_DATA(AT_surfxml_trace_periodicity) AX_surfxml_trace_periodicity; +#define A_surfxml_trace_periodicity (surfxml_bufferstack + AX_surfxml_trace_periodicity) +XBT_PUBLIC_DATA(short int) surfxml_trace_periodicity_isset; +XBT_PUBLIC_DATA(AT_surfxml_storage_typeId) AX_surfxml_storage_typeId; +#define A_surfxml_storage_typeId (surfxml_bufferstack + AX_surfxml_storage_typeId) +XBT_PUBLIC_DATA(short int) surfxml_storage_typeId_isset; +XBT_PUBLIC_DATA(AT_surfxml_cabinet_suffix) AX_surfxml_cabinet_suffix; +#define A_surfxml_cabinet_suffix (surfxml_bufferstack + AX_surfxml_cabinet_suffix) +XBT_PUBLIC_DATA(short int) surfxml_cabinet_suffix_isset; +XBT_PUBLIC_DATA(AT_surfxml_link_latency___file) AX_surfxml_link_latency___file; +#define A_surfxml_link_latency___file (surfxml_bufferstack + AX_surfxml_link_latency___file) +XBT_PUBLIC_DATA(short int) surfxml_link_latency___file_isset; +XBT_PUBLIC_DATA(AT_surfxml_link_id) AX_surfxml_link_id; +#define A_surfxml_link_id (surfxml_bufferstack + AX_surfxml_link_id) +XBT_PUBLIC_DATA(short int) surfxml_link_id_isset; +XBT_PUBLIC_DATA(AT_surfxml_trace_id) AX_surfxml_trace_id; +#define A_surfxml_trace_id (surfxml_bufferstack + AX_surfxml_trace_id) +XBT_PUBLIC_DATA(short int) surfxml_trace_id_isset; +XBT_PUBLIC_DATA(AT_surfxml_cluster_bb___sharing___policy) AX_surfxml_cluster_bb___sharing___policy; +#define A_surfxml_cluster_bb___sharing___policy AX_surfxml_cluster_bb___sharing___policy +XBT_PUBLIC_DATA(short int) surfxml_cluster_bb___sharing___policy_isset; +XBT_PUBLIC_DATA(AT_surfxml_cabinet_radical) AX_surfxml_cabinet_radical; +#define A_surfxml_cabinet_radical (surfxml_bufferstack + AX_surfxml_cabinet_radical) +XBT_PUBLIC_DATA(short int) surfxml_cabinet_radical_isset; XBT_PUBLIC_DATA(AT_surfxml_cluster_lat) AX_surfxml_cluster_lat; #define A_surfxml_cluster_lat (surfxml_bufferstack + AX_surfxml_cluster_lat) XBT_PUBLIC_DATA(short int) surfxml_cluster_lat_isset; -XBT_PUBLIC_DATA(AT_surfxml_random_radical) AX_surfxml_random_radical; -#define A_surfxml_random_radical (surfxml_bufferstack + AX_surfxml_random_radical) -XBT_PUBLIC_DATA(short int) surfxml_random_radical_isset; -XBT_PUBLIC_DATA(AT_surfxml_peer_state___file) AX_surfxml_peer_state___file; -#define A_surfxml_peer_state___file (surfxml_bufferstack + AX_surfxml_peer_state___file) -XBT_PUBLIC_DATA(short int) surfxml_peer_state___file_isset; +XBT_PUBLIC_DATA(AT_surfxml_process_host) AX_surfxml_process_host; +#define A_surfxml_process_host (surfxml_bufferstack + AX_surfxml_process_host) +XBT_PUBLIC_DATA(short int) surfxml_process_host_isset; +XBT_PUBLIC_DATA(AT_surfxml_cluster_core) AX_surfxml_cluster_core; +#define A_surfxml_cluster_core (surfxml_bufferstack + AX_surfxml_cluster_core) +XBT_PUBLIC_DATA(short int) surfxml_cluster_core_isset; +XBT_PUBLIC_DATA(AT_surfxml_peer_id) AX_surfxml_peer_id; +#define A_surfxml_peer_id (surfxml_bufferstack + AX_surfxml_peer_id) +XBT_PUBLIC_DATA(short int) surfxml_peer_id_isset; +XBT_PUBLIC_DATA(AT_surfxml_storage___type_content) AX_surfxml_storage___type_content; +#define A_surfxml_storage___type_content (surfxml_bufferstack + AX_surfxml_storage___type_content) +XBT_PUBLIC_DATA(short int) surfxml_storage___type_content_isset; +XBT_PUBLIC_DATA(AT_surfxml_link___ctn_direction) AX_surfxml_link___ctn_direction; +#define A_surfxml_link___ctn_direction AX_surfxml_link___ctn_direction +XBT_PUBLIC_DATA(short int) surfxml_link___ctn_direction_isset; +XBT_PUBLIC_DATA(AT_surfxml_random_generator) AX_surfxml_random_generator; +#define A_surfxml_random_generator AX_surfxml_random_generator +XBT_PUBLIC_DATA(short int) surfxml_random_generator_isset; +XBT_PUBLIC_DATA(AT_surfxml_bypassRoute_dst) AX_surfxml_bypassRoute_dst; +#define A_surfxml_bypassRoute_dst (surfxml_bufferstack + AX_surfxml_bypassRoute_dst) +XBT_PUBLIC_DATA(short int) surfxml_bypassRoute_dst_isset; +XBT_PUBLIC_DATA(AT_surfxml_cluster_loopback___lat) AX_surfxml_cluster_loopback___lat; +#define A_surfxml_cluster_loopback___lat (surfxml_bufferstack + AX_surfxml_cluster_loopback___lat) +XBT_PUBLIC_DATA(short int) surfxml_cluster_loopback___lat_isset; +XBT_PUBLIC_DATA(AT_surfxml_bypassRoute_src) AX_surfxml_bypassRoute_src; +#define A_surfxml_bypassRoute_src (surfxml_bufferstack + AX_surfxml_bypassRoute_src) +XBT_PUBLIC_DATA(short int) surfxml_bypassRoute_src_isset; +XBT_PUBLIC_DATA(AT_surfxml_cluster_limiter___link) AX_surfxml_cluster_limiter___link; +#define A_surfxml_cluster_limiter___link (surfxml_bufferstack + AX_surfxml_cluster_limiter___link) +XBT_PUBLIC_DATA(short int) surfxml_cluster_limiter___link_isset; +XBT_PUBLIC_DATA(AT_surfxml_mstorage_typeId) AX_surfxml_mstorage_typeId; +#define A_surfxml_mstorage_typeId (surfxml_bufferstack + AX_surfxml_mstorage_typeId) +XBT_PUBLIC_DATA(short int) surfxml_mstorage_typeId_isset; +XBT_PUBLIC_DATA(AT_surfxml_random_seed) AX_surfxml_random_seed; +#define A_surfxml_random_seed (surfxml_bufferstack + AX_surfxml_random_seed) +XBT_PUBLIC_DATA(short int) surfxml_random_seed_isset; +XBT_PUBLIC_DATA(AT_surfxml_random_mean) AX_surfxml_random_mean; +#define A_surfxml_random_mean (surfxml_bufferstack + AX_surfxml_random_mean) +XBT_PUBLIC_DATA(short int) surfxml_random_mean_isset; +XBT_PUBLIC_DATA(AT_surfxml_link___ctn_id) AX_surfxml_link___ctn_id; +#define A_surfxml_link___ctn_id (surfxml_bufferstack + AX_surfxml_link___ctn_id) +XBT_PUBLIC_DATA(short int) surfxml_link___ctn_id_isset; +XBT_PUBLIC_DATA(AT_surfxml_model___prop_value) AX_surfxml_model___prop_value; +#define A_surfxml_model___prop_value (surfxml_bufferstack + AX_surfxml_model___prop_value) +XBT_PUBLIC_DATA(short int) surfxml_model___prop_value_isset; +XBT_PUBLIC_DATA(AT_surfxml_peer_bw___out) AX_surfxml_peer_bw___out; +#define A_surfxml_peer_bw___out (surfxml_bufferstack + AX_surfxml_peer_bw___out) +XBT_PUBLIC_DATA(short int) surfxml_peer_bw___out_isset; XBT_PUBLIC_DATA(AT_surfxml_bypassASroute_src) AX_surfxml_bypassASroute_src; #define A_surfxml_bypassASroute_src (surfxml_bufferstack + AX_surfxml_bypassASroute_src) XBT_PUBLIC_DATA(short int) surfxml_bypassASroute_src_isset; -XBT_PUBLIC_DATA(AT_surfxml_storage_typeId) AX_surfxml_storage_typeId; -#define A_surfxml_storage_typeId (surfxml_bufferstack + AX_surfxml_storage_typeId) -XBT_PUBLIC_DATA(short int) surfxml_storage_typeId_isset; -XBT_PUBLIC_DATA(AT_surfxml_host_coordinates) AX_surfxml_host_coordinates; -#define A_surfxml_host_coordinates (surfxml_bufferstack + AX_surfxml_host_coordinates) -XBT_PUBLIC_DATA(short int) surfxml_host_coordinates_isset; -XBT_PUBLIC_DATA(AT_surfxml_trace_file) AX_surfxml_trace_file; -#define A_surfxml_trace_file (surfxml_bufferstack + AX_surfxml_trace_file) -XBT_PUBLIC_DATA(short int) surfxml_trace_file_isset; -XBT_PUBLIC_DATA(AT_surfxml_bypassASroute_gw___src) AX_surfxml_bypassASroute_gw___src; -#define A_surfxml_bypassASroute_gw___src (surfxml_bufferstack + AX_surfxml_bypassASroute_gw___src) -XBT_PUBLIC_DATA(short int) surfxml_bypassASroute_gw___src_isset; -XBT_PUBLIC_DATA(AT_surfxml_host_availability___file) AX_surfxml_host_availability___file; -#define A_surfxml_host_availability___file (surfxml_bufferstack + AX_surfxml_host_availability___file) -XBT_PUBLIC_DATA(short int) surfxml_host_availability___file_isset; -XBT_PUBLIC_DATA(AT_surfxml_AS_id) AX_surfxml_AS_id; -#define A_surfxml_AS_id (surfxml_bufferstack + AX_surfxml_AS_id) -XBT_PUBLIC_DATA(short int) surfxml_AS_id_isset; -XBT_PUBLIC_DATA(AT_surfxml_process_kill___time) AX_surfxml_process_kill___time; -#define A_surfxml_process_kill___time (surfxml_bufferstack + AX_surfxml_process_kill___time) -XBT_PUBLIC_DATA(short int) surfxml_process_kill___time_isset; +XBT_PUBLIC_DATA(AT_surfxml_backbone_bandwidth) AX_surfxml_backbone_bandwidth; +#define A_surfxml_backbone_bandwidth (surfxml_bufferstack + AX_surfxml_backbone_bandwidth) +XBT_PUBLIC_DATA(short int) surfxml_backbone_bandwidth_isset; +XBT_PUBLIC_DATA(AT_surfxml_host___link_up) AX_surfxml_host___link_up; +#define A_surfxml_host___link_up (surfxml_bufferstack + AX_surfxml_host___link_up) +XBT_PUBLIC_DATA(short int) surfxml_host___link_up_isset; +XBT_PUBLIC_DATA(AT_surfxml_cluster_topology) AX_surfxml_cluster_topology; +#define A_surfxml_cluster_topology AX_surfxml_cluster_topology +XBT_PUBLIC_DATA(short int) surfxml_cluster_topology_isset; +XBT_PUBLIC_DATA(AT_surfxml_ASroute_gw___src) AX_surfxml_ASroute_gw___src; +#define A_surfxml_ASroute_gw___src (surfxml_bufferstack + AX_surfxml_ASroute_gw___src) +XBT_PUBLIC_DATA(short int) surfxml_ASroute_gw___src_isset; +XBT_PUBLIC_DATA(AT_surfxml_random_id) AX_surfxml_random_id; +#define A_surfxml_random_id (surfxml_bufferstack + AX_surfxml_random_id) +XBT_PUBLIC_DATA(short int) surfxml_random_id_isset; +XBT_PUBLIC_DATA(AT_surfxml_peer_power) AX_surfxml_peer_power; +#define A_surfxml_peer_power (surfxml_bufferstack + AX_surfxml_peer_power) +XBT_PUBLIC_DATA(short int) surfxml_peer_power_isset; XBT_PUBLIC_DATA(AT_surfxml_AS_routing) AX_surfxml_AS_routing; #define A_surfxml_AS_routing AX_surfxml_AS_routing XBT_PUBLIC_DATA(short int) surfxml_AS_routing_isset; -XBT_PUBLIC_DATA(AT_surfxml_cluster_limiter___link) AX_surfxml_cluster_limiter___link; -#define A_surfxml_cluster_limiter___link (surfxml_bufferstack + AX_surfxml_cluster_limiter___link) -XBT_PUBLIC_DATA(short int) surfxml_cluster_limiter___link_isset; -XBT_PUBLIC_DATA(AT_surfxml_cluster_bb___sharing___policy) AX_surfxml_cluster_bb___sharing___policy; -#define A_surfxml_cluster_bb___sharing___policy AX_surfxml_cluster_bb___sharing___policy -XBT_PUBLIC_DATA(short int) surfxml_cluster_bb___sharing___policy_isset; -XBT_PUBLIC_DATA(AT_surfxml_trace_id) AX_surfxml_trace_id; -#define A_surfxml_trace_id (surfxml_bufferstack + AX_surfxml_trace_id) -XBT_PUBLIC_DATA(short int) surfxml_trace_id_isset; -XBT_PUBLIC_DATA(AT_surfxml_cabinet_prefix) AX_surfxml_cabinet_prefix; -#define A_surfxml_cabinet_prefix (surfxml_bufferstack + AX_surfxml_cabinet_prefix) -XBT_PUBLIC_DATA(short int) surfxml_cabinet_prefix_isset; -XBT_PUBLIC_DATA(AT_surfxml_config_id) AX_surfxml_config_id; -#define A_surfxml_config_id (surfxml_bufferstack + AX_surfxml_config_id) -XBT_PUBLIC_DATA(short int) surfxml_config_id_isset; +XBT_PUBLIC_DATA(AT_surfxml_process_start___time) AX_surfxml_process_start___time; +#define A_surfxml_process_start___time (surfxml_bufferstack + AX_surfxml_process_start___time) +XBT_PUBLIC_DATA(short int) surfxml_process_start___time_isset; XBT_PUBLIC_DATA(AT_surfxml_cluster_topo___parameters) AX_surfxml_cluster_topo___parameters; #define A_surfxml_cluster_topo___parameters (surfxml_bufferstack + AX_surfxml_cluster_topo___parameters) XBT_PUBLIC_DATA(short int) surfxml_cluster_topo___parameters_isset; -XBT_PUBLIC_DATA(AT_surfxml_cluster_bw) AX_surfxml_cluster_bw; -#define A_surfxml_cluster_bw (surfxml_bufferstack + AX_surfxml_cluster_bw) -XBT_PUBLIC_DATA(short int) surfxml_cluster_bw_isset; -XBT_PUBLIC_DATA(AT_surfxml_storage___type_size) AX_surfxml_storage___type_size; -#define A_surfxml_storage___type_size (surfxml_bufferstack + AX_surfxml_storage___type_size) -XBT_PUBLIC_DATA(short int) surfxml_storage___type_size_isset; +XBT_PUBLIC_DATA(AT_surfxml_route_dst) AX_surfxml_route_dst; +#define A_surfxml_route_dst (surfxml_bufferstack + AX_surfxml_route_dst) +XBT_PUBLIC_DATA(short int) surfxml_route_dst_isset; +XBT_PUBLIC_DATA(AT_surfxml_host_coordinates) AX_surfxml_host_coordinates; +#define A_surfxml_host_coordinates (surfxml_bufferstack + AX_surfxml_host_coordinates) +XBT_PUBLIC_DATA(short int) surfxml_host_coordinates_isset; +XBT_PUBLIC_DATA(AT_surfxml_host___link_down) AX_surfxml_host___link_down; +#define A_surfxml_host___link_down (surfxml_bufferstack + AX_surfxml_host___link_down) +XBT_PUBLIC_DATA(short int) surfxml_host___link_down_isset; XBT_PUBLIC_DATA(AT_surfxml_cluster_radical) AX_surfxml_cluster_radical; #define A_surfxml_cluster_radical (surfxml_bufferstack + AX_surfxml_cluster_radical) XBT_PUBLIC_DATA(short int) surfxml_cluster_radical_isset; -XBT_PUBLIC_DATA(AT_surfxml_storage___type_id) AX_surfxml_storage___type_id; -#define A_surfxml_storage___type_id (surfxml_bufferstack + AX_surfxml_storage___type_id) -XBT_PUBLIC_DATA(short int) surfxml_storage___type_id_isset; -XBT_PUBLIC_DATA(AT_surfxml_cluster_id) AX_surfxml_cluster_id; -#define A_surfxml_cluster_id (surfxml_bufferstack + AX_surfxml_cluster_id) -XBT_PUBLIC_DATA(short int) surfxml_cluster_id_isset; -XBT_PUBLIC_DATA(AT_surfxml_cluster_loopback___lat) AX_surfxml_cluster_loopback___lat; -#define A_surfxml_cluster_loopback___lat (surfxml_bufferstack + AX_surfxml_cluster_loopback___lat) -XBT_PUBLIC_DATA(short int) surfxml_cluster_loopback___lat_isset; -XBT_PUBLIC_DATA(AT_surfxml_random_seed) AX_surfxml_random_seed; -#define A_surfxml_random_seed (surfxml_bufferstack + AX_surfxml_random_seed) -XBT_PUBLIC_DATA(short int) surfxml_random_seed_isset; -XBT_PUBLIC_DATA(AT_surfxml_route_src) AX_surfxml_route_src; -#define A_surfxml_route_src (surfxml_bufferstack + AX_surfxml_route_src) -XBT_PUBLIC_DATA(short int) surfxml_route_src_isset; +XBT_PUBLIC_DATA(AT_surfxml_config_id) AX_surfxml_config_id; +#define A_surfxml_config_id (surfxml_bufferstack + AX_surfxml_config_id) +XBT_PUBLIC_DATA(short int) surfxml_config_id_isset; +XBT_PUBLIC_DATA(AT_surfxml_cabinet_power) AX_surfxml_cabinet_power; +#define A_surfxml_cabinet_power (surfxml_bufferstack + AX_surfxml_cabinet_power) +XBT_PUBLIC_DATA(short int) surfxml_cabinet_power_isset; +XBT_PUBLIC_DATA(AT_surfxml_model___prop_id) AX_surfxml_model___prop_id; +#define A_surfxml_model___prop_id (surfxml_bufferstack + AX_surfxml_model___prop_id) +XBT_PUBLIC_DATA(short int) surfxml_model___prop_id_isset; +XBT_PUBLIC_DATA(AT_surfxml_peer_coordinates) AX_surfxml_peer_coordinates; +#define A_surfxml_peer_coordinates (surfxml_bufferstack + AX_surfxml_peer_coordinates) +XBT_PUBLIC_DATA(short int) surfxml_peer_coordinates_isset; XBT_PUBLIC_DATA(AT_surfxml_mstorage_name) AX_surfxml_mstorage_name; #define A_surfxml_mstorage_name (surfxml_bufferstack + AX_surfxml_mstorage_name) XBT_PUBLIC_DATA(short int) surfxml_mstorage_name_isset; -XBT_PUBLIC_DATA(AT_surfxml_cabinet_lat) AX_surfxml_cabinet_lat; -#define A_surfxml_cabinet_lat (surfxml_bufferstack + AX_surfxml_cabinet_lat) -XBT_PUBLIC_DATA(short int) surfxml_cabinet_lat_isset; -XBT_PUBLIC_DATA(AT_surfxml_storage___type_model) AX_surfxml_storage___type_model; -#define A_surfxml_storage___type_model (surfxml_bufferstack + AX_surfxml_storage___type_model) -XBT_PUBLIC_DATA(short int) surfxml_storage___type_model_isset; -XBT_PUBLIC_DATA(AT_surfxml_cluster_core) AX_surfxml_cluster_core; -#define A_surfxml_cluster_core (surfxml_bufferstack + AX_surfxml_cluster_core) -XBT_PUBLIC_DATA(short int) surfxml_cluster_core_isset; +XBT_PUBLIC_DATA(AT_surfxml_host___link_id) AX_surfxml_host___link_id; +#define A_surfxml_host___link_id (surfxml_bufferstack + AX_surfxml_host___link_id) +XBT_PUBLIC_DATA(short int) surfxml_host___link_id_isset; +XBT_PUBLIC_DATA(AT_surfxml_cluster_loopback___bw) AX_surfxml_cluster_loopback___bw; +#define A_surfxml_cluster_loopback___bw (surfxml_bufferstack + AX_surfxml_cluster_loopback___bw) +XBT_PUBLIC_DATA(short int) surfxml_cluster_loopback___bw_isset; XBT_PUBLIC_DATA(AT_surfxml_cluster_suffix) AX_surfxml_cluster_suffix; #define A_surfxml_cluster_suffix (surfxml_bufferstack + AX_surfxml_cluster_suffix) XBT_PUBLIC_DATA(short int) surfxml_cluster_suffix_isset; -XBT_PUBLIC_DATA(AT_surfxml_random_generator) AX_surfxml_random_generator; -#define A_surfxml_random_generator AX_surfxml_random_generator -XBT_PUBLIC_DATA(short int) surfxml_random_generator_isset; -XBT_PUBLIC_DATA(AT_surfxml_host_state) AX_surfxml_host_state; -#define A_surfxml_host_state AX_surfxml_host_state -XBT_PUBLIC_DATA(short int) surfxml_host_state_isset; -XBT_PUBLIC_DATA(AT_surfxml_cluster_state___file) AX_surfxml_cluster_state___file; -#define A_surfxml_cluster_state___file (surfxml_bufferstack + AX_surfxml_cluster_state___file) -XBT_PUBLIC_DATA(short int) surfxml_cluster_state___file_isset; -XBT_PUBLIC_DATA(AT_surfxml_bypassRoute_dst) AX_surfxml_bypassRoute_dst; -#define A_surfxml_bypassRoute_dst (surfxml_bufferstack + AX_surfxml_bypassRoute_dst) -XBT_PUBLIC_DATA(short int) surfxml_bypassRoute_dst_isset; -XBT_PUBLIC_DATA(AT_surfxml_trace___connect_kind) AX_surfxml_trace___connect_kind; -#define A_surfxml_trace___connect_kind AX_surfxml_trace___connect_kind -XBT_PUBLIC_DATA(short int) surfxml_trace___connect_kind_isset; -XBT_PUBLIC_DATA(AT_surfxml_prop_value) AX_surfxml_prop_value; -#define A_surfxml_prop_value (surfxml_bufferstack + AX_surfxml_prop_value) -XBT_PUBLIC_DATA(short int) surfxml_prop_value_isset; -XBT_PUBLIC_DATA(AT_surfxml_route_symmetrical) AX_surfxml_route_symmetrical; -#define A_surfxml_route_symmetrical AX_surfxml_route_symmetrical -XBT_PUBLIC_DATA(short int) surfxml_route_symmetrical_isset; +XBT_PUBLIC_DATA(AT_surfxml_cluster_router___id) AX_surfxml_cluster_router___id; +#define A_surfxml_cluster_router___id (surfxml_bufferstack + AX_surfxml_cluster_router___id) +XBT_PUBLIC_DATA(short int) surfxml_cluster_router___id_isset; +XBT_PUBLIC_DATA(AT_surfxml_prop_id) AX_surfxml_prop_id; +#define A_surfxml_prop_id (surfxml_bufferstack + AX_surfxml_prop_id) +XBT_PUBLIC_DATA(short int) surfxml_prop_id_isset; +XBT_PUBLIC_DATA(AT_surfxml_backbone_id) AX_surfxml_backbone_id; +#define A_surfxml_backbone_id (surfxml_bufferstack + AX_surfxml_backbone_id) +XBT_PUBLIC_DATA(short int) surfxml_backbone_id_isset; XBT_PUBLIC_DATA(AT_surfxml_link_state___file) AX_surfxml_link_state___file; #define A_surfxml_link_state___file (surfxml_bufferstack + AX_surfxml_link_state___file) XBT_PUBLIC_DATA(short int) surfxml_link_state___file_isset; -XBT_PUBLIC_DATA(AT_surfxml_process_host) AX_surfxml_process_host; -#define A_surfxml_process_host (surfxml_bufferstack + AX_surfxml_process_host) -XBT_PUBLIC_DATA(short int) surfxml_process_host_isset; -XBT_PUBLIC_DATA(AT_surfxml_ASroute_gw___src) AX_surfxml_ASroute_gw___src; -#define A_surfxml_ASroute_gw___src (surfxml_bufferstack + AX_surfxml_ASroute_gw___src) -XBT_PUBLIC_DATA(short int) surfxml_ASroute_gw___src_isset; -XBT_PUBLIC_DATA(AT_surfxml_peer_id) AX_surfxml_peer_id; -#define A_surfxml_peer_id (surfxml_bufferstack + AX_surfxml_peer_id) -XBT_PUBLIC_DATA(short int) surfxml_peer_id_isset; -XBT_PUBLIC_DATA(AT_surfxml_cluster_prefix) AX_surfxml_cluster_prefix; -#define A_surfxml_cluster_prefix (surfxml_bufferstack + AX_surfxml_cluster_prefix) -XBT_PUBLIC_DATA(short int) surfxml_cluster_prefix_isset; -XBT_PUBLIC_DATA(AT_surfxml_ASroute_src) AX_surfxml_ASroute_src; -#define A_surfxml_ASroute_src (surfxml_bufferstack + AX_surfxml_ASroute_src) -XBT_PUBLIC_DATA(short int) surfxml_ASroute_src_isset; -XBT_PUBLIC_DATA(AT_surfxml_host_id) AX_surfxml_host_id; -#define A_surfxml_host_id (surfxml_bufferstack + AX_surfxml_host_id) -XBT_PUBLIC_DATA(short int) surfxml_host_id_isset; +XBT_PUBLIC_DATA(AT_surfxml_cabinet_lat) AX_surfxml_cabinet_lat; +#define A_surfxml_cabinet_lat (surfxml_bufferstack + AX_surfxml_cabinet_lat) +XBT_PUBLIC_DATA(short int) surfxml_cabinet_lat_isset; +XBT_PUBLIC_DATA(AT_surfxml_storage___type_id) AX_surfxml_storage___type_id; +#define A_surfxml_storage___type_id (surfxml_bufferstack + AX_surfxml_storage___type_id) +XBT_PUBLIC_DATA(short int) surfxml_storage___type_id_isset; +XBT_PUBLIC_DATA(AT_surfxml_storage_content___type) AX_surfxml_storage_content___type; +#define A_surfxml_storage_content___type (surfxml_bufferstack + AX_surfxml_storage_content___type) +XBT_PUBLIC_DATA(short int) surfxml_storage_content___type_isset; +XBT_PUBLIC_DATA(AT_surfxml_random_radical) AX_surfxml_random_radical; +#define A_surfxml_random_radical (surfxml_bufferstack + AX_surfxml_random_radical) +XBT_PUBLIC_DATA(short int) surfxml_random_radical_isset; +XBT_PUBLIC_DATA(AT_surfxml_cluster_power) AX_surfxml_cluster_power; +#define A_surfxml_cluster_power (surfxml_bufferstack + AX_surfxml_cluster_power) +XBT_PUBLIC_DATA(short int) surfxml_cluster_power_isset; +XBT_PUBLIC_DATA(AT_surfxml_trace___connect_element) AX_surfxml_trace___connect_element; +#define A_surfxml_trace___connect_element (surfxml_bufferstack + AX_surfxml_trace___connect_element) +XBT_PUBLIC_DATA(short int) surfxml_trace___connect_element_isset; +XBT_PUBLIC_DATA(AT_surfxml_link_latency) AX_surfxml_link_latency; +#define A_surfxml_link_latency (surfxml_bufferstack + AX_surfxml_link_latency) +XBT_PUBLIC_DATA(short int) surfxml_link_latency_isset; +XBT_PUBLIC_DATA(AT_surfxml_host_state) AX_surfxml_host_state; +#define A_surfxml_host_state AX_surfxml_host_state +XBT_PUBLIC_DATA(short int) surfxml_host_state_isset; +XBT_PUBLIC_DATA(AT_surfxml_host_core) AX_surfxml_host_core; +#define A_surfxml_host_core (surfxml_bufferstack + AX_surfxml_host_core) +XBT_PUBLIC_DATA(short int) surfxml_host_core_isset; +XBT_PUBLIC_DATA(AT_surfxml_storage___type_size) AX_surfxml_storage___type_size; +#define A_surfxml_storage___type_size (surfxml_bufferstack + AX_surfxml_storage___type_size) +XBT_PUBLIC_DATA(short int) surfxml_storage___type_size_isset; +XBT_PUBLIC_DATA(AT_surfxml_mount_name) AX_surfxml_mount_name; +#define A_surfxml_mount_name (surfxml_bufferstack + AX_surfxml_mount_name) +XBT_PUBLIC_DATA(short int) surfxml_mount_name_isset; +XBT_PUBLIC_DATA(AT_surfxml_cluster_id) AX_surfxml_cluster_id; +#define A_surfxml_cluster_id (surfxml_bufferstack + AX_surfxml_cluster_id) +XBT_PUBLIC_DATA(short int) surfxml_cluster_id_isset; +XBT_PUBLIC_DATA(AT_surfxml_peer_state___file) AX_surfxml_peer_state___file; +#define A_surfxml_peer_state___file (surfxml_bufferstack + AX_surfxml_peer_state___file) +XBT_PUBLIC_DATA(short int) surfxml_peer_state___file_isset; +XBT_PUBLIC_DATA(AT_surfxml_host_state___file) AX_surfxml_host_state___file; +#define A_surfxml_host_state___file (surfxml_bufferstack + AX_surfxml_host_state___file) +XBT_PUBLIC_DATA(short int) surfxml_host_state___file_isset; +XBT_PUBLIC_DATA(AT_surfxml_bypassASroute_dst) AX_surfxml_bypassASroute_dst; +#define A_surfxml_bypassASroute_dst (surfxml_bufferstack + AX_surfxml_bypassASroute_dst) +XBT_PUBLIC_DATA(short int) surfxml_bypassASroute_dst_isset; +XBT_PUBLIC_DATA(AT_surfxml_link_state) AX_surfxml_link_state; +#define A_surfxml_link_state AX_surfxml_link_state +XBT_PUBLIC_DATA(short int) surfxml_link_state_isset; XBT_PUBLIC_DATA(AT_surfxml_bypassASroute_gw___dst) AX_surfxml_bypassASroute_gw___dst; #define A_surfxml_bypassASroute_gw___dst (surfxml_bufferstack + AX_surfxml_bypassASroute_gw___dst) XBT_PUBLIC_DATA(short int) surfxml_bypassASroute_gw___dst_isset; +XBT_PUBLIC_DATA(AT_surfxml_random_std___deviation) AX_surfxml_random_std___deviation; +#define A_surfxml_random_std___deviation (surfxml_bufferstack + AX_surfxml_random_std___deviation) +XBT_PUBLIC_DATA(short int) surfxml_random_std___deviation_isset; +XBT_PUBLIC_DATA(AT_surfxml_cluster_bb___bw) AX_surfxml_cluster_bb___bw; +#define A_surfxml_cluster_bb___bw (surfxml_bufferstack + AX_surfxml_cluster_bb___bw) +XBT_PUBLIC_DATA(short int) surfxml_cluster_bb___bw_isset; +XBT_PUBLIC_DATA(AT_surfxml_trace___connect_trace) AX_surfxml_trace___connect_trace; +#define A_surfxml_trace___connect_trace (surfxml_bufferstack + AX_surfxml_trace___connect_trace) +XBT_PUBLIC_DATA(short int) surfxml_trace___connect_trace_isset; XBT_PUBLIC_DATA(AT_surfxml_peer_lat) AX_surfxml_peer_lat; #define A_surfxml_peer_lat (surfxml_bufferstack + AX_surfxml_peer_lat) XBT_PUBLIC_DATA(short int) surfxml_peer_lat_isset; -XBT_PUBLIC_DATA(AT_surfxml_cluster_router___id) AX_surfxml_cluster_router___id; -#define A_surfxml_cluster_router___id (surfxml_bufferstack + AX_surfxml_cluster_router___id) -XBT_PUBLIC_DATA(short int) surfxml_cluster_router___id_isset; +XBT_PUBLIC_DATA(AT_surfxml_cabinet_bw) AX_surfxml_cabinet_bw; +#define A_surfxml_cabinet_bw (surfxml_bufferstack + AX_surfxml_cabinet_bw) +XBT_PUBLIC_DATA(short int) surfxml_cabinet_bw_isset; +XBT_PUBLIC_DATA(AT_surfxml_cluster_prefix) AX_surfxml_cluster_prefix; +#define A_surfxml_cluster_prefix (surfxml_bufferstack + AX_surfxml_cluster_prefix) +XBT_PUBLIC_DATA(short int) surfxml_cluster_prefix_isset; XBT_PUBLIC_DATA(AT_surfxml_storage_attach) AX_surfxml_storage_attach; #define A_surfxml_storage_attach (surfxml_bufferstack + AX_surfxml_storage_attach) XBT_PUBLIC_DATA(short int) surfxml_storage_attach_isset; -XBT_PUBLIC_DATA(AT_surfxml_peer_bw___out) AX_surfxml_peer_bw___out; -#define A_surfxml_peer_bw___out (surfxml_bufferstack + AX_surfxml_peer_bw___out) -XBT_PUBLIC_DATA(short int) surfxml_peer_bw___out_isset; -XBT_PUBLIC_DATA(AT_surfxml_peer_power) AX_surfxml_peer_power; -#define A_surfxml_peer_power (surfxml_bufferstack + AX_surfxml_peer_power) -XBT_PUBLIC_DATA(short int) surfxml_peer_power_isset; -XBT_PUBLIC_DATA(AT_surfxml_router_id) AX_surfxml_router_id; -#define A_surfxml_router_id (surfxml_bufferstack + AX_surfxml_router_id) -XBT_PUBLIC_DATA(short int) surfxml_router_id_isset; -XBT_PUBLIC_DATA(AT_surfxml_link___ctn_direction) AX_surfxml_link___ctn_direction; -#define A_surfxml_link___ctn_direction AX_surfxml_link___ctn_direction -XBT_PUBLIC_DATA(short int) surfxml_link___ctn_direction_isset; -XBT_PUBLIC_DATA(AT_surfxml_gpu_name) AX_surfxml_gpu_name; -#define A_surfxml_gpu_name (surfxml_bufferstack + AX_surfxml_gpu_name) -XBT_PUBLIC_DATA(short int) surfxml_gpu_name_isset; -XBT_PUBLIC_DATA(AT_surfxml_model___prop_value) AX_surfxml_model___prop_value; -#define A_surfxml_model___prop_value (surfxml_bufferstack + AX_surfxml_model___prop_value) -XBT_PUBLIC_DATA(short int) surfxml_model___prop_value_isset; -XBT_PUBLIC_DATA(AT_surfxml_prop_id) AX_surfxml_prop_id; -#define A_surfxml_prop_id (surfxml_bufferstack + AX_surfxml_prop_id) -XBT_PUBLIC_DATA(short int) surfxml_prop_id_isset; -XBT_PUBLIC_DATA(AT_surfxml_process_start___time) AX_surfxml_process_start___time; -#define A_surfxml_process_start___time (surfxml_bufferstack + AX_surfxml_process_start___time) -XBT_PUBLIC_DATA(short int) surfxml_process_start___time_isset; XBT_PUBLIC_DATA(AT_surfxml_random_min) AX_surfxml_random_min; #define A_surfxml_random_min (surfxml_bufferstack + AX_surfxml_random_min) XBT_PUBLIC_DATA(short int) surfxml_random_min_isset; -XBT_PUBLIC_DATA(AT_surfxml_random_mean) AX_surfxml_random_mean; -#define A_surfxml_random_mean (surfxml_bufferstack + AX_surfxml_random_mean) -XBT_PUBLIC_DATA(short int) surfxml_random_mean_isset; +XBT_PUBLIC_DATA(AT_surfxml_trace___connect_kind) AX_surfxml_trace___connect_kind; +#define A_surfxml_trace___connect_kind AX_surfxml_trace___connect_kind +XBT_PUBLIC_DATA(short int) surfxml_trace___connect_kind_isset; +XBT_PUBLIC_DATA(AT_surfxml_router_coordinates) AX_surfxml_router_coordinates; +#define A_surfxml_router_coordinates (surfxml_bufferstack + AX_surfxml_router_coordinates) +XBT_PUBLIC_DATA(short int) surfxml_router_coordinates_isset; +XBT_PUBLIC_DATA(AT_surfxml_bypassASroute_gw___src) AX_surfxml_bypassASroute_gw___src; +#define A_surfxml_bypassASroute_gw___src (surfxml_bufferstack + AX_surfxml_bypassASroute_gw___src) +XBT_PUBLIC_DATA(short int) surfxml_bypassASroute_gw___src_isset; +XBT_PUBLIC_DATA(AT_surfxml_backbone_latency) AX_surfxml_backbone_latency; +#define A_surfxml_backbone_latency (surfxml_bufferstack + AX_surfxml_backbone_latency) +XBT_PUBLIC_DATA(short int) surfxml_backbone_latency_isset; +XBT_PUBLIC_DATA(AT_surfxml_host_id) AX_surfxml_host_id; +#define A_surfxml_host_id (surfxml_bufferstack + AX_surfxml_host_id) +XBT_PUBLIC_DATA(short int) surfxml_host_id_isset; +XBT_PUBLIC_DATA(AT_surfxml_AS_id) AX_surfxml_AS_id; +#define A_surfxml_AS_id (surfxml_bufferstack + AX_surfxml_AS_id) +XBT_PUBLIC_DATA(short int) surfxml_AS_id_isset; +XBT_PUBLIC_DATA(AT_surfxml_cluster_state___file) AX_surfxml_cluster_state___file; +#define A_surfxml_cluster_state___file (surfxml_bufferstack + AX_surfxml_cluster_state___file) +XBT_PUBLIC_DATA(short int) surfxml_cluster_state___file_isset; +XBT_PUBLIC_DATA(AT_surfxml_peer_bw___in) AX_surfxml_peer_bw___in; +#define A_surfxml_peer_bw___in (surfxml_bufferstack + AX_surfxml_peer_bw___in) +XBT_PUBLIC_DATA(short int) surfxml_peer_bw___in_isset; +XBT_PUBLIC_DATA(AT_surfxml_ASroute_dst) AX_surfxml_ASroute_dst; +#define A_surfxml_ASroute_dst (surfxml_bufferstack + AX_surfxml_ASroute_dst) +XBT_PUBLIC_DATA(short int) surfxml_ASroute_dst_isset; +XBT_PUBLIC_DATA(AT_surfxml_trace_file) AX_surfxml_trace_file; +#define A_surfxml_trace_file (surfxml_bufferstack + AX_surfxml_trace_file) +XBT_PUBLIC_DATA(short int) surfxml_trace_file_isset; +XBT_PUBLIC_DATA(AT_surfxml_router_id) AX_surfxml_router_id; +#define A_surfxml_router_id (surfxml_bufferstack + AX_surfxml_router_id) +XBT_PUBLIC_DATA(short int) surfxml_router_id_isset; +XBT_PUBLIC_DATA(AT_surfxml_prop_value) AX_surfxml_prop_value; +#define A_surfxml_prop_value (surfxml_bufferstack + AX_surfxml_prop_value) +XBT_PUBLIC_DATA(short int) surfxml_prop_value_isset; +XBT_PUBLIC_DATA(AT_surfxml_storage_id) AX_surfxml_storage_id; +#define A_surfxml_storage_id (surfxml_bufferstack + AX_surfxml_storage_id) +XBT_PUBLIC_DATA(short int) surfxml_storage_id_isset; +XBT_PUBLIC_DATA(AT_surfxml_storage_content) AX_surfxml_storage_content; +#define A_surfxml_storage_content (surfxml_bufferstack + AX_surfxml_storage_content) +XBT_PUBLIC_DATA(short int) surfxml_storage_content_isset; +XBT_PUBLIC_DATA(AT_surfxml_link_sharing___policy) AX_surfxml_link_sharing___policy; +#define A_surfxml_link_sharing___policy AX_surfxml_link_sharing___policy +XBT_PUBLIC_DATA(short int) surfxml_link_sharing___policy_isset; +XBT_PUBLIC_DATA(AT_surfxml_process_on___failure) AX_surfxml_process_on___failure; +#define A_surfxml_process_on___failure AX_surfxml_process_on___failure +XBT_PUBLIC_DATA(short int) surfxml_process_on___failure_isset; +XBT_PUBLIC_DATA(AT_surfxml_host_power) AX_surfxml_host_power; +#define A_surfxml_host_power (surfxml_bufferstack + AX_surfxml_host_power) +XBT_PUBLIC_DATA(short int) surfxml_host_power_isset; +XBT_PUBLIC_DATA(AT_surfxml_cluster_availability___file) AX_surfxml_cluster_availability___file; +#define A_surfxml_cluster_availability___file (surfxml_bufferstack + AX_surfxml_cluster_availability___file) +XBT_PUBLIC_DATA(short int) surfxml_cluster_availability___file_isset; +XBT_PUBLIC_DATA(AT_surfxml_platform_version) AX_surfxml_platform_version; +#define A_surfxml_platform_version (surfxml_bufferstack + AX_surfxml_platform_version) +XBT_PUBLIC_DATA(short int) surfxml_platform_version_isset; +XBT_PUBLIC_DATA(AT_surfxml_host_availability) AX_surfxml_host_availability; +#define A_surfxml_host_availability (surfxml_bufferstack + AX_surfxml_host_availability) +XBT_PUBLIC_DATA(short int) surfxml_host_availability_isset; +XBT_PUBLIC_DATA(AT_surfxml_mount_storageId) AX_surfxml_mount_storageId; +#define A_surfxml_mount_storageId (surfxml_bufferstack + AX_surfxml_mount_storageId) +XBT_PUBLIC_DATA(short int) surfxml_mount_storageId_isset; +XBT_PUBLIC_DATA(AT_surfxml_host_pstate) AX_surfxml_host_pstate; +#define A_surfxml_host_pstate (surfxml_bufferstack + AX_surfxml_host_pstate) +XBT_PUBLIC_DATA(short int) surfxml_host_pstate_isset; +XBT_PUBLIC_DATA(AT_surfxml_cluster_bw) AX_surfxml_cluster_bw; +#define A_surfxml_cluster_bw (surfxml_bufferstack + AX_surfxml_cluster_bw) +XBT_PUBLIC_DATA(short int) surfxml_cluster_bw_isset; +XBT_PUBLIC_DATA(AT_surfxml_argument_value) AX_surfxml_argument_value; +#define A_surfxml_argument_value (surfxml_bufferstack + AX_surfxml_argument_value) +XBT_PUBLIC_DATA(short int) surfxml_argument_value_isset; +XBT_PUBLIC_DATA(AT_surfxml_route_symmetrical) AX_surfxml_route_symmetrical; +#define A_surfxml_route_symmetrical AX_surfxml_route_symmetrical +XBT_PUBLIC_DATA(short int) surfxml_route_symmetrical_isset; +XBT_PUBLIC_DATA(AT_surfxml_route_src) AX_surfxml_route_src; +#define A_surfxml_route_src (surfxml_bufferstack + AX_surfxml_route_src) +XBT_PUBLIC_DATA(short int) surfxml_route_src_isset; +XBT_PUBLIC_DATA(AT_surfxml_peer_availability___file) AX_surfxml_peer_availability___file; +#define A_surfxml_peer_availability___file (surfxml_bufferstack + AX_surfxml_peer_availability___file) +XBT_PUBLIC_DATA(short int) surfxml_peer_availability___file_isset; XBT_PUBLIC_DATA(AT_surfxml_ASroute_symmetrical) AX_surfxml_ASroute_symmetrical; #define A_surfxml_ASroute_symmetrical AX_surfxml_ASroute_symmetrical XBT_PUBLIC_DATA(short int) surfxml_ASroute_symmetrical_isset; +XBT_PUBLIC_DATA(AT_surfxml_cluster_sharing___policy) AX_surfxml_cluster_sharing___policy; +#define A_surfxml_cluster_sharing___policy AX_surfxml_cluster_sharing___policy +XBT_PUBLIC_DATA(short int) surfxml_cluster_sharing___policy_isset; +XBT_PUBLIC_DATA(AT_surfxml_gpu_name) AX_surfxml_gpu_name; +#define A_surfxml_gpu_name (surfxml_bufferstack + AX_surfxml_gpu_name) +XBT_PUBLIC_DATA(short int) surfxml_gpu_name_isset; +XBT_PUBLIC_DATA(AT_surfxml_storage___type_model) AX_surfxml_storage___type_model; +#define A_surfxml_storage___type_model (surfxml_bufferstack + AX_surfxml_storage___type_model) +XBT_PUBLIC_DATA(short int) surfxml_storage___type_model_isset; /* XML application utilities. */ XBT_PUBLIC(int) surfxml_element_context(int); diff --git a/include/xbt/graphxml.h b/include/xbt/graphxml.h index d86bc4ff11..671ec3bbbd 100644 --- a/include/xbt/graphxml.h +++ b/include/xbt/graphxml.h @@ -56,70 +56,70 @@ XBT_PUBLIC(void) STag_graphxml_edge(void); XBT_PUBLIC(void) ETag_graphxml_edge(void); /* XML application data. */ -typedef int AT_graphxml_node_position___x; -#define AU_graphxml_node_position___x NULL +typedef int AT_graphxml_edge_source; +#define AU_graphxml_edge_source NULL +typedef int AT_graphxml_node_name; +#define AU_graphxml_node_name NULL typedef int AT_graphxml_node_data; #define AU_graphxml_node_data NULL -typedef int AT_graphxml_edge_label; -#define AU_graphxml_edge_label NULL typedef int AT_graphxml_node_position___y; #define AU_graphxml_node_position___y NULL -typedef int AT_graphxml_node_name; -#define AU_graphxml_node_name NULL +typedef enum { AU_graphxml_graph_isDirected, A_graphxml_graph_isDirected_true,A_graphxml_graph_isDirected_false } AT_graphxml_graph_isDirected; typedef int AT_graphxml_edge_data; #define AU_graphxml_edge_data NULL -typedef enum { AU_graphxml_graph_isDirected, A_graphxml_graph_isDirected_true,A_graphxml_graph_isDirected_false } AT_graphxml_graph_isDirected; -typedef int AT_graphxml_edge_source; -#define AU_graphxml_edge_source NULL typedef int AT_graphxml_edge_name; #define AU_graphxml_edge_name NULL +typedef int AT_graphxml_edge_length; +#define AU_graphxml_edge_length NULL +typedef int AT_graphxml_edge_label; +#define AU_graphxml_edge_label NULL +typedef int AT_graphxml_node_position___x; +#define AU_graphxml_node_position___x NULL typedef int AT_graphxml_node_label; #define AU_graphxml_node_label NULL typedef int AT_graphxml_edge_target; #define AU_graphxml_edge_target NULL -typedef int AT_graphxml_edge_length; -#define AU_graphxml_edge_length NULL /* FleXML-provided data. */ XBT_PUBLIC_DATA(int) graphxml_pcdata_ix; XBT_PUBLIC_DATA(char *) graphxml_bufferstack; #define graphxml_pcdata (graphxml_bufferstack + graphxml_pcdata_ix) -XBT_PUBLIC_DATA(AT_graphxml_node_position___x) AX_graphxml_node_position___x; -#define A_graphxml_node_position___x (graphxml_bufferstack + AX_graphxml_node_position___x) -XBT_PUBLIC_DATA(short int) graphxml_node_position___x_isset; +XBT_PUBLIC_DATA(AT_graphxml_edge_source) AX_graphxml_edge_source; +#define A_graphxml_edge_source (graphxml_bufferstack + AX_graphxml_edge_source) +XBT_PUBLIC_DATA(short int) graphxml_edge_source_isset; +XBT_PUBLIC_DATA(AT_graphxml_node_name) AX_graphxml_node_name; +#define A_graphxml_node_name (graphxml_bufferstack + AX_graphxml_node_name) +XBT_PUBLIC_DATA(short int) graphxml_node_name_isset; XBT_PUBLIC_DATA(AT_graphxml_node_data) AX_graphxml_node_data; #define A_graphxml_node_data (graphxml_bufferstack + AX_graphxml_node_data) XBT_PUBLIC_DATA(short int) graphxml_node_data_isset; -XBT_PUBLIC_DATA(AT_graphxml_edge_label) AX_graphxml_edge_label; -#define A_graphxml_edge_label (graphxml_bufferstack + AX_graphxml_edge_label) -XBT_PUBLIC_DATA(short int) graphxml_edge_label_isset; XBT_PUBLIC_DATA(AT_graphxml_node_position___y) AX_graphxml_node_position___y; #define A_graphxml_node_position___y (graphxml_bufferstack + AX_graphxml_node_position___y) XBT_PUBLIC_DATA(short int) graphxml_node_position___y_isset; -XBT_PUBLIC_DATA(AT_graphxml_node_name) AX_graphxml_node_name; -#define A_graphxml_node_name (graphxml_bufferstack + AX_graphxml_node_name) -XBT_PUBLIC_DATA(short int) graphxml_node_name_isset; -XBT_PUBLIC_DATA(AT_graphxml_edge_data) AX_graphxml_edge_data; -#define A_graphxml_edge_data (graphxml_bufferstack + AX_graphxml_edge_data) -XBT_PUBLIC_DATA(short int) graphxml_edge_data_isset; XBT_PUBLIC_DATA(AT_graphxml_graph_isDirected) AX_graphxml_graph_isDirected; #define A_graphxml_graph_isDirected AX_graphxml_graph_isDirected XBT_PUBLIC_DATA(short int) graphxml_graph_isDirected_isset; -XBT_PUBLIC_DATA(AT_graphxml_edge_source) AX_graphxml_edge_source; -#define A_graphxml_edge_source (graphxml_bufferstack + AX_graphxml_edge_source) -XBT_PUBLIC_DATA(short int) graphxml_edge_source_isset; +XBT_PUBLIC_DATA(AT_graphxml_edge_data) AX_graphxml_edge_data; +#define A_graphxml_edge_data (graphxml_bufferstack + AX_graphxml_edge_data) +XBT_PUBLIC_DATA(short int) graphxml_edge_data_isset; XBT_PUBLIC_DATA(AT_graphxml_edge_name) AX_graphxml_edge_name; #define A_graphxml_edge_name (graphxml_bufferstack + AX_graphxml_edge_name) XBT_PUBLIC_DATA(short int) graphxml_edge_name_isset; +XBT_PUBLIC_DATA(AT_graphxml_edge_length) AX_graphxml_edge_length; +#define A_graphxml_edge_length (graphxml_bufferstack + AX_graphxml_edge_length) +XBT_PUBLIC_DATA(short int) graphxml_edge_length_isset; +XBT_PUBLIC_DATA(AT_graphxml_edge_label) AX_graphxml_edge_label; +#define A_graphxml_edge_label (graphxml_bufferstack + AX_graphxml_edge_label) +XBT_PUBLIC_DATA(short int) graphxml_edge_label_isset; +XBT_PUBLIC_DATA(AT_graphxml_node_position___x) AX_graphxml_node_position___x; +#define A_graphxml_node_position___x (graphxml_bufferstack + AX_graphxml_node_position___x) +XBT_PUBLIC_DATA(short int) graphxml_node_position___x_isset; XBT_PUBLIC_DATA(AT_graphxml_node_label) AX_graphxml_node_label; #define A_graphxml_node_label (graphxml_bufferstack + AX_graphxml_node_label) XBT_PUBLIC_DATA(short int) graphxml_node_label_isset; XBT_PUBLIC_DATA(AT_graphxml_edge_target) AX_graphxml_edge_target; #define A_graphxml_edge_target (graphxml_bufferstack + AX_graphxml_edge_target) XBT_PUBLIC_DATA(short int) graphxml_edge_target_isset; -XBT_PUBLIC_DATA(AT_graphxml_edge_length) AX_graphxml_edge_length; -#define A_graphxml_edge_length (graphxml_bufferstack + AX_graphxml_edge_length) -XBT_PUBLIC_DATA(short int) graphxml_edge_length_isset; /* XML application utilities. */ XBT_PUBLIC(int) graphxml_element_context(int); diff --git a/src/include/surf/surf.h b/src/include/surf/surf.h index 8c10321c38..fc0214886f 100644 --- a/src/include/surf/surf.h +++ b/src/include/surf/surf.h @@ -708,7 +708,9 @@ XBT_PUBLIC(int) surf_workstation_file_move(surf_resource_t workstation, surf_fil * - SEEK_END: end of the file * @return MSG_OK if successful, otherwise MSG_TASK_CANCELED */ -XBT_PUBLIC(int) surf_workstation_file_seek(surf_resource_t workstation, surf_file_t fd, sg_size_t offset, int origin); +XBT_PUBLIC(int) surf_workstation_file_seek(surf_resource_t workstation, + surf_file_t fd, sg_offset_t offset, + int origin); /** * @brief [brief description] diff --git a/src/msg/msg_io.c b/src/msg/msg_io.c index d4a0d4e4bb..8bb0ba4b9f 100644 --- a/src/msg/msg_io.c +++ b/src/msg/msg_io.c @@ -140,7 +140,7 @@ sg_size_t MSG_file_read(msg_file_t fd, sg_size_t size) sg_size_t MSG_file_write(msg_file_t fd, sg_size_t size) { msg_file_priv_t file_priv = MSG_file_priv(fd); - sg_size_t write_size; + sg_size_t write_size, offset; /* Find the host where the file is physically located (remote or local)*/ msg_storage_t storage_src =(msg_storage_t) xbt_lib_get_elm_or_null(storage_lib, file_priv->storageId); @@ -172,7 +172,9 @@ sg_size_t MSG_file_write(msg_file_t fd, sg_size_t size) } } /* Write file on local or remote host */ + offset = simcall_file_tell(file_priv->simdata->smx_file); write_size = simcall_file_write(file_priv->simdata->smx_file, size, attached_host); + file_priv->size = offset+write_size; return write_size; } @@ -234,8 +236,14 @@ int MSG_file_close(msg_file_t fd) */ msg_error_t MSG_file_unlink(msg_file_t fd) { - msg_file_priv_t priv = MSG_file_priv(fd); - int res = simcall_file_unlink(priv->simdata->smx_file); + msg_file_priv_t file_priv = MSG_file_priv(fd); + /* Find the host where the file is physically located (remote or local)*/ + msg_storage_t storage_src = + (msg_storage_t) xbt_lib_get_elm_or_null(storage_lib, + file_priv->storageId); + msg_storage_priv_t storage_priv_src = MSG_storage_priv(storage_src); + msg_host_t attached_host = MSG_get_host_by_name(storage_priv_src->hostname); + int res = simcall_file_unlink(file_priv->simdata->smx_file, attached_host); return res; } @@ -266,7 +274,7 @@ sg_size_t MSG_file_get_size(msg_file_t fd){ * MSG_TASK_CANCELED (=8). * */ -msg_error_t MSG_file_seek(msg_file_t fd, sg_size_t offset, int origin) +msg_error_t MSG_file_seek(msg_file_t fd, sg_offset_t offset, int origin) { msg_file_priv_t priv = MSG_file_priv(fd); return simcall_file_seek(priv->simdata->smx_file, offset, origin); @@ -321,6 +329,7 @@ msg_error_t MSG_file_rcopy (msg_file_t file, msg_host_t host, const char* fullpa msg_storage_t storage_src =(msg_storage_t) xbt_lib_get_elm_or_null(storage_lib, file_priv->storageId); msg_storage_priv_t storage_priv_src = MSG_storage_priv(storage_src); msg_host_t attached_host = MSG_get_host_by_name(storage_priv_src->hostname); + MSG_file_seek(file, 0, SEEK_SET); read_size = simcall_file_read(file_priv->simdata->smx_file, file_priv->size, attached_host); /* Find the real host destination where the file will be physically stored */ @@ -343,6 +352,8 @@ msg_error_t MSG_file_rcopy (msg_file_t file, msg_host_t host, const char* fullpa } free(file_mount_name); } + xbt_dict_free(&storage_list); + if(longest_prefix_length>0){ /* Mount point found, retrieve the host the storage is attached to */ msg_storage_priv_t storage_dest_priv = MSG_storage_priv(storage_dest); @@ -554,6 +565,12 @@ xbt_dict_t MSG_storage_get_content(msg_storage_t storage) return SIMIX_storage_get_content(storage); } +/** \ingroup msg_storage_management + * + * \brief Returns the size of a #msg_storage_t. + * \param storage a storage + * \return The size of the storage + */ sg_size_t MSG_storage_get_size(msg_storage_t storage) { return SIMIX_storage_get_size(storage); diff --git a/src/simdag/dax_dtd.c b/src/simdag/dax_dtd.c index 0ba3b75a19..43e90c9293 100644 --- a/src/simdag/dax_dtd.c +++ b/src/simdag/dax_dtd.c @@ -1332,78 +1332,78 @@ extern char *dax__bufferstack; AT_dax__uses_type AX_dax__uses_type; #define A_dax__uses_type (dax__bufferstack + AX_dax__uses_type) short int dax__uses_type_isset; -AT_dax__adag_childCount AX_dax__adag_childCount; -#define A_dax__adag_childCount (dax__bufferstack + AX_dax__adag_childCount) -short int dax__adag_childCount_isset; -AT_dax__adag_jobCount AX_dax__adag_jobCount; -#define A_dax__adag_jobCount (dax__bufferstack + AX_dax__adag_jobCount) -short int dax__adag_jobCount_isset; AT_dax__adag_count AX_dax__adag_count; #define A_dax__adag_count (dax__bufferstack + AX_dax__adag_count) short int dax__adag_count_isset; -AT_dax__job_name AX_dax__job_name; -#define A_dax__job_name (dax__bufferstack + AX_dax__job_name) -short int dax__job_name_isset; AT_dax__adag_xmlns_c_xsi AX_dax__adag_xmlns_c_xsi; #define A_dax__adag_xmlns_c_xsi (dax__bufferstack + AX_dax__adag_xmlns_c_xsi) short int dax__adag_xmlns_c_xsi_isset; -AT_dax__job_version AX_dax__job_version; -#define A_dax__job_version (dax__bufferstack + AX_dax__job_version) -short int dax__job_version_isset; -AT_dax__adag_version AX_dax__adag_version; -#define A_dax__adag_version (dax__bufferstack + AX_dax__adag_version) -short int dax__adag_version_isset; -AT_dax__adag_fileCount AX_dax__adag_fileCount; -#define A_dax__adag_fileCount (dax__bufferstack + AX_dax__adag_fileCount) -short int dax__adag_fileCount_isset; -AT_dax__uses_size AX_dax__uses_size; -#define A_dax__uses_size (dax__bufferstack + AX_dax__uses_size) -short int dax__uses_size_isset; -AT_dax__uses_register AX_dax__uses_register; -#define A_dax__uses_register AX_dax__uses_register -short int dax__uses_register_isset; +AT_dax__adag_xmlns AX_dax__adag_xmlns; +#define A_dax__adag_xmlns (dax__bufferstack + AX_dax__adag_xmlns) +short int dax__adag_xmlns_isset; +AT_dax__parent_ref AX_dax__parent_ref; +#define A_dax__parent_ref (dax__bufferstack + AX_dax__parent_ref) +short int dax__parent_ref_isset; AT_dax__job_namespace AX_dax__job_namespace; #define A_dax__job_namespace (dax__bufferstack + AX_dax__job_namespace) short int dax__job_namespace_isset; AT_dax__adag_xsi_c_schemaLocation AX_dax__adag_xsi_c_schemaLocation; #define A_dax__adag_xsi_c_schemaLocation (dax__bufferstack + AX_dax__adag_xsi_c_schemaLocation) short int dax__adag_xsi_c_schemaLocation_isset; -AT_dax__parent_ref AX_dax__parent_ref; -#define A_dax__parent_ref (dax__bufferstack + AX_dax__parent_ref) -short int dax__parent_ref_isset; +AT_dax__adag_childCount AX_dax__adag_childCount; +#define A_dax__adag_childCount (dax__bufferstack + AX_dax__adag_childCount) +short int dax__adag_childCount_isset; +AT_dax__uses_transfer AX_dax__uses_transfer; +#define A_dax__uses_transfer AX_dax__uses_transfer +short int dax__uses_transfer_isset; +AT_dax__uses_file AX_dax__uses_file; +#define A_dax__uses_file (dax__bufferstack + AX_dax__uses_file) +short int dax__uses_file_isset; +AT_dax__adag_name AX_dax__adag_name; +#define A_dax__adag_name (dax__bufferstack + AX_dax__adag_name) +short int dax__adag_name_isset; AT_dax__uses_optional AX_dax__uses_optional; #define A_dax__uses_optional AX_dax__uses_optional short int dax__uses_optional_isset; -AT_dax__uses_link AX_dax__uses_link; -#define A_dax__uses_link AX_dax__uses_link -short int dax__uses_link_isset; -AT_dax__adag_xmlns AX_dax__adag_xmlns; -#define A_dax__adag_xmlns (dax__bufferstack + AX_dax__adag_xmlns) -short int dax__adag_xmlns_isset; -AT_dax__job_runtime AX_dax__job_runtime; -#define A_dax__job_runtime (dax__bufferstack + AX_dax__job_runtime) -short int dax__job_runtime_isset; AT_dax__child_ref AX_dax__child_ref; #define A_dax__child_ref (dax__bufferstack + AX_dax__child_ref) short int dax__child_ref_isset; -AT_dax__adag_name AX_dax__adag_name; -#define A_dax__adag_name (dax__bufferstack + AX_dax__adag_name) -short int dax__adag_name_isset; AT_dax__job_level AX_dax__job_level; #define A_dax__job_level (dax__bufferstack + AX_dax__job_level) short int dax__job_level_isset; -AT_dax__adag_index AX_dax__adag_index; -#define A_dax__adag_index (dax__bufferstack + AX_dax__adag_index) -short int dax__adag_index_isset; -AT_dax__uses_transfer AX_dax__uses_transfer; -#define A_dax__uses_transfer AX_dax__uses_transfer -short int dax__uses_transfer_isset; -AT_dax__uses_file AX_dax__uses_file; -#define A_dax__uses_file (dax__bufferstack + AX_dax__uses_file) -short int dax__uses_file_isset; AT_dax__job_id AX_dax__job_id; #define A_dax__job_id (dax__bufferstack + AX_dax__job_id) short int dax__job_id_isset; +AT_dax__uses_size AX_dax__uses_size; +#define A_dax__uses_size (dax__bufferstack + AX_dax__uses_size) +short int dax__uses_size_isset; +AT_dax__job_runtime AX_dax__job_runtime; +#define A_dax__job_runtime (dax__bufferstack + AX_dax__job_runtime) +short int dax__job_runtime_isset; +AT_dax__job_name AX_dax__job_name; +#define A_dax__job_name (dax__bufferstack + AX_dax__job_name) +short int dax__job_name_isset; +AT_dax__uses_link AX_dax__uses_link; +#define A_dax__uses_link AX_dax__uses_link +short int dax__uses_link_isset; +AT_dax__adag_version AX_dax__adag_version; +#define A_dax__adag_version (dax__bufferstack + AX_dax__adag_version) +short int dax__adag_version_isset; +AT_dax__uses_register AX_dax__uses_register; +#define A_dax__uses_register AX_dax__uses_register +short int dax__uses_register_isset; +AT_dax__adag_index AX_dax__adag_index; +#define A_dax__adag_index (dax__bufferstack + AX_dax__adag_index) +short int dax__adag_index_isset; +AT_dax__job_version AX_dax__job_version; +#define A_dax__job_version (dax__bufferstack + AX_dax__job_version) +short int dax__job_version_isset; +AT_dax__adag_fileCount AX_dax__adag_fileCount; +#define A_dax__adag_fileCount (dax__bufferstack + AX_dax__adag_fileCount) +short int dax__adag_fileCount_isset; +AT_dax__adag_jobCount AX_dax__adag_jobCount; +#define A_dax__adag_jobCount (dax__bufferstack + AX_dax__adag_jobCount) +short int dax__adag_jobCount_isset; /* XML state. */ #ifdef FLEX_DEBUG @@ -2190,10 +2190,10 @@ case 44: YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",dax_text[0]); YY_BREAK -case YY_STATE_EOF(S_dax__adag): -case YY_STATE_EOF(S_dax__adag_3): case YY_STATE_EOF(S_dax__adag_1): +case YY_STATE_EOF(S_dax__adag): case YY_STATE_EOF(E_dax__adag): +case YY_STATE_EOF(S_dax__adag_3): case YY_STATE_EOF(S_dax__adag_5): FAIL("Premature EOF: `' expected."); YY_BREAK @@ -2300,7 +2300,7 @@ YY_RULE_SETUP if (!AX_dax__job_runtime) FAIL("Required attribute `runtime' not set for `job' element."); LEAVE; STag_dax__job(); dax__pcdata_ix = 0; ETag_dax__job(); popbuffer(); /* attribute */ switch (YY_START) { - case S_dax__adag: case S_dax__adag_2: case S_dax__adag_3: SET(S_dax__adag_3); break; + case S_dax__adag_2: case S_dax__adag_3: case S_dax__adag: SET(S_dax__adag_3); break; } } YY_BREAK @@ -2324,7 +2324,7 @@ YY_RULE_SETUP ETag_dax__job(); popbuffer(); /* attribute */ switch (YY_START) { - case S_dax__adag: case S_dax__adag_2: case S_dax__adag_3: SET(S_dax__adag_3); break; + case S_dax__adag_2: case S_dax__adag_3: case S_dax__adag: SET(S_dax__adag_3); break; } } YY_BREAK @@ -2337,9 +2337,9 @@ case 65: YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",dax_text[0]); YY_BREAK -case YY_STATE_EOF(S_dax__job_2): -case YY_STATE_EOF(E_dax__job): case YY_STATE_EOF(S_dax__job): +case YY_STATE_EOF(E_dax__job): +case YY_STATE_EOF(S_dax__job_2): FAIL("Premature EOF: `' expected."); YY_BREAK @@ -2473,7 +2473,7 @@ YY_RULE_SETUP if (!AX_dax__uses_size) FAIL("Required attribute `size' not set for `uses' element."); LEAVE; STag_dax__uses(); dax__pcdata_ix = 0; ETag_dax__uses(); popbuffer(); /* attribute */ switch (YY_START) { - case S_dax__job_2: case S_dax__job_1: case S_dax__job: SET(S_dax__job_2); break; + case S_dax__job: case S_dax__job_2: case S_dax__job_1: SET(S_dax__job_2); break; } } YY_BREAK @@ -2497,7 +2497,7 @@ YY_RULE_SETUP ETag_dax__uses(); popbuffer(); /* attribute */ switch (YY_START) { - case S_dax__job_2: case S_dax__job_1: case S_dax__job: SET(S_dax__job_2); break; + case S_dax__job: case S_dax__job_2: case S_dax__job_1: SET(S_dax__job_2); break; } } YY_BREAK @@ -2552,7 +2552,7 @@ YY_RULE_SETUP if (!AX_dax__child_ref) FAIL("Required attribute `ref' not set for `child' element."); LEAVE; STag_dax__child(); dax__pcdata_ix = 0; ETag_dax__child(); popbuffer(); /* attribute */ switch (YY_START) { - case S_dax__adag: case S_dax__adag_1: case S_dax__adag_4: case S_dax__adag_3: case S_dax__adag_5: SET(S_dax__adag_5); break; + case S_dax__adag_5: case S_dax__adag_4: case S_dax__adag_3: case S_dax__adag: case S_dax__adag_1: SET(S_dax__adag_5); break; } } YY_BREAK @@ -2576,7 +2576,7 @@ YY_RULE_SETUP ETag_dax__child(); popbuffer(); /* attribute */ switch (YY_START) { - case S_dax__adag: case S_dax__adag_1: case S_dax__adag_4: case S_dax__adag_3: case S_dax__adag_5: SET(S_dax__adag_5); break; + case S_dax__adag_5: case S_dax__adag_4: case S_dax__adag_3: case S_dax__adag: case S_dax__adag_1: SET(S_dax__adag_5); break; } } YY_BREAK @@ -2589,9 +2589,9 @@ case 107: YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",dax_text[0]); YY_BREAK -case YY_STATE_EOF(S_dax__child_2): -case YY_STATE_EOF(S_dax__child): case YY_STATE_EOF(E_dax__child): +case YY_STATE_EOF(S_dax__child): +case YY_STATE_EOF(S_dax__child_2): FAIL("Premature EOF: `' expected."); YY_BREAK @@ -2633,7 +2633,7 @@ YY_RULE_SETUP if (!AX_dax__parent_ref) FAIL("Required attribute `ref' not set for `parent' element."); LEAVE; STag_dax__parent(); dax__pcdata_ix = 0; ETag_dax__parent(); popbuffer(); /* attribute */ switch (YY_START) { - case S_dax__child: case S_dax__child_2: case S_dax__child_1: SET(S_dax__child_2); break; + case S_dax__child_1: case S_dax__child_2: case S_dax__child: SET(S_dax__child_2); break; } } YY_BREAK @@ -2657,7 +2657,7 @@ YY_RULE_SETUP ETag_dax__parent(); popbuffer(); /* attribute */ switch (YY_START) { - case S_dax__child: case S_dax__child_2: case S_dax__child_1: SET(S_dax__child_2); break; + case S_dax__child_1: case S_dax__child_2: case S_dax__child: SET(S_dax__child_2); break; } } YY_BREAK diff --git a/src/simdag/dax_dtd.h b/src/simdag/dax_dtd.h index 08c7c7bbb6..e570088638 100644 --- a/src/simdag/dax_dtd.h +++ b/src/simdag/dax_dtd.h @@ -60,132 +60,132 @@ XBT_PUBLIC(void) STag_dax__parent(void); XBT_PUBLIC(void) ETag_dax__parent(void); /* XML application data. */ -typedef int AT_dax__uses_file; -#define AU_dax__uses_file NULL typedef int AT_dax__job_id; #define AU_dax__job_id NULL -typedef int AT_dax__child_ref; -#define AU_dax__child_ref NULL typedef int AT_dax__adag_index; #define AU_dax__adag_index NULL +typedef enum { AU_dax__uses_transfer, A_dax__uses_transfer_false,A_dax__uses_transfer_true } AT_dax__uses_transfer; +typedef int AT_dax__adag_fileCount; +#define AU_dax__adag_fileCount NULL +typedef int AT_dax__adag_jobCount; +#define AU_dax__adag_jobCount NULL +typedef int AT_dax__job_level; +#define AU_dax__job_level NULL +typedef int AT_dax__adag_name; +#define AU_dax__adag_name NULL typedef enum { AU_dax__uses_register, A_dax__uses_register_false,A_dax__uses_register_true } AT_dax__uses_register; typedef int AT_dax__adag_count; #define AU_dax__adag_count NULL +typedef int AT_dax__parent_ref; +#define AU_dax__parent_ref NULL +typedef int AT_dax__job_version; +#define AU_dax__job_version NULL +typedef int AT_dax__adag_xmlns; +#define AU_dax__adag_xmlns NULL +typedef int AT_dax__adag_childCount; +#define AU_dax__adag_childCount NULL +typedef int AT_dax__adag_xsi_c_schemaLocation; +#define AU_dax__adag_xsi_c_schemaLocation NULL +typedef int AT_dax__job_runtime; +#define AU_dax__job_runtime NULL +typedef int AT_dax__uses_file; +#define AU_dax__uses_file NULL typedef enum { AU_dax__uses_link, A_dax__uses_link_input,A_dax__uses_link_output } AT_dax__uses_link; -typedef int AT_dax__adag_fileCount; -#define AU_dax__adag_fileCount NULL typedef int AT_dax__adag_xmlns_c_xsi; #define AU_dax__adag_xmlns_c_xsi NULL -typedef int AT_dax__adag_xsi_c_schemaLocation; -#define AU_dax__adag_xsi_c_schemaLocation NULL -typedef int AT_dax__adag_childCount; -#define AU_dax__adag_childCount NULL -typedef enum { AU_dax__uses_transfer, A_dax__uses_transfer_false,A_dax__uses_transfer_true } AT_dax__uses_transfer; typedef int AT_dax__job_name; #define AU_dax__job_name NULL -typedef int AT_dax__uses_type; -#define AU_dax__uses_type NULL -typedef int AT_dax__parent_ref; -#define AU_dax__parent_ref NULL -typedef int AT_dax__uses_size; -#define AU_dax__uses_size NULL -typedef int AT_dax__adag_name; -#define AU_dax__adag_name NULL -typedef int AT_dax__job_runtime; -#define AU_dax__job_runtime NULL -typedef int AT_dax__adag_xmlns; -#define AU_dax__adag_xmlns NULL -typedef int AT_dax__job_level; -#define AU_dax__job_level NULL +typedef int AT_dax__child_ref; +#define AU_dax__child_ref NULL typedef int AT_dax__job_namespace; #define AU_dax__job_namespace NULL -typedef int AT_dax__job_version; -#define AU_dax__job_version NULL -typedef enum { AU_dax__uses_optional, A_dax__uses_optional_false,A_dax__uses_optional_true } AT_dax__uses_optional; -typedef int AT_dax__adag_jobCount; -#define AU_dax__adag_jobCount NULL typedef int AT_dax__adag_version; #define AU_dax__adag_version NULL +typedef enum { AU_dax__uses_optional, A_dax__uses_optional_false,A_dax__uses_optional_true } AT_dax__uses_optional; +typedef int AT_dax__uses_type; +#define AU_dax__uses_type NULL +typedef int AT_dax__uses_size; +#define AU_dax__uses_size NULL /* FleXML-provided data. */ XBT_PUBLIC_DATA(int) dax__pcdata_ix; XBT_PUBLIC_DATA(char *) dax__bufferstack; #define dax__pcdata (dax__bufferstack + dax__pcdata_ix) -XBT_PUBLIC_DATA(AT_dax__uses_file) AX_dax__uses_file; -#define A_dax__uses_file (dax__bufferstack + AX_dax__uses_file) -XBT_PUBLIC_DATA(short int) dax__uses_file_isset; XBT_PUBLIC_DATA(AT_dax__job_id) AX_dax__job_id; #define A_dax__job_id (dax__bufferstack + AX_dax__job_id) XBT_PUBLIC_DATA(short int) dax__job_id_isset; -XBT_PUBLIC_DATA(AT_dax__child_ref) AX_dax__child_ref; -#define A_dax__child_ref (dax__bufferstack + AX_dax__child_ref) -XBT_PUBLIC_DATA(short int) dax__child_ref_isset; XBT_PUBLIC_DATA(AT_dax__adag_index) AX_dax__adag_index; #define A_dax__adag_index (dax__bufferstack + AX_dax__adag_index) XBT_PUBLIC_DATA(short int) dax__adag_index_isset; +XBT_PUBLIC_DATA(AT_dax__uses_transfer) AX_dax__uses_transfer; +#define A_dax__uses_transfer AX_dax__uses_transfer +XBT_PUBLIC_DATA(short int) dax__uses_transfer_isset; +XBT_PUBLIC_DATA(AT_dax__adag_fileCount) AX_dax__adag_fileCount; +#define A_dax__adag_fileCount (dax__bufferstack + AX_dax__adag_fileCount) +XBT_PUBLIC_DATA(short int) dax__adag_fileCount_isset; +XBT_PUBLIC_DATA(AT_dax__adag_jobCount) AX_dax__adag_jobCount; +#define A_dax__adag_jobCount (dax__bufferstack + AX_dax__adag_jobCount) +XBT_PUBLIC_DATA(short int) dax__adag_jobCount_isset; +XBT_PUBLIC_DATA(AT_dax__job_level) AX_dax__job_level; +#define A_dax__job_level (dax__bufferstack + AX_dax__job_level) +XBT_PUBLIC_DATA(short int) dax__job_level_isset; +XBT_PUBLIC_DATA(AT_dax__adag_name) AX_dax__adag_name; +#define A_dax__adag_name (dax__bufferstack + AX_dax__adag_name) +XBT_PUBLIC_DATA(short int) dax__adag_name_isset; XBT_PUBLIC_DATA(AT_dax__uses_register) AX_dax__uses_register; #define A_dax__uses_register AX_dax__uses_register XBT_PUBLIC_DATA(short int) dax__uses_register_isset; XBT_PUBLIC_DATA(AT_dax__adag_count) AX_dax__adag_count; #define A_dax__adag_count (dax__bufferstack + AX_dax__adag_count) XBT_PUBLIC_DATA(short int) dax__adag_count_isset; +XBT_PUBLIC_DATA(AT_dax__parent_ref) AX_dax__parent_ref; +#define A_dax__parent_ref (dax__bufferstack + AX_dax__parent_ref) +XBT_PUBLIC_DATA(short int) dax__parent_ref_isset; +XBT_PUBLIC_DATA(AT_dax__job_version) AX_dax__job_version; +#define A_dax__job_version (dax__bufferstack + AX_dax__job_version) +XBT_PUBLIC_DATA(short int) dax__job_version_isset; +XBT_PUBLIC_DATA(AT_dax__adag_xmlns) AX_dax__adag_xmlns; +#define A_dax__adag_xmlns (dax__bufferstack + AX_dax__adag_xmlns) +XBT_PUBLIC_DATA(short int) dax__adag_xmlns_isset; +XBT_PUBLIC_DATA(AT_dax__adag_childCount) AX_dax__adag_childCount; +#define A_dax__adag_childCount (dax__bufferstack + AX_dax__adag_childCount) +XBT_PUBLIC_DATA(short int) dax__adag_childCount_isset; +XBT_PUBLIC_DATA(AT_dax__adag_xsi_c_schemaLocation) AX_dax__adag_xsi_c_schemaLocation; +#define A_dax__adag_xsi_c_schemaLocation (dax__bufferstack + AX_dax__adag_xsi_c_schemaLocation) +XBT_PUBLIC_DATA(short int) dax__adag_xsi_c_schemaLocation_isset; +XBT_PUBLIC_DATA(AT_dax__job_runtime) AX_dax__job_runtime; +#define A_dax__job_runtime (dax__bufferstack + AX_dax__job_runtime) +XBT_PUBLIC_DATA(short int) dax__job_runtime_isset; +XBT_PUBLIC_DATA(AT_dax__uses_file) AX_dax__uses_file; +#define A_dax__uses_file (dax__bufferstack + AX_dax__uses_file) +XBT_PUBLIC_DATA(short int) dax__uses_file_isset; XBT_PUBLIC_DATA(AT_dax__uses_link) AX_dax__uses_link; #define A_dax__uses_link AX_dax__uses_link XBT_PUBLIC_DATA(short int) dax__uses_link_isset; -XBT_PUBLIC_DATA(AT_dax__adag_fileCount) AX_dax__adag_fileCount; -#define A_dax__adag_fileCount (dax__bufferstack + AX_dax__adag_fileCount) -XBT_PUBLIC_DATA(short int) dax__adag_fileCount_isset; XBT_PUBLIC_DATA(AT_dax__adag_xmlns_c_xsi) AX_dax__adag_xmlns_c_xsi; #define A_dax__adag_xmlns_c_xsi (dax__bufferstack + AX_dax__adag_xmlns_c_xsi) XBT_PUBLIC_DATA(short int) dax__adag_xmlns_c_xsi_isset; -XBT_PUBLIC_DATA(AT_dax__adag_xsi_c_schemaLocation) AX_dax__adag_xsi_c_schemaLocation; -#define A_dax__adag_xsi_c_schemaLocation (dax__bufferstack + AX_dax__adag_xsi_c_schemaLocation) -XBT_PUBLIC_DATA(short int) dax__adag_xsi_c_schemaLocation_isset; -XBT_PUBLIC_DATA(AT_dax__adag_childCount) AX_dax__adag_childCount; -#define A_dax__adag_childCount (dax__bufferstack + AX_dax__adag_childCount) -XBT_PUBLIC_DATA(short int) dax__adag_childCount_isset; -XBT_PUBLIC_DATA(AT_dax__uses_transfer) AX_dax__uses_transfer; -#define A_dax__uses_transfer AX_dax__uses_transfer -XBT_PUBLIC_DATA(short int) dax__uses_transfer_isset; XBT_PUBLIC_DATA(AT_dax__job_name) AX_dax__job_name; #define A_dax__job_name (dax__bufferstack + AX_dax__job_name) XBT_PUBLIC_DATA(short int) dax__job_name_isset; -XBT_PUBLIC_DATA(AT_dax__uses_type) AX_dax__uses_type; -#define A_dax__uses_type (dax__bufferstack + AX_dax__uses_type) -XBT_PUBLIC_DATA(short int) dax__uses_type_isset; -XBT_PUBLIC_DATA(AT_dax__parent_ref) AX_dax__parent_ref; -#define A_dax__parent_ref (dax__bufferstack + AX_dax__parent_ref) -XBT_PUBLIC_DATA(short int) dax__parent_ref_isset; -XBT_PUBLIC_DATA(AT_dax__uses_size) AX_dax__uses_size; -#define A_dax__uses_size (dax__bufferstack + AX_dax__uses_size) -XBT_PUBLIC_DATA(short int) dax__uses_size_isset; -XBT_PUBLIC_DATA(AT_dax__adag_name) AX_dax__adag_name; -#define A_dax__adag_name (dax__bufferstack + AX_dax__adag_name) -XBT_PUBLIC_DATA(short int) dax__adag_name_isset; -XBT_PUBLIC_DATA(AT_dax__job_runtime) AX_dax__job_runtime; -#define A_dax__job_runtime (dax__bufferstack + AX_dax__job_runtime) -XBT_PUBLIC_DATA(short int) dax__job_runtime_isset; -XBT_PUBLIC_DATA(AT_dax__adag_xmlns) AX_dax__adag_xmlns; -#define A_dax__adag_xmlns (dax__bufferstack + AX_dax__adag_xmlns) -XBT_PUBLIC_DATA(short int) dax__adag_xmlns_isset; -XBT_PUBLIC_DATA(AT_dax__job_level) AX_dax__job_level; -#define A_dax__job_level (dax__bufferstack + AX_dax__job_level) -XBT_PUBLIC_DATA(short int) dax__job_level_isset; +XBT_PUBLIC_DATA(AT_dax__child_ref) AX_dax__child_ref; +#define A_dax__child_ref (dax__bufferstack + AX_dax__child_ref) +XBT_PUBLIC_DATA(short int) dax__child_ref_isset; XBT_PUBLIC_DATA(AT_dax__job_namespace) AX_dax__job_namespace; #define A_dax__job_namespace (dax__bufferstack + AX_dax__job_namespace) XBT_PUBLIC_DATA(short int) dax__job_namespace_isset; -XBT_PUBLIC_DATA(AT_dax__job_version) AX_dax__job_version; -#define A_dax__job_version (dax__bufferstack + AX_dax__job_version) -XBT_PUBLIC_DATA(short int) dax__job_version_isset; -XBT_PUBLIC_DATA(AT_dax__uses_optional) AX_dax__uses_optional; -#define A_dax__uses_optional AX_dax__uses_optional -XBT_PUBLIC_DATA(short int) dax__uses_optional_isset; -XBT_PUBLIC_DATA(AT_dax__adag_jobCount) AX_dax__adag_jobCount; -#define A_dax__adag_jobCount (dax__bufferstack + AX_dax__adag_jobCount) -XBT_PUBLIC_DATA(short int) dax__adag_jobCount_isset; XBT_PUBLIC_DATA(AT_dax__adag_version) AX_dax__adag_version; #define A_dax__adag_version (dax__bufferstack + AX_dax__adag_version) XBT_PUBLIC_DATA(short int) dax__adag_version_isset; +XBT_PUBLIC_DATA(AT_dax__uses_optional) AX_dax__uses_optional; +#define A_dax__uses_optional AX_dax__uses_optional +XBT_PUBLIC_DATA(short int) dax__uses_optional_isset; +XBT_PUBLIC_DATA(AT_dax__uses_type) AX_dax__uses_type; +#define A_dax__uses_type (dax__bufferstack + AX_dax__uses_type) +XBT_PUBLIC_DATA(short int) dax__uses_type_isset; +XBT_PUBLIC_DATA(AT_dax__uses_size) AX_dax__uses_size; +#define A_dax__uses_size (dax__bufferstack + AX_dax__uses_size) +XBT_PUBLIC_DATA(short int) dax__uses_size_isset; /* XML application utilities. */ XBT_PUBLIC(int) dax__element_context(int); diff --git a/src/simix/simcalls.in b/src/simix/simcalls.in index 7d1998e12f..e9759eb246 100644 --- a/src/simix/simcalls.in +++ b/src/simix/simcalls.in @@ -113,10 +113,10 @@ file_read False (sg_size_t) (fd, void*, smx_file_t) (size, sg_size_t) (host, voi file_write False (sg_size_t) (fd, void*, smx_file_t) (size, sg_size_t) (host, void*, smx_host_t) file_open False (void*, smx_file_t) (fullpath, const char*) (host, void*, smx_host_t) file_close False (int) (fd, void*, smx_file_t) (host, void*, smx_host_t) -file_unlink True (int) (fd, void*, smx_file_t) +file_unlink True (int) (fd, void*, smx_file_t) (host, void*, smx_host_t) file_get_size True (sg_size_t) (fd, void*, smx_file_t) file_tell True (sg_size_t) (fd, void*, smx_file_t) -file_seek True (int) (fd, void*, smx_file_t) (offset, sg_size_t) (origin, int) +file_seek True (int) (fd, void*, smx_file_t) (offset, sg_offset_t) (origin, int) file_get_info True (void*, xbt_dynar_t) (fd, void*, smx_file_t) file_move True (int) (fd, void*, smx_file_t) (fullpath, const char*) storage_get_free_size True (sg_size_t) (storage, void*, smx_storage_t) diff --git a/src/simix/simcalls.py b/src/simix/simcalls.py index 27d6504986..570815e057 100755 --- a/src/simix/simcalls.py +++ b/src/simix/simcalls.py @@ -24,6 +24,7 @@ types = [('TCHAR', 'char', 'c') ,('TCPTR', 'const void*', 'cp') ,('TSIZE', 'size_t', 'sz') ,('TSGSIZE', 'sg_size_t', 'sgsz') + ,('TSGOFF', 'sg_offset_t', 'sgoff') ,('TVOID', 'void', '') ,('TDSPEC', 'void*', 'dp') ,('TFSPEC', 'FPtr', 'fp')] diff --git a/src/simix/simcalls_generated_args_getter_setter.h b/src/simix/simcalls_generated_args_getter_setter.h index bc7a3e29d3..81a38eed70 100644 --- a/src/simix/simcalls_generated_args_getter_setter.h +++ b/src/simix/simcalls_generated_args_getter_setter.h @@ -1154,6 +1154,12 @@ static inline smx_file_t simcall_file_unlink__get__fd(smx_simcall_t simcall){ static inline void simcall_file_unlink__set__fd(smx_simcall_t simcall, void* arg){ simcall->args[0].dp = arg; } +static inline smx_host_t simcall_file_unlink__get__host(smx_simcall_t simcall){ + return (smx_host_t) simcall->args[1].dp; +} +static inline void simcall_file_unlink__set__host(smx_simcall_t simcall, void* arg){ + simcall->args[1].dp = arg; +} static inline smx_file_t simcall_file_get_size__get__fd(smx_simcall_t simcall){ return (smx_file_t) simcall->args[0].dp; } @@ -1172,11 +1178,11 @@ static inline smx_file_t simcall_file_seek__get__fd(smx_simcall_t simcall){ static inline void simcall_file_seek__set__fd(smx_simcall_t simcall, void* arg){ simcall->args[0].dp = arg; } -static inline sg_size_t simcall_file_seek__get__offset(smx_simcall_t simcall){ - return simcall->args[1].sgsz; +static inline sg_offset_t simcall_file_seek__get__offset(smx_simcall_t simcall){ + return simcall->args[1].sgoff; } -static inline void simcall_file_seek__set__offset(smx_simcall_t simcall, sg_size_t arg){ - simcall->args[1].sgsz = arg; +static inline void simcall_file_seek__set__offset(smx_simcall_t simcall, sg_offset_t arg){ + simcall->args[1].sgoff = arg; } static inline int simcall_file_seek__get__origin(smx_simcall_t simcall){ return simcall->args[2].i; diff --git a/src/simix/simcalls_generated_body.c b/src/simix/simcalls_generated_body.c index 7f4189a1e3..1087205862 100644 --- a/src/simix/simcalls_generated_body.c +++ b/src/simix/simcalls_generated_body.c @@ -1696,12 +1696,13 @@ } return self->simcall.result.i; } - inline static int simcall_BODY_file_unlink(smx_file_t fd) { + inline static int simcall_BODY_file_unlink(smx_file_t fd, smx_host_t host) { smx_process_t self = SIMIX_process_self(); self->simcall.call = SIMCALL_FILE_UNLINK; memset(&self->simcall.result, 0, sizeof(self->simcall.result)); memset(self->simcall.args, 0, sizeof(self->simcall.args)); self->simcall.args[0].dp = (void*) fd; + self->simcall.args[1].dp = (void*) host; if (self != simix_global->maestro_process) { XBT_DEBUG("Yield process '%s' on simcall %s (%d)", self->name, SIMIX_simcall_name(self->simcall.call), (int)self->simcall.call); @@ -1741,13 +1742,13 @@ } return self->simcall.result.sgsz; } - inline static int simcall_BODY_file_seek(smx_file_t fd, sg_size_t offset, int origin) { + inline static int simcall_BODY_file_seek(smx_file_t fd, sg_offset_t offset, int origin) { smx_process_t self = SIMIX_process_self(); self->simcall.call = SIMCALL_FILE_SEEK; memset(&self->simcall.result, 0, sizeof(self->simcall.result)); memset(self->simcall.args, 0, sizeof(self->simcall.args)); self->simcall.args[0].dp = (void*) fd; - self->simcall.args[1].sgsz = (sg_size_t) offset; + self->simcall.args[1].sgoff = (sg_offset_t) offset; self->simcall.args[2].i = (int) origin; if (self != simix_global->maestro_process) { XBT_DEBUG("Yield process '%s' on simcall %s (%d)", self->name, diff --git a/src/simix/simcalls_generated_case.c b/src/simix/simcalls_generated_case.c index 9966f2e097..39338341f4 100644 --- a/src/simix/simcalls_generated_case.c +++ b/src/simix/simcalls_generated_case.c @@ -522,7 +522,7 @@ case SIMCALL_FILE_CLOSE: break; case SIMCALL_FILE_UNLINK: - simcall->result.i = SIMIX_pre_file_unlink(simcall , (smx_file_t) simcall->args[0].dp); + simcall->result.i = SIMIX_pre_file_unlink(simcall , (smx_file_t) simcall->args[0].dp, (smx_host_t) simcall->args[1].dp); SIMIX_simcall_answer(simcall); break; @@ -537,7 +537,7 @@ case SIMCALL_FILE_TELL: break; case SIMCALL_FILE_SEEK: - simcall->result.i = SIMIX_pre_file_seek(simcall , (smx_file_t) simcall->args[0].dp, simcall->args[1].sgsz, simcall->args[2].i); + simcall->result.i = SIMIX_pre_file_seek(simcall , (smx_file_t) simcall->args[0].dp, simcall->args[1].sgoff, simcall->args[2].i); SIMIX_simcall_answer(simcall); break; diff --git a/src/simix/smx_io.c b/src/simix/smx_io.c index cd48e0acf7..3200ad1352 100644 --- a/src/simix/smx_io.c +++ b/src/simix/smx_io.c @@ -187,14 +187,13 @@ smx_action_t SIMIX_file_close(smx_process_t process, smx_file_t fd, smx_host_t h //SIMIX FILE UNLINK -int SIMIX_pre_file_unlink(smx_simcall_t simcall, smx_file_t fd) +int SIMIX_pre_file_unlink(smx_simcall_t simcall, smx_file_t fd, smx_host_t host) { - return SIMIX_file_unlink(simcall->issuer, fd); + return SIMIX_file_unlink(simcall->issuer, fd, host); } -int SIMIX_file_unlink(smx_process_t process, smx_file_t fd) +int SIMIX_file_unlink(smx_process_t process, smx_file_t fd, smx_host_t host) { - smx_host_t host = process->smx_host; /* check if the host is active */ if (surf_resource_get_state(surf_workstation_resource_priv(host)) != SURF_RESOURCE_ON) { THROWF(host_error, 0, "Host %s failed, you cannot call this function", @@ -240,12 +239,12 @@ xbt_dynar_t SIMIX_file_get_info(smx_process_t process, smx_file_t fd) return surf_workstation_get_info(host, fd->surf_file); } -int SIMIX_pre_file_seek(smx_simcall_t simcall, smx_file_t fd, sg_size_t offset, int origin) +int SIMIX_pre_file_seek(smx_simcall_t simcall, smx_file_t fd, sg_offset_t offset, int origin) { return SIMIX_file_seek(simcall->issuer, fd, offset, origin); } -int SIMIX_file_seek(smx_process_t process, smx_file_t fd, sg_size_t offset, int origin) +int SIMIX_file_seek(smx_process_t process, smx_file_t fd, sg_offset_t offset, int origin) { smx_host_t host = process->smx_host; return surf_workstation_file_seek(host, fd->surf_file, offset, origin); diff --git a/src/simix/smx_io_private.h b/src/simix/smx_io_private.h index 8ddde551c6..9750c403a3 100644 --- a/src/simix/smx_io_private.h +++ b/src/simix/smx_io_private.h @@ -26,21 +26,21 @@ void SIMIX_pre_file_read(smx_simcall_t simcall, smx_file_t fd, sg_size_t size, s void SIMIX_pre_file_write(smx_simcall_t simcall,smx_file_t fd, sg_size_t size, smx_host_t host); void SIMIX_pre_file_open(smx_simcall_t simcall, const char* fullpath, smx_host_t host); void SIMIX_pre_file_close(smx_simcall_t simcall, smx_file_t fd, smx_host_t host); -int SIMIX_pre_file_unlink(smx_simcall_t simcall, smx_file_t fd); +int SIMIX_pre_file_unlink(smx_simcall_t simcall, smx_file_t fd, smx_host_t host); sg_size_t SIMIX_pre_file_get_size(smx_simcall_t simcall, smx_file_t fd); sg_size_t SIMIX_pre_file_tell(smx_simcall_t simcall, smx_file_t fd); xbt_dynar_t SIMIX_pre_file_get_info(smx_simcall_t simcall, smx_file_t fd); -int SIMIX_pre_file_seek(smx_simcall_t simcall, smx_file_t fd, sg_size_t offset, int origin); +int SIMIX_pre_file_seek(smx_simcall_t simcall, smx_file_t fd, sg_offset_t offset, int origin); int SIMIX_pre_file_move(smx_simcall_t simcall, smx_file_t fd, const char* fullpath); smx_action_t SIMIX_file_read(smx_process_t process, smx_file_t fd, sg_size_t size, smx_host_t host); smx_action_t SIMIX_file_write(smx_process_t process, smx_file_t fd, sg_size_t size, smx_host_t host); smx_action_t SIMIX_file_open(smx_process_t process, const char* fullpath, smx_host_t host); smx_action_t SIMIX_file_close(smx_process_t process, smx_file_t fd, smx_host_t host); -int SIMIX_file_unlink(smx_process_t process, smx_file_t fd); +int SIMIX_file_unlink(smx_process_t process, smx_file_t fd, smx_host_t host); sg_size_t SIMIX_file_get_size(smx_process_t process, smx_file_t fd); sg_size_t SIMIX_file_tell(smx_process_t process, smx_file_t fd); xbt_dynar_t SIMIX_file_get_info(smx_process_t process, smx_file_t fd); -int SIMIX_file_seek(smx_process_t process, smx_file_t fd, sg_size_t offset, int origin); +int SIMIX_file_seek(smx_process_t process, smx_file_t fd, sg_offset_t offset, int origin); int SIMIX_file_move(smx_process_t process, smx_file_t fd, const char* fullpath); sg_size_t SIMIX_pre_storage_get_free_size(smx_simcall_t simcall,smx_storage_t storage); diff --git a/src/simix/smx_smurf_private.h b/src/simix/smx_smurf_private.h index ee9131a899..b33c06c557 100644 --- a/src/simix/smx_smurf_private.h +++ b/src/simix/smx_smurf_private.h @@ -48,6 +48,7 @@ union u_smx_scalar { double d; size_t sz; sg_size_t sgsz; + sg_offset_t sgoff; void* dp; FPtr fp; const void* cp; diff --git a/src/simix/smx_user.c b/src/simix/smx_user.c index 700e2e3c4b..ef889679ff 100644 --- a/src/simix/smx_user.c +++ b/src/simix/smx_user.c @@ -1354,7 +1354,7 @@ smx_file_t simcall_file_open(const char* fullpath, smx_host_t host) * \ingroup simix_file_management * */ -int simcall_file_close(smx_file_t fd, smx_host_t host) +int simcall_file_close(smx_file_t fd, smx_host_t host) { return simcall_BODY_file_close(fd, host); } @@ -1363,9 +1363,9 @@ int simcall_file_close(smx_file_t fd, smx_host_t host) * \ingroup simix_file_management * */ -int simcall_file_unlink(smx_file_t fd) +int simcall_file_unlink(smx_file_t fd, smx_host_t host) { - return simcall_BODY_file_unlink(fd); + return simcall_BODY_file_unlink(fd, host); } /** @@ -1397,7 +1397,7 @@ xbt_dynar_t simcall_file_get_info(smx_file_t fd) * \ingroup simix_file_management * */ -int simcall_file_seek(smx_file_t fd, sg_size_t offset, int origin){ +int simcall_file_seek(smx_file_t fd, sg_offset_t offset, int origin){ return simcall_BODY_file_seek(fd, offset, origin); } diff --git a/src/surf/simgrid_dtd.c b/src/surf/simgrid_dtd.c index 886371a036..385fafbe65 100644 --- a/src/surf/simgrid_dtd.c +++ b/src/surf/simgrid_dtd.c @@ -4666,366 +4666,366 @@ const char surfxml_flexml_version[] = "1.9.6"; int surfxml_pcdata_ix; extern char *surfxml_bufferstack; #define surfxml_pcdata (surfxml_bufferstack + surfxml_pcdata_ix) -AT_surfxml_bypassASroute_dst AX_surfxml_bypassASroute_dst; -#define A_surfxml_bypassASroute_dst (surfxml_bufferstack + AX_surfxml_bypassASroute_dst) -short int surfxml_bypassASroute_dst_isset; -AT_surfxml_include_file AX_surfxml_include_file; -#define A_surfxml_include_file (surfxml_bufferstack + AX_surfxml_include_file) -short int surfxml_include_file_isset; -AT_surfxml_cluster_loopback___bw AX_surfxml_cluster_loopback___bw; -#define A_surfxml_cluster_loopback___bw (surfxml_bufferstack + AX_surfxml_cluster_loopback___bw) -short int surfxml_cluster_loopback___bw_isset; -AT_surfxml_AS_id AX_surfxml_AS_id; -#define A_surfxml_AS_id (surfxml_bufferstack + AX_surfxml_AS_id) -short int surfxml_AS_id_isset; -AT_surfxml_trace_file AX_surfxml_trace_file; -#define A_surfxml_trace_file (surfxml_bufferstack + AX_surfxml_trace_file) -short int surfxml_trace_file_isset; -AT_surfxml_cluster_core AX_surfxml_cluster_core; -#define A_surfxml_cluster_core (surfxml_bufferstack + AX_surfxml_cluster_core) -short int surfxml_cluster_core_isset; -AT_surfxml_ASroute_gw___src AX_surfxml_ASroute_gw___src; -#define A_surfxml_ASroute_gw___src (surfxml_bufferstack + AX_surfxml_ASroute_gw___src) -short int surfxml_ASroute_gw___src_isset; -AT_surfxml_cluster_power AX_surfxml_cluster_power; -#define A_surfxml_cluster_power (surfxml_bufferstack + AX_surfxml_cluster_power) -short int surfxml_cluster_power_isset; -AT_surfxml_route_symmetrical AX_surfxml_route_symmetrical; -#define A_surfxml_route_symmetrical AX_surfxml_route_symmetrical -short int surfxml_route_symmetrical_isset; -AT_surfxml_cluster_radical AX_surfxml_cluster_radical; -#define A_surfxml_cluster_radical (surfxml_bufferstack + AX_surfxml_cluster_radical) -short int surfxml_cluster_radical_isset; -AT_surfxml_random_seed AX_surfxml_random_seed; -#define A_surfxml_random_seed (surfxml_bufferstack + AX_surfxml_random_seed) -short int surfxml_random_seed_isset; +AT_surfxml_cluster_lat AX_surfxml_cluster_lat; +#define A_surfxml_cluster_lat (surfxml_bufferstack + AX_surfxml_cluster_lat) +short int surfxml_cluster_lat_isset; +AT_surfxml_cabinet_radical AX_surfxml_cabinet_radical; +#define A_surfxml_cabinet_radical (surfxml_bufferstack + AX_surfxml_cabinet_radical) +short int surfxml_cabinet_radical_isset; +AT_surfxml_bypassRoute_dst AX_surfxml_bypassRoute_dst; +#define A_surfxml_bypassRoute_dst (surfxml_bufferstack + AX_surfxml_bypassRoute_dst) +short int surfxml_bypassRoute_dst_isset; +AT_surfxml_cluster_loopback___lat AX_surfxml_cluster_loopback___lat; +#define A_surfxml_cluster_loopback___lat (surfxml_bufferstack + AX_surfxml_cluster_loopback___lat) +short int surfxml_cluster_loopback___lat_isset; AT_surfxml_trace___connect_kind AX_surfxml_trace___connect_kind; #define A_surfxml_trace___connect_kind AX_surfxml_trace___connect_kind short int surfxml_trace___connect_kind_isset; -AT_surfxml_cluster_bb___sharing___policy AX_surfxml_cluster_bb___sharing___policy; -#define A_surfxml_cluster_bb___sharing___policy AX_surfxml_cluster_bb___sharing___policy -short int surfxml_cluster_bb___sharing___policy_isset; +AT_surfxml_process_function AX_surfxml_process_function; +#define A_surfxml_process_function (surfxml_bufferstack + AX_surfxml_process_function) +short int surfxml_process_function_isset; +AT_surfxml_storage_attach AX_surfxml_storage_attach; +#define A_surfxml_storage_attach (surfxml_bufferstack + AX_surfxml_storage_attach) +short int surfxml_storage_attach_isset; AT_surfxml_host_state AX_surfxml_host_state; #define A_surfxml_host_state AX_surfxml_host_state short int surfxml_host_state_isset; -AT_surfxml_storage_typeId AX_surfxml_storage_typeId; -#define A_surfxml_storage_typeId (surfxml_bufferstack + AX_surfxml_storage_typeId) -short int surfxml_storage_typeId_isset; -AT_surfxml_cluster_bb___bw AX_surfxml_cluster_bb___bw; -#define A_surfxml_cluster_bb___bw (surfxml_bufferstack + AX_surfxml_cluster_bb___bw) -short int surfxml_cluster_bb___bw_isset; -AT_surfxml_random_max AX_surfxml_random_max; -#define A_surfxml_random_max (surfxml_bufferstack + AX_surfxml_random_max) -short int surfxml_random_max_isset; -AT_surfxml_cluster_lat AX_surfxml_cluster_lat; -#define A_surfxml_cluster_lat (surfxml_bufferstack + AX_surfxml_cluster_lat) -short int surfxml_cluster_lat_isset; -AT_surfxml_host___link_up AX_surfxml_host___link_up; -#define A_surfxml_host___link_up (surfxml_bufferstack + AX_surfxml_host___link_up) -short int surfxml_host___link_up_isset; -AT_surfxml_link_latency___file AX_surfxml_link_latency___file; -#define A_surfxml_link_latency___file (surfxml_bufferstack + AX_surfxml_link_latency___file) -short int surfxml_link_latency___file_isset; -AT_surfxml_router_id AX_surfxml_router_id; -#define A_surfxml_router_id (surfxml_bufferstack + AX_surfxml_router_id) -short int surfxml_router_id_isset; -AT_surfxml_cabinet_suffix AX_surfxml_cabinet_suffix; -#define A_surfxml_cabinet_suffix (surfxml_bufferstack + AX_surfxml_cabinet_suffix) -short int surfxml_cabinet_suffix_isset; -AT_surfxml_prop_id AX_surfxml_prop_id; -#define A_surfxml_prop_id (surfxml_bufferstack + AX_surfxml_prop_id) -short int surfxml_prop_id_isset; -AT_surfxml_host_power AX_surfxml_host_power; -#define A_surfxml_host_power (surfxml_bufferstack + AX_surfxml_host_power) -short int surfxml_host_power_isset; -AT_surfxml_cluster_suffix AX_surfxml_cluster_suffix; -#define A_surfxml_cluster_suffix (surfxml_bufferstack + AX_surfxml_cluster_suffix) -short int surfxml_cluster_suffix_isset; -AT_surfxml_peer_availability___file AX_surfxml_peer_availability___file; -#define A_surfxml_peer_availability___file (surfxml_bufferstack + AX_surfxml_peer_availability___file) -short int surfxml_peer_availability___file_isset; -AT_surfxml_storage_id AX_surfxml_storage_id; -#define A_surfxml_storage_id (surfxml_bufferstack + AX_surfxml_storage_id) -short int surfxml_storage_id_isset; -AT_surfxml_link___ctn_id AX_surfxml_link___ctn_id; -#define A_surfxml_link___ctn_id (surfxml_bufferstack + AX_surfxml_link___ctn_id) -short int surfxml_link___ctn_id_isset; -AT_surfxml_random_radical AX_surfxml_random_radical; -#define A_surfxml_random_radical (surfxml_bufferstack + AX_surfxml_random_radical) -short int surfxml_random_radical_isset; -AT_surfxml_storage___type_model AX_surfxml_storage___type_model; -#define A_surfxml_storage___type_model (surfxml_bufferstack + AX_surfxml_storage___type_model) -short int surfxml_storage___type_model_isset; -AT_surfxml_route_src AX_surfxml_route_src; -#define A_surfxml_route_src (surfxml_bufferstack + AX_surfxml_route_src) -short int surfxml_route_src_isset; -AT_surfxml_host_availability AX_surfxml_host_availability; -#define A_surfxml_host_availability (surfxml_bufferstack + AX_surfxml_host_availability) -short int surfxml_host_availability_isset; -AT_surfxml_host___link_id AX_surfxml_host___link_id; -#define A_surfxml_host___link_id (surfxml_bufferstack + AX_surfxml_host___link_id) -short int surfxml_host___link_id_isset; -AT_surfxml_cluster_router___id AX_surfxml_cluster_router___id; -#define A_surfxml_cluster_router___id (surfxml_bufferstack + AX_surfxml_cluster_router___id) -short int surfxml_cluster_router___id_isset; -AT_surfxml_backbone_bandwidth AX_surfxml_backbone_bandwidth; -#define A_surfxml_backbone_bandwidth (surfxml_bufferstack + AX_surfxml_backbone_bandwidth) -short int surfxml_backbone_bandwidth_isset; -AT_surfxml_trace___connect_trace AX_surfxml_trace___connect_trace; -#define A_surfxml_trace___connect_trace (surfxml_bufferstack + AX_surfxml_trace___connect_trace) -short int surfxml_trace___connect_trace_isset; -AT_surfxml_peer_state___file AX_surfxml_peer_state___file; -#define A_surfxml_peer_state___file (surfxml_bufferstack + AX_surfxml_peer_state___file) -short int surfxml_peer_state___file_isset; AT_surfxml_argument_value AX_surfxml_argument_value; #define A_surfxml_argument_value (surfxml_bufferstack + AX_surfxml_argument_value) short int surfxml_argument_value_isset; -AT_surfxml_cluster_limiter___link AX_surfxml_cluster_limiter___link; -#define A_surfxml_cluster_limiter___link (surfxml_bufferstack + AX_surfxml_cluster_limiter___link) -short int surfxml_cluster_limiter___link_isset; -AT_surfxml_prop_value AX_surfxml_prop_value; -#define A_surfxml_prop_value (surfxml_bufferstack + AX_surfxml_prop_value) -short int surfxml_prop_value_isset; -AT_surfxml_link_bandwidth AX_surfxml_link_bandwidth; -#define A_surfxml_link_bandwidth (surfxml_bufferstack + AX_surfxml_link_bandwidth) -short int surfxml_link_bandwidth_isset; -AT_surfxml_bypassASroute_gw___dst AX_surfxml_bypassASroute_gw___dst; -#define A_surfxml_bypassASroute_gw___dst (surfxml_bufferstack + AX_surfxml_bypassASroute_gw___dst) -short int surfxml_bypassASroute_gw___dst_isset; -AT_surfxml_bypassRoute_src AX_surfxml_bypassRoute_src; -#define A_surfxml_bypassRoute_src (surfxml_bufferstack + AX_surfxml_bypassRoute_src) -short int surfxml_bypassRoute_src_isset; -AT_surfxml_link_state___file AX_surfxml_link_state___file; -#define A_surfxml_link_state___file (surfxml_bufferstack + AX_surfxml_link_state___file) -short int surfxml_link_state___file_isset; -AT_surfxml_cabinet_power AX_surfxml_cabinet_power; -#define A_surfxml_cabinet_power (surfxml_bufferstack + AX_surfxml_cabinet_power) -short int surfxml_cabinet_power_isset; -AT_surfxml_mstorage_name AX_surfxml_mstorage_name; -#define A_surfxml_mstorage_name (surfxml_bufferstack + AX_surfxml_mstorage_name) -short int surfxml_mstorage_name_isset; +AT_surfxml_cluster_router___id AX_surfxml_cluster_router___id; +#define A_surfxml_cluster_router___id (surfxml_bufferstack + AX_surfxml_cluster_router___id) +short int surfxml_cluster_router___id_isset; +AT_surfxml_cluster_power AX_surfxml_cluster_power; +#define A_surfxml_cluster_power (surfxml_bufferstack + AX_surfxml_cluster_power) +short int surfxml_cluster_power_isset; +AT_surfxml_trace_file AX_surfxml_trace_file; +#define A_surfxml_trace_file (surfxml_bufferstack + AX_surfxml_trace_file) +short int surfxml_trace_file_isset; +AT_surfxml_cluster_loopback___bw AX_surfxml_cluster_loopback___bw; +#define A_surfxml_cluster_loopback___bw (surfxml_bufferstack + AX_surfxml_cluster_loopback___bw) +short int surfxml_cluster_loopback___bw_isset; AT_surfxml_process_host AX_surfxml_process_host; #define A_surfxml_process_host (surfxml_bufferstack + AX_surfxml_process_host) short int surfxml_process_host_isset; +AT_surfxml_cabinet_bw AX_surfxml_cabinet_bw; +#define A_surfxml_cabinet_bw (surfxml_bufferstack + AX_surfxml_cabinet_bw) +short int surfxml_cabinet_bw_isset; +AT_surfxml_peer_coordinates AX_surfxml_peer_coordinates; +#define A_surfxml_peer_coordinates (surfxml_bufferstack + AX_surfxml_peer_coordinates) +short int surfxml_peer_coordinates_isset; +AT_surfxml_host_coordinates AX_surfxml_host_coordinates; +#define A_surfxml_host_coordinates (surfxml_bufferstack + AX_surfxml_host_coordinates) +short int surfxml_host_coordinates_isset; +AT_surfxml_cluster_bb___bw AX_surfxml_cluster_bb___bw; +#define A_surfxml_cluster_bb___bw (surfxml_bufferstack + AX_surfxml_cluster_bb___bw) +short int surfxml_cluster_bb___bw_isset; AT_surfxml_peer_power AX_surfxml_peer_power; #define A_surfxml_peer_power (surfxml_bufferstack + AX_surfxml_peer_power) short int surfxml_peer_power_isset; -AT_surfxml_ASroute_src AX_surfxml_ASroute_src; -#define A_surfxml_ASroute_src (surfxml_bufferstack + AX_surfxml_ASroute_src) -short int surfxml_ASroute_src_isset; -AT_surfxml_link_state AX_surfxml_link_state; -#define A_surfxml_link_state AX_surfxml_link_state -short int surfxml_link_state_isset; -AT_surfxml_cabinet_lat AX_surfxml_cabinet_lat; -#define A_surfxml_cabinet_lat (surfxml_bufferstack + AX_surfxml_cabinet_lat) -short int surfxml_cabinet_lat_isset; -AT_surfxml_ASroute_dst AX_surfxml_ASroute_dst; -#define A_surfxml_ASroute_dst (surfxml_bufferstack + AX_surfxml_ASroute_dst) -short int surfxml_ASroute_dst_isset; -AT_surfxml_cluster_loopback___lat AX_surfxml_cluster_loopback___lat; -#define A_surfxml_cluster_loopback___lat (surfxml_bufferstack + AX_surfxml_cluster_loopback___lat) -short int surfxml_cluster_loopback___lat_isset; -AT_surfxml_peer_id AX_surfxml_peer_id; -#define A_surfxml_peer_id (surfxml_bufferstack + AX_surfxml_peer_id) -short int surfxml_peer_id_isset; -AT_surfxml_host_core AX_surfxml_host_core; -#define A_surfxml_host_core (surfxml_bufferstack + AX_surfxml_host_core) -short int surfxml_host_core_isset; -AT_surfxml_ASroute_gw___dst AX_surfxml_ASroute_gw___dst; -#define A_surfxml_ASroute_gw___dst (surfxml_bufferstack + AX_surfxml_ASroute_gw___dst) -short int surfxml_ASroute_gw___dst_isset; -AT_surfxml_cluster_topo___parameters AX_surfxml_cluster_topo___parameters; -#define A_surfxml_cluster_topo___parameters (surfxml_bufferstack + AX_surfxml_cluster_topo___parameters) -short int surfxml_cluster_topo___parameters_isset; -AT_surfxml_storage_content AX_surfxml_storage_content; -#define A_surfxml_storage_content (surfxml_bufferstack + AX_surfxml_storage_content) -short int surfxml_storage_content_isset; -AT_surfxml_AS_routing AX_surfxml_AS_routing; -#define A_surfxml_AS_routing AX_surfxml_AS_routing -short int surfxml_AS_routing_isset; -AT_surfxml_storage___type_content AX_surfxml_storage___type_content; -#define A_surfxml_storage___type_content (surfxml_bufferstack + AX_surfxml_storage___type_content) -short int surfxml_storage___type_content_isset; -AT_surfxml_model___prop_id AX_surfxml_model___prop_id; -#define A_surfxml_model___prop_id (surfxml_bufferstack + AX_surfxml_model___prop_id) -short int surfxml_model___prop_id_isset; -AT_surfxml_cabinet_radical AX_surfxml_cabinet_radical; -#define A_surfxml_cabinet_radical (surfxml_bufferstack + AX_surfxml_cabinet_radical) -short int surfxml_cabinet_radical_isset; +AT_surfxml_host_availability AX_surfxml_host_availability; +#define A_surfxml_host_availability (surfxml_bufferstack + AX_surfxml_host_availability) +short int surfxml_host_availability_isset; +AT_surfxml_host_state___file AX_surfxml_host_state___file; +#define A_surfxml_host_state___file (surfxml_bufferstack + AX_surfxml_host_state___file) +short int surfxml_host_state___file_isset; AT_surfxml_cluster_availability___file AX_surfxml_cluster_availability___file; #define A_surfxml_cluster_availability___file (surfxml_bufferstack + AX_surfxml_cluster_availability___file) short int surfxml_cluster_availability___file_isset; -AT_surfxml_storage___type_size AX_surfxml_storage___type_size; -#define A_surfxml_storage___type_size (surfxml_bufferstack + AX_surfxml_storage___type_size) -short int surfxml_storage___type_size_isset; -AT_surfxml_peer_coordinates AX_surfxml_peer_coordinates; -#define A_surfxml_peer_coordinates (surfxml_bufferstack + AX_surfxml_peer_coordinates) -short int surfxml_peer_coordinates_isset; -AT_surfxml_cabinet_prefix AX_surfxml_cabinet_prefix; -#define A_surfxml_cabinet_prefix (surfxml_bufferstack + AX_surfxml_cabinet_prefix) -short int surfxml_cabinet_prefix_isset; -AT_surfxml_mstorage_typeId AX_surfxml_mstorage_typeId; -#define A_surfxml_mstorage_typeId (surfxml_bufferstack + AX_surfxml_mstorage_typeId) -short int surfxml_mstorage_typeId_isset; -AT_surfxml_trace_id AX_surfxml_trace_id; -#define A_surfxml_trace_id (surfxml_bufferstack + AX_surfxml_trace_id) -short int surfxml_trace_id_isset; +AT_surfxml_router_coordinates AX_surfxml_router_coordinates; +#define A_surfxml_router_coordinates (surfxml_bufferstack + AX_surfxml_router_coordinates) +short int surfxml_router_coordinates_isset; +AT_surfxml_random_min AX_surfxml_random_min; +#define A_surfxml_random_min (surfxml_bufferstack + AX_surfxml_random_min) +short int surfxml_random_min_isset; +AT_surfxml_ASroute_gw___dst AX_surfxml_ASroute_gw___dst; +#define A_surfxml_ASroute_gw___dst (surfxml_bufferstack + AX_surfxml_ASroute_gw___dst) +short int surfxml_ASroute_gw___dst_isset; +AT_surfxml_random_id AX_surfxml_random_id; +#define A_surfxml_random_id (surfxml_bufferstack + AX_surfxml_random_id) +short int surfxml_random_id_isset; AT_surfxml_route_dst AX_surfxml_route_dst; #define A_surfxml_route_dst (surfxml_bufferstack + AX_surfxml_route_dst) short int surfxml_route_dst_isset; -AT_surfxml_random_mean AX_surfxml_random_mean; -#define A_surfxml_random_mean (surfxml_bufferstack + AX_surfxml_random_mean) -short int surfxml_random_mean_isset; -AT_surfxml_storage_attach AX_surfxml_storage_attach; -#define A_surfxml_storage_attach (surfxml_bufferstack + AX_surfxml_storage_attach) -short int surfxml_storage_attach_isset; +AT_surfxml_mount_storageId AX_surfxml_mount_storageId; +#define A_surfxml_mount_storageId (surfxml_bufferstack + AX_surfxml_mount_storageId) +short int surfxml_mount_storageId_isset; +AT_surfxml_backbone_bandwidth AX_surfxml_backbone_bandwidth; +#define A_surfxml_backbone_bandwidth (surfxml_bufferstack + AX_surfxml_backbone_bandwidth) +short int surfxml_backbone_bandwidth_isset; +AT_surfxml_cluster_topology AX_surfxml_cluster_topology; +#define A_surfxml_cluster_topology AX_surfxml_cluster_topology +short int surfxml_cluster_topology_isset; +AT_surfxml_cluster_bb___sharing___policy AX_surfxml_cluster_bb___sharing___policy; +#define A_surfxml_cluster_bb___sharing___policy AX_surfxml_cluster_bb___sharing___policy +short int surfxml_cluster_bb___sharing___policy_isset; +AT_surfxml_peer_bw___out AX_surfxml_peer_bw___out; +#define A_surfxml_peer_bw___out (surfxml_bufferstack + AX_surfxml_peer_bw___out) +short int surfxml_peer_bw___out_isset; +AT_surfxml_cluster_id AX_surfxml_cluster_id; +#define A_surfxml_cluster_id (surfxml_bufferstack + AX_surfxml_cluster_id) +short int surfxml_cluster_id_isset; +AT_surfxml_host_power AX_surfxml_host_power; +#define A_surfxml_host_power (surfxml_bufferstack + AX_surfxml_host_power) +short int surfxml_host_power_isset; +AT_surfxml_link_bandwidth AX_surfxml_link_bandwidth; +#define A_surfxml_link_bandwidth (surfxml_bufferstack + AX_surfxml_link_bandwidth) +short int surfxml_link_bandwidth_isset; +AT_surfxml_cabinet_prefix AX_surfxml_cabinet_prefix; +#define A_surfxml_cabinet_prefix (surfxml_bufferstack + AX_surfxml_cabinet_prefix) +short int surfxml_cabinet_prefix_isset; +AT_surfxml_mstorage_name AX_surfxml_mstorage_name; +#define A_surfxml_mstorage_name (surfxml_bufferstack + AX_surfxml_mstorage_name) +short int surfxml_mstorage_name_isset; AT_surfxml_backbone_latency AX_surfxml_backbone_latency; #define A_surfxml_backbone_latency (surfxml_bufferstack + AX_surfxml_backbone_latency) short int surfxml_backbone_latency_isset; -AT_surfxml_cluster_prefix AX_surfxml_cluster_prefix; -#define A_surfxml_cluster_prefix (surfxml_bufferstack + AX_surfxml_cluster_prefix) -short int surfxml_cluster_prefix_isset; -AT_surfxml_link_sharing___policy AX_surfxml_link_sharing___policy; -#define A_surfxml_link_sharing___policy AX_surfxml_link_sharing___policy -short int surfxml_link_sharing___policy_isset; -AT_surfxml_host_coordinates AX_surfxml_host_coordinates; -#define A_surfxml_host_coordinates (surfxml_bufferstack + AX_surfxml_host_coordinates) -short int surfxml_host_coordinates_isset; -AT_surfxml_host_id AX_surfxml_host_id; -#define A_surfxml_host_id (surfxml_bufferstack + AX_surfxml_host_id) -short int surfxml_host_id_isset; -AT_surfxml_random_std___deviation AX_surfxml_random_std___deviation; -#define A_surfxml_random_std___deviation (surfxml_bufferstack + AX_surfxml_random_std___deviation) -short int surfxml_random_std___deviation_isset; -AT_surfxml_random_generator AX_surfxml_random_generator; -#define A_surfxml_random_generator AX_surfxml_random_generator -short int surfxml_random_generator_isset; AT_surfxml_storage___type_content___type AX_surfxml_storage___type_content___type; #define A_surfxml_storage___type_content___type (surfxml_bufferstack + AX_surfxml_storage___type_content___type) short int surfxml_storage___type_content___type_isset; +AT_surfxml_backbone_id AX_surfxml_backbone_id; +#define A_surfxml_backbone_id (surfxml_bufferstack + AX_surfxml_backbone_id) +short int surfxml_backbone_id_isset; +AT_surfxml_AS_routing AX_surfxml_AS_routing; +#define A_surfxml_AS_routing AX_surfxml_AS_routing +short int surfxml_AS_routing_isset; +AT_surfxml_prop_value AX_surfxml_prop_value; +#define A_surfxml_prop_value (surfxml_bufferstack + AX_surfxml_prop_value) +short int surfxml_prop_value_isset; +AT_surfxml_link_latency___file AX_surfxml_link_latency___file; +#define A_surfxml_link_latency___file (surfxml_bufferstack + AX_surfxml_link_latency___file) +short int surfxml_link_latency___file_isset; +AT_surfxml_link___ctn_direction AX_surfxml_link___ctn_direction; +#define A_surfxml_link___ctn_direction AX_surfxml_link___ctn_direction +short int surfxml_link___ctn_direction_isset; AT_surfxml_cluster_sharing___policy AX_surfxml_cluster_sharing___policy; #define A_surfxml_cluster_sharing___policy AX_surfxml_cluster_sharing___policy short int surfxml_cluster_sharing___policy_isset; -AT_surfxml_trace_periodicity AX_surfxml_trace_periodicity; -#define A_surfxml_trace_periodicity (surfxml_bufferstack + AX_surfxml_trace_periodicity) -short int surfxml_trace_periodicity_isset; +AT_surfxml_cabinet_power AX_surfxml_cabinet_power; +#define A_surfxml_cabinet_power (surfxml_bufferstack + AX_surfxml_cabinet_power) +short int surfxml_cabinet_power_isset; +AT_surfxml_host___link_up AX_surfxml_host___link_up; +#define A_surfxml_host___link_up (surfxml_bufferstack + AX_surfxml_host___link_up) +short int surfxml_host___link_up_isset; +AT_surfxml_route_symmetrical AX_surfxml_route_symmetrical; +#define A_surfxml_route_symmetrical AX_surfxml_route_symmetrical +short int surfxml_route_symmetrical_isset; +AT_surfxml_link_latency AX_surfxml_link_latency; +#define A_surfxml_link_latency (surfxml_bufferstack + AX_surfxml_link_latency) +short int surfxml_link_latency_isset; +AT_surfxml_storage_typeId AX_surfxml_storage_typeId; +#define A_surfxml_storage_typeId (surfxml_bufferstack + AX_surfxml_storage_typeId) +short int surfxml_storage_typeId_isset; +AT_surfxml_ASroute_symmetrical AX_surfxml_ASroute_symmetrical; +#define A_surfxml_ASroute_symmetrical AX_surfxml_ASroute_symmetrical +short int surfxml_ASroute_symmetrical_isset; AT_surfxml_cabinet_id AX_surfxml_cabinet_id; #define A_surfxml_cabinet_id (surfxml_bufferstack + AX_surfxml_cabinet_id) short int surfxml_cabinet_id_isset; -AT_surfxml_storage_content___type AX_surfxml_storage_content___type; -#define A_surfxml_storage_content___type (surfxml_bufferstack + AX_surfxml_storage_content___type) -short int surfxml_storage_content___type_isset; -AT_surfxml_peer_bw___in AX_surfxml_peer_bw___in; -#define A_surfxml_peer_bw___in (surfxml_bufferstack + AX_surfxml_peer_bw___in) -short int surfxml_peer_bw___in_isset; -AT_surfxml_random_id AX_surfxml_random_id; -#define A_surfxml_random_id (surfxml_bufferstack + AX_surfxml_random_id) -short int surfxml_random_id_isset; -AT_surfxml_bypassASroute_gw___src AX_surfxml_bypassASroute_gw___src; -#define A_surfxml_bypassASroute_gw___src (surfxml_bufferstack + AX_surfxml_bypassASroute_gw___src) -short int surfxml_bypassASroute_gw___src_isset; +AT_surfxml_mount_name AX_surfxml_mount_name; +#define A_surfxml_mount_name (surfxml_bufferstack + AX_surfxml_mount_name) +short int surfxml_mount_name_isset; +AT_surfxml_process_start___time AX_surfxml_process_start___time; +#define A_surfxml_process_start___time (surfxml_bufferstack + AX_surfxml_process_start___time) +short int surfxml_process_start___time_isset; +AT_surfxml_link_state___file AX_surfxml_link_state___file; +#define A_surfxml_link_state___file (surfxml_bufferstack + AX_surfxml_link_state___file) +short int surfxml_link_state___file_isset; +AT_surfxml_peer_availability___file AX_surfxml_peer_availability___file; +#define A_surfxml_peer_availability___file (surfxml_bufferstack + AX_surfxml_peer_availability___file) +short int surfxml_peer_availability___file_isset; +AT_surfxml_storage___type_content AX_surfxml_storage___type_content; +#define A_surfxml_storage___type_content (surfxml_bufferstack + AX_surfxml_storage___type_content) +short int surfxml_storage___type_content_isset; +AT_surfxml_trace___connect_trace AX_surfxml_trace___connect_trace; +#define A_surfxml_trace___connect_trace (surfxml_bufferstack + AX_surfxml_trace___connect_trace) +short int surfxml_trace___connect_trace_isset; +AT_surfxml_cluster_core AX_surfxml_cluster_core; +#define A_surfxml_cluster_core (surfxml_bufferstack + AX_surfxml_cluster_core) +short int surfxml_cluster_core_isset; +AT_surfxml_cluster_suffix AX_surfxml_cluster_suffix; +#define A_surfxml_cluster_suffix (surfxml_bufferstack + AX_surfxml_cluster_suffix) +short int surfxml_cluster_suffix_isset; +AT_surfxml_bypassASroute_src AX_surfxml_bypassASroute_src; +#define A_surfxml_bypassASroute_src (surfxml_bufferstack + AX_surfxml_bypassASroute_src) +short int surfxml_bypassASroute_src_isset; +AT_surfxml_host_id AX_surfxml_host_id; +#define A_surfxml_host_id (surfxml_bufferstack + AX_surfxml_host_id) +short int surfxml_host_id_isset; +AT_surfxml_storage_content AX_surfxml_storage_content; +#define A_surfxml_storage_content (surfxml_bufferstack + AX_surfxml_storage_content) +short int surfxml_storage_content_isset; +AT_surfxml_cluster_radical AX_surfxml_cluster_radical; +#define A_surfxml_cluster_radical (surfxml_bufferstack + AX_surfxml_cluster_radical) +short int surfxml_cluster_radical_isset; +AT_surfxml_process_on___failure AX_surfxml_process_on___failure; +#define A_surfxml_process_on___failure AX_surfxml_process_on___failure +short int surfxml_process_on___failure_isset; +AT_surfxml_link_id AX_surfxml_link_id; +#define A_surfxml_link_id (surfxml_bufferstack + AX_surfxml_link_id) +short int surfxml_link_id_isset; +AT_surfxml_bypassASroute_dst AX_surfxml_bypassASroute_dst; +#define A_surfxml_bypassASroute_dst (surfxml_bufferstack + AX_surfxml_bypassASroute_dst) +short int surfxml_bypassASroute_dst_isset; +AT_surfxml_model___prop_id AX_surfxml_model___prop_id; +#define A_surfxml_model___prop_id (surfxml_bufferstack + AX_surfxml_model___prop_id) +short int surfxml_model___prop_id_isset; +AT_surfxml_random_generator AX_surfxml_random_generator; +#define A_surfxml_random_generator AX_surfxml_random_generator +short int surfxml_random_generator_isset; +AT_surfxml_storage___type_size AX_surfxml_storage___type_size; +#define A_surfxml_storage___type_size (surfxml_bufferstack + AX_surfxml_storage___type_size) +short int surfxml_storage___type_size_isset; AT_surfxml_cluster_state___file AX_surfxml_cluster_state___file; #define A_surfxml_cluster_state___file (surfxml_bufferstack + AX_surfxml_cluster_state___file) short int surfxml_cluster_state___file_isset; -AT_surfxml_peer_bw___out AX_surfxml_peer_bw___out; -#define A_surfxml_peer_bw___out (surfxml_bufferstack + AX_surfxml_peer_bw___out) -short int surfxml_peer_bw___out_isset; -AT_surfxml_cluster_id AX_surfxml_cluster_id; -#define A_surfxml_cluster_id (surfxml_bufferstack + AX_surfxml_cluster_id) -short int surfxml_cluster_id_isset; +AT_surfxml_link___ctn_id AX_surfxml_link___ctn_id; +#define A_surfxml_link___ctn_id (surfxml_bufferstack + AX_surfxml_link___ctn_id) +short int surfxml_link___ctn_id_isset; +AT_surfxml_peer_bw___in AX_surfxml_peer_bw___in; +#define A_surfxml_peer_bw___in (surfxml_bufferstack + AX_surfxml_peer_bw___in) +short int surfxml_peer_bw___in_isset; +AT_surfxml_bypassRoute_src AX_surfxml_bypassRoute_src; +#define A_surfxml_bypassRoute_src (surfxml_bufferstack + AX_surfxml_bypassRoute_src) +short int surfxml_bypassRoute_src_isset; +AT_surfxml_ASroute_gw___src AX_surfxml_ASroute_gw___src; +#define A_surfxml_ASroute_gw___src (surfxml_bufferstack + AX_surfxml_ASroute_gw___src) +short int surfxml_ASroute_gw___src_isset; +AT_surfxml_link_sharing___policy AX_surfxml_link_sharing___policy; +#define A_surfxml_link_sharing___policy AX_surfxml_link_sharing___policy +short int surfxml_link_sharing___policy_isset; +AT_surfxml_host_pstate AX_surfxml_host_pstate; +#define A_surfxml_host_pstate (surfxml_bufferstack + AX_surfxml_host_pstate) +short int surfxml_host_pstate_isset; +AT_surfxml_route_src AX_surfxml_route_src; +#define A_surfxml_route_src (surfxml_bufferstack + AX_surfxml_route_src) +short int surfxml_route_src_isset; +AT_surfxml_cabinet_suffix AX_surfxml_cabinet_suffix; +#define A_surfxml_cabinet_suffix (surfxml_bufferstack + AX_surfxml_cabinet_suffix) +short int surfxml_cabinet_suffix_isset; +AT_surfxml_cluster_limiter___link AX_surfxml_cluster_limiter___link; +#define A_surfxml_cluster_limiter___link (surfxml_bufferstack + AX_surfxml_cluster_limiter___link) +short int surfxml_cluster_limiter___link_isset; +AT_surfxml_cluster_bb___lat AX_surfxml_cluster_bb___lat; +#define A_surfxml_cluster_bb___lat (surfxml_bufferstack + AX_surfxml_cluster_bb___lat) +short int surfxml_cluster_bb___lat_isset; +AT_surfxml_peer_state___file AX_surfxml_peer_state___file; +#define A_surfxml_peer_state___file (surfxml_bufferstack + AX_surfxml_peer_state___file) +short int surfxml_peer_state___file_isset; +AT_surfxml_host___link_id AX_surfxml_host___link_id; +#define A_surfxml_host___link_id (surfxml_bufferstack + AX_surfxml_host___link_id) +short int surfxml_host___link_id_isset; +AT_surfxml_random_radical AX_surfxml_random_radical; +#define A_surfxml_random_radical (surfxml_bufferstack + AX_surfxml_random_radical) +short int surfxml_random_radical_isset; +AT_surfxml_include_file AX_surfxml_include_file; +#define A_surfxml_include_file (surfxml_bufferstack + AX_surfxml_include_file) +short int surfxml_include_file_isset; AT_surfxml_link_bandwidth___file AX_surfxml_link_bandwidth___file; #define A_surfxml_link_bandwidth___file (surfxml_bufferstack + AX_surfxml_link_bandwidth___file) short int surfxml_link_bandwidth___file_isset; -AT_surfxml_ASroute_symmetrical AX_surfxml_ASroute_symmetrical; -#define A_surfxml_ASroute_symmetrical AX_surfxml_ASroute_symmetrical -short int surfxml_ASroute_symmetrical_isset; +AT_surfxml_prop_id AX_surfxml_prop_id; +#define A_surfxml_prop_id (surfxml_bufferstack + AX_surfxml_prop_id) +short int surfxml_prop_id_isset; +AT_surfxml_config_id AX_surfxml_config_id; +#define A_surfxml_config_id (surfxml_bufferstack + AX_surfxml_config_id) +short int surfxml_config_id_isset; +AT_surfxml_host_core AX_surfxml_host_core; +#define A_surfxml_host_core (surfxml_bufferstack + AX_surfxml_host_core) +short int surfxml_host_core_isset; AT_surfxml_storage___type_id AX_surfxml_storage___type_id; #define A_surfxml_storage___type_id (surfxml_bufferstack + AX_surfxml_storage___type_id) short int surfxml_storage___type_id_isset; -AT_surfxml_peer_lat AX_surfxml_peer_lat; -#define A_surfxml_peer_lat (surfxml_bufferstack + AX_surfxml_peer_lat) -short int surfxml_peer_lat_isset; -AT_surfxml_bypassASroute_src AX_surfxml_bypassASroute_src; -#define A_surfxml_bypassASroute_src (surfxml_bufferstack + AX_surfxml_bypassASroute_src) -short int surfxml_bypassASroute_src_isset; -AT_surfxml_mount_name AX_surfxml_mount_name; -#define A_surfxml_mount_name (surfxml_bufferstack + AX_surfxml_mount_name) -short int surfxml_mount_name_isset; -AT_surfxml_cluster_bw AX_surfxml_cluster_bw; -#define A_surfxml_cluster_bw (surfxml_bufferstack + AX_surfxml_cluster_bw) -short int surfxml_cluster_bw_isset; +AT_surfxml_random_max AX_surfxml_random_max; +#define A_surfxml_random_max (surfxml_bufferstack + AX_surfxml_random_max) +short int surfxml_random_max_isset; +AT_surfxml_storage_id AX_surfxml_storage_id; +#define A_surfxml_storage_id (surfxml_bufferstack + AX_surfxml_storage_id) +short int surfxml_storage_id_isset; +AT_surfxml_random_seed AX_surfxml_random_seed; +#define A_surfxml_random_seed (surfxml_bufferstack + AX_surfxml_random_seed) +short int surfxml_random_seed_isset; +AT_surfxml_trace_periodicity AX_surfxml_trace_periodicity; +#define A_surfxml_trace_periodicity (surfxml_bufferstack + AX_surfxml_trace_periodicity) +short int surfxml_trace_periodicity_isset; AT_surfxml_model___prop_value AX_surfxml_model___prop_value; #define A_surfxml_model___prop_value (surfxml_bufferstack + AX_surfxml_model___prop_value) short int surfxml_model___prop_value_isset; +AT_surfxml_random_std___deviation AX_surfxml_random_std___deviation; +#define A_surfxml_random_std___deviation (surfxml_bufferstack + AX_surfxml_random_std___deviation) +short int surfxml_random_std___deviation_isset; +AT_surfxml_peer_id AX_surfxml_peer_id; +#define A_surfxml_peer_id (surfxml_bufferstack + AX_surfxml_peer_id) +short int surfxml_peer_id_isset; +AT_surfxml_random_mean AX_surfxml_random_mean; +#define A_surfxml_random_mean (surfxml_bufferstack + AX_surfxml_random_mean) +short int surfxml_random_mean_isset; +AT_surfxml_cluster_topo___parameters AX_surfxml_cluster_topo___parameters; +#define A_surfxml_cluster_topo___parameters (surfxml_bufferstack + AX_surfxml_cluster_topo___parameters) +short int surfxml_cluster_topo___parameters_isset; +AT_surfxml_ASroute_dst AX_surfxml_ASroute_dst; +#define A_surfxml_ASroute_dst (surfxml_bufferstack + AX_surfxml_ASroute_dst) +short int surfxml_ASroute_dst_isset; +AT_surfxml_cluster_prefix AX_surfxml_cluster_prefix; +#define A_surfxml_cluster_prefix (surfxml_bufferstack + AX_surfxml_cluster_prefix) +short int surfxml_cluster_prefix_isset; +AT_surfxml_platform_version AX_surfxml_platform_version; +#define A_surfxml_platform_version (surfxml_bufferstack + AX_surfxml_platform_version) +short int surfxml_platform_version_isset; +AT_surfxml_link_state AX_surfxml_link_state; +#define A_surfxml_link_state AX_surfxml_link_state +short int surfxml_link_state_isset; +AT_surfxml_storage___type_model AX_surfxml_storage___type_model; +#define A_surfxml_storage___type_model (surfxml_bufferstack + AX_surfxml_storage___type_model) +short int surfxml_storage___type_model_isset; AT_surfxml_gpu_name AX_surfxml_gpu_name; #define A_surfxml_gpu_name (surfxml_bufferstack + AX_surfxml_gpu_name) short int surfxml_gpu_name_isset; +AT_surfxml_bypassASroute_gw___src AX_surfxml_bypassASroute_gw___src; +#define A_surfxml_bypassASroute_gw___src (surfxml_bufferstack + AX_surfxml_bypassASroute_gw___src) +short int surfxml_bypassASroute_gw___src_isset; +AT_surfxml_router_id AX_surfxml_router_id; +#define A_surfxml_router_id (surfxml_bufferstack + AX_surfxml_router_id) +short int surfxml_router_id_isset; +AT_surfxml_storage_content___type AX_surfxml_storage_content___type; +#define A_surfxml_storage_content___type (surfxml_bufferstack + AX_surfxml_storage_content___type) +short int surfxml_storage_content___type_isset; +AT_surfxml_trace_id AX_surfxml_trace_id; +#define A_surfxml_trace_id (surfxml_bufferstack + AX_surfxml_trace_id) +short int surfxml_trace_id_isset; +AT_surfxml_AS_id AX_surfxml_AS_id; +#define A_surfxml_AS_id (surfxml_bufferstack + AX_surfxml_AS_id) +short int surfxml_AS_id_isset; +AT_surfxml_mstorage_typeId AX_surfxml_mstorage_typeId; +#define A_surfxml_mstorage_typeId (surfxml_bufferstack + AX_surfxml_mstorage_typeId) +short int surfxml_mstorage_typeId_isset; AT_surfxml_trace___connect_element AX_surfxml_trace___connect_element; #define A_surfxml_trace___connect_element (surfxml_bufferstack + AX_surfxml_trace___connect_element) short int surfxml_trace___connect_element_isset; -AT_surfxml_host_state___file AX_surfxml_host_state___file; -#define A_surfxml_host_state___file (surfxml_bufferstack + AX_surfxml_host_state___file) -short int surfxml_host_state___file_isset; -AT_surfxml_backbone_id AX_surfxml_backbone_id; -#define A_surfxml_backbone_id (surfxml_bufferstack + AX_surfxml_backbone_id) -short int surfxml_backbone_id_isset; -AT_surfxml_host_pstate AX_surfxml_host_pstate; -#define A_surfxml_host_pstate (surfxml_bufferstack + AX_surfxml_host_pstate) -short int surfxml_host_pstate_isset; -AT_surfxml_config_id AX_surfxml_config_id; -#define A_surfxml_config_id (surfxml_bufferstack + AX_surfxml_config_id) -short int surfxml_config_id_isset; -AT_surfxml_process_function AX_surfxml_process_function; -#define A_surfxml_process_function (surfxml_bufferstack + AX_surfxml_process_function) -short int surfxml_process_function_isset; -AT_surfxml_link_id AX_surfxml_link_id; -#define A_surfxml_link_id (surfxml_bufferstack + AX_surfxml_link_id) -short int surfxml_link_id_isset; +AT_surfxml_cluster_bw AX_surfxml_cluster_bw; +#define A_surfxml_cluster_bw (surfxml_bufferstack + AX_surfxml_cluster_bw) +short int surfxml_cluster_bw_isset; +AT_surfxml_ASroute_src AX_surfxml_ASroute_src; +#define A_surfxml_ASroute_src (surfxml_bufferstack + AX_surfxml_ASroute_src) +short int surfxml_ASroute_src_isset; AT_surfxml_host___link_down AX_surfxml_host___link_down; #define A_surfxml_host___link_down (surfxml_bufferstack + AX_surfxml_host___link_down) short int surfxml_host___link_down_isset; -AT_surfxml_mount_storageId AX_surfxml_mount_storageId; -#define A_surfxml_mount_storageId (surfxml_bufferstack + AX_surfxml_mount_storageId) -short int surfxml_mount_storageId_isset; -AT_surfxml_bypassRoute_dst AX_surfxml_bypassRoute_dst; -#define A_surfxml_bypassRoute_dst (surfxml_bufferstack + AX_surfxml_bypassRoute_dst) -short int surfxml_bypassRoute_dst_isset; -AT_surfxml_router_coordinates AX_surfxml_router_coordinates; -#define A_surfxml_router_coordinates (surfxml_bufferstack + AX_surfxml_router_coordinates) -short int surfxml_router_coordinates_isset; -AT_surfxml_link_latency AX_surfxml_link_latency; -#define A_surfxml_link_latency (surfxml_bufferstack + AX_surfxml_link_latency) -short int surfxml_link_latency_isset; -AT_surfxml_host_availability___file AX_surfxml_host_availability___file; -#define A_surfxml_host_availability___file (surfxml_bufferstack + AX_surfxml_host_availability___file) -short int surfxml_host_availability___file_isset; -AT_surfxml_cabinet_bw AX_surfxml_cabinet_bw; -#define A_surfxml_cabinet_bw (surfxml_bufferstack + AX_surfxml_cabinet_bw) -short int surfxml_cabinet_bw_isset; AT_surfxml_process_kill___time AX_surfxml_process_kill___time; #define A_surfxml_process_kill___time (surfxml_bufferstack + AX_surfxml_process_kill___time) short int surfxml_process_kill___time_isset; -AT_surfxml_random_min AX_surfxml_random_min; -#define A_surfxml_random_min (surfxml_bufferstack + AX_surfxml_random_min) -short int surfxml_random_min_isset; -AT_surfxml_process_on___failure AX_surfxml_process_on___failure; -#define A_surfxml_process_on___failure AX_surfxml_process_on___failure -short int surfxml_process_on___failure_isset; -AT_surfxml_cluster_topology AX_surfxml_cluster_topology; -#define A_surfxml_cluster_topology AX_surfxml_cluster_topology -short int surfxml_cluster_topology_isset; -AT_surfxml_process_start___time AX_surfxml_process_start___time; -#define A_surfxml_process_start___time (surfxml_bufferstack + AX_surfxml_process_start___time) -short int surfxml_process_start___time_isset; -AT_surfxml_link___ctn_direction AX_surfxml_link___ctn_direction; -#define A_surfxml_link___ctn_direction AX_surfxml_link___ctn_direction -short int surfxml_link___ctn_direction_isset; -AT_surfxml_platform_version AX_surfxml_platform_version; -#define A_surfxml_platform_version (surfxml_bufferstack + AX_surfxml_platform_version) -short int surfxml_platform_version_isset; -AT_surfxml_cluster_bb___lat AX_surfxml_cluster_bb___lat; -#define A_surfxml_cluster_bb___lat (surfxml_bufferstack + AX_surfxml_cluster_bb___lat) -short int surfxml_cluster_bb___lat_isset; +AT_surfxml_bypassASroute_gw___dst AX_surfxml_bypassASroute_gw___dst; +#define A_surfxml_bypassASroute_gw___dst (surfxml_bufferstack + AX_surfxml_bypassASroute_gw___dst) +short int surfxml_bypassASroute_gw___dst_isset; +AT_surfxml_host_availability___file AX_surfxml_host_availability___file; +#define A_surfxml_host_availability___file (surfxml_bufferstack + AX_surfxml_host_availability___file) +short int surfxml_host_availability___file_isset; +AT_surfxml_peer_lat AX_surfxml_peer_lat; +#define A_surfxml_peer_lat (surfxml_bufferstack + AX_surfxml_peer_lat) +short int surfxml_peer_lat_isset; +AT_surfxml_cabinet_lat AX_surfxml_cabinet_lat; +#define A_surfxml_cabinet_lat (surfxml_bufferstack + AX_surfxml_cabinet_lat) +short int surfxml_cabinet_lat_isset; /* XML state. */ #ifdef FLEX_DEBUG @@ -5905,13 +5905,13 @@ case 26: YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",surf_parse_text[0]); YY_BREAK +case YY_STATE_EOF(S_surfxml_platform_3): case YY_STATE_EOF(E_surfxml_platform): -case YY_STATE_EOF(S_surfxml_platform_6): -case YY_STATE_EOF(S_surfxml_platform_1): -case YY_STATE_EOF(S_surfxml_platform): case YY_STATE_EOF(S_surfxml_platform_8): +case YY_STATE_EOF(S_surfxml_platform): +case YY_STATE_EOF(S_surfxml_platform_1): +case YY_STATE_EOF(S_surfxml_platform_6): case YY_STATE_EOF(S_surfxml_platform_4): -case YY_STATE_EOF(S_surfxml_platform_3): if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `' expected."); YY_BREAK @@ -5953,10 +5953,10 @@ YY_RULE_SETUP if (!AX_surfxml_include_file) FAIL("Required attribute `file' not set for `include' element."); LEAVE; STag_surfxml_include(); surfxml_pcdata_ix = 0; ETag_surfxml_include(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_include_2: case S_surfxml_include_1: case S_surfxml_include: SET(S_surfxml_include_2); break; - case S_surfxml_AS_5: case S_surfxml_AS_6: case S_surfxml_AS_1: SET(S_surfxml_AS_6); break; - case S_surfxml_AS_3: case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; - case S_surfxml_platform: case S_surfxml_platform_1: case S_surfxml_platform_5: case S_surfxml_platform_3: case S_surfxml_platform_6: SET(S_surfxml_platform_6); break; + case S_surfxml_include_1: case S_surfxml_include: case S_surfxml_include_2: SET(S_surfxml_include_2); break; + case S_surfxml_AS_5: case S_surfxml_AS_3: case S_surfxml_AS_6: case S_surfxml_AS_1: SET(S_surfxml_AS_6); break; + case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break; + case S_surfxml_AS_13: case S_surfxml_AS: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; } } YY_BREAK @@ -5980,10 +5980,10 @@ YY_RULE_SETUP ETag_surfxml_include(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_include_2: case S_surfxml_include_1: case S_surfxml_include: SET(S_surfxml_include_2); break; - case S_surfxml_AS_5: case S_surfxml_AS_6: case S_surfxml_AS_1: SET(S_surfxml_AS_6); break; - case S_surfxml_AS_3: case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; - case S_surfxml_platform: case S_surfxml_platform_1: case S_surfxml_platform_5: case S_surfxml_platform_3: case S_surfxml_platform_6: SET(S_surfxml_platform_6); break; + case S_surfxml_include_1: case S_surfxml_include: case S_surfxml_include_2: SET(S_surfxml_include_2); break; + case S_surfxml_AS_5: case S_surfxml_AS_3: case S_surfxml_AS_6: case S_surfxml_AS_1: SET(S_surfxml_AS_6); break; + case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break; + case S_surfxml_AS_13: case S_surfxml_AS: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; } } YY_BREAK @@ -5997,8 +5997,8 @@ YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",surf_parse_text[0]); YY_BREAK case YY_STATE_EOF(S_surfxml_include): -case YY_STATE_EOF(E_surfxml_include): case YY_STATE_EOF(S_surfxml_include_2): +case YY_STATE_EOF(E_surfxml_include): if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `' expected."); YY_BREAK @@ -6066,13 +6066,13 @@ YY_RULE_SETUP if (!AX_surfxml_trace_periodicity) FAIL("Required attribute `periodicity' not set for `trace' element."); LEAVE; STag_surfxml_trace(); surfxml_pcdata_ix = 0; ETag_surfxml_trace(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_12: case S_surfxml_AS_16: case S_surfxml_AS_15: SET(S_surfxml_AS_16); break; - case S_surfxml_AS_8: SET(S_surfxml_AS_9); break; - case S_surfxml_AS: case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS_6: case S_surfxml_AS_9: case S_surfxml_AS_7: case S_surfxml_AS_4: SET(S_surfxml_AS_11); break; case S_surfxml_include: case S_surfxml_include_2: case S_surfxml_include_1: SET(S_surfxml_include_2); break; - case S_surfxml_AS_5: case S_surfxml_AS_1: SET(S_surfxml_AS_6); break; - case S_surfxml_platform: case S_surfxml_platform_5: case S_surfxml_platform_6: case S_surfxml_platform_1: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break; - case S_surfxml_AS_3: case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_6: case S_surfxml_AS_8: case S_surfxml_AS_9: SET(S_surfxml_AS_9); break; + case S_surfxml_AS_5: SET(S_surfxml_AS_6); break; + case S_surfxml_AS_16: case S_surfxml_AS: case S_surfxml_AS_12: case S_surfxml_AS_15: SET(S_surfxml_AS_16); break; + case S_surfxml_platform_3: case S_surfxml_platform: case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform_6: SET(S_surfxml_platform_6); break; + case S_surfxml_AS_14: case S_surfxml_AS_13: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_7: case S_surfxml_AS_11: case S_surfxml_AS_1: case S_surfxml_AS_4: case S_surfxml_AS_10: case S_surfxml_AS_3: SET(S_surfxml_AS_11); break; } } YY_BREAK @@ -6098,13 +6098,13 @@ YY_RULE_SETUP surfxml_pcdata_ix = popbuffer(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_12: case S_surfxml_AS_16: case S_surfxml_AS_15: SET(S_surfxml_AS_16); break; - case S_surfxml_AS_8: SET(S_surfxml_AS_9); break; - case S_surfxml_AS: case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS_6: case S_surfxml_AS_9: case S_surfxml_AS_7: case S_surfxml_AS_4: SET(S_surfxml_AS_11); break; case S_surfxml_include: case S_surfxml_include_2: case S_surfxml_include_1: SET(S_surfxml_include_2); break; - case S_surfxml_AS_5: case S_surfxml_AS_1: SET(S_surfxml_AS_6); break; - case S_surfxml_platform: case S_surfxml_platform_5: case S_surfxml_platform_6: case S_surfxml_platform_1: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break; - case S_surfxml_AS_3: case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_6: case S_surfxml_AS_8: case S_surfxml_AS_9: SET(S_surfxml_AS_9); break; + case S_surfxml_AS_5: SET(S_surfxml_AS_6); break; + case S_surfxml_AS_16: case S_surfxml_AS: case S_surfxml_AS_12: case S_surfxml_AS_15: SET(S_surfxml_AS_16); break; + case S_surfxml_platform_3: case S_surfxml_platform: case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform_6: SET(S_surfxml_platform_6); break; + case S_surfxml_AS_14: case S_surfxml_AS_13: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_7: case S_surfxml_AS_11: case S_surfxml_AS_1: case S_surfxml_AS_4: case S_surfxml_AS_10: case S_surfxml_AS_3: SET(S_surfxml_AS_11); break; } } YY_BREAK @@ -6265,7 +6265,7 @@ YY_RULE_SETUP if (!AX_surfxml_random_std___deviation) FAIL("Required attribute `std_deviation' not set for `random' element."); LEAVE; STag_surfxml_random(); surfxml_pcdata_ix = 0; ETag_surfxml_random(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform: case S_surfxml_platform_3: case S_surfxml_platform_2: SET(S_surfxml_platform_3); break; + case S_surfxml_platform: case S_surfxml_platform_2: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break; } } YY_BREAK @@ -6289,7 +6289,7 @@ YY_RULE_SETUP ETag_surfxml_random(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform: case S_surfxml_platform_3: case S_surfxml_platform_2: SET(S_surfxml_platform_3); break; + case S_surfxml_platform: case S_surfxml_platform_2: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break; } } YY_BREAK @@ -6395,13 +6395,13 @@ YY_RULE_SETUP if (!AX_surfxml_trace___connect_element) FAIL("Required attribute `element' not set for `trace_connect' element."); LEAVE; STag_surfxml_trace___connect(); surfxml_pcdata_ix = 0; ETag_surfxml_trace___connect(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_3: case S_surfxml_AS_14: case S_surfxml_AS_13: SET(S_surfxml_AS_14); break; - case S_surfxml_platform_3: case S_surfxml_platform_1: case S_surfxml_platform_5: case S_surfxml_platform: case S_surfxml_platform_6: SET(S_surfxml_platform_6); break; - case S_surfxml_AS_15: case S_surfxml_AS_16: case S_surfxml_AS_12: SET(S_surfxml_AS_16); break; - case S_surfxml_AS_8: SET(S_surfxml_AS_9); break; - case S_surfxml_AS_1: case S_surfxml_AS_5: SET(S_surfxml_AS_6); break; - case S_surfxml_AS_9: case S_surfxml_AS_4: case S_surfxml_AS_7: case S_surfxml_AS: case S_surfxml_AS_6: case S_surfxml_AS_10: case S_surfxml_AS_11: SET(S_surfxml_AS_11); break; - case S_surfxml_include_2: case S_surfxml_include_1: case S_surfxml_include: SET(S_surfxml_include_2); break; + case S_surfxml_platform: case S_surfxml_platform_5: case S_surfxml_platform_3: case S_surfxml_platform_1: case S_surfxml_platform_6: SET(S_surfxml_platform_6); break; + case S_surfxml_AS_4: case S_surfxml_AS_7: case S_surfxml_AS_11: case S_surfxml_AS_1: case S_surfxml_AS_3: case S_surfxml_AS_10: SET(S_surfxml_AS_11); break; + case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; + case S_surfxml_include: case S_surfxml_include_2: case S_surfxml_include_1: SET(S_surfxml_include_2); break; + case S_surfxml_AS_5: SET(S_surfxml_AS_6); break; + case S_surfxml_AS_8: case S_surfxml_AS_6: case S_surfxml_AS_9: SET(S_surfxml_AS_9); break; + case S_surfxml_AS: case S_surfxml_AS_16: case S_surfxml_AS_15: case S_surfxml_AS_12: SET(S_surfxml_AS_16); break; } } YY_BREAK @@ -6425,13 +6425,13 @@ YY_RULE_SETUP ETag_surfxml_trace___connect(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_3: case S_surfxml_AS_14: case S_surfxml_AS_13: SET(S_surfxml_AS_14); break; - case S_surfxml_platform_3: case S_surfxml_platform_1: case S_surfxml_platform_5: case S_surfxml_platform: case S_surfxml_platform_6: SET(S_surfxml_platform_6); break; - case S_surfxml_AS_15: case S_surfxml_AS_16: case S_surfxml_AS_12: SET(S_surfxml_AS_16); break; - case S_surfxml_AS_8: SET(S_surfxml_AS_9); break; - case S_surfxml_AS_1: case S_surfxml_AS_5: SET(S_surfxml_AS_6); break; - case S_surfxml_AS_9: case S_surfxml_AS_4: case S_surfxml_AS_7: case S_surfxml_AS: case S_surfxml_AS_6: case S_surfxml_AS_10: case S_surfxml_AS_11: SET(S_surfxml_AS_11); break; - case S_surfxml_include_2: case S_surfxml_include_1: case S_surfxml_include: SET(S_surfxml_include_2); break; + case S_surfxml_platform: case S_surfxml_platform_5: case S_surfxml_platform_3: case S_surfxml_platform_1: case S_surfxml_platform_6: SET(S_surfxml_platform_6); break; + case S_surfxml_AS_4: case S_surfxml_AS_7: case S_surfxml_AS_11: case S_surfxml_AS_1: case S_surfxml_AS_3: case S_surfxml_AS_10: SET(S_surfxml_AS_11); break; + case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; + case S_surfxml_include: case S_surfxml_include_2: case S_surfxml_include_1: SET(S_surfxml_include_2); break; + case S_surfxml_AS_5: SET(S_surfxml_AS_6); break; + case S_surfxml_AS_8: case S_surfxml_AS_6: case S_surfxml_AS_9: SET(S_surfxml_AS_9); break; + case S_surfxml_AS: case S_surfxml_AS_16: case S_surfxml_AS_15: case S_surfxml_AS_12: SET(S_surfxml_AS_16); break; } } YY_BREAK @@ -6553,9 +6553,9 @@ YY_RULE_SETUP if (!AX_surfxml_AS_routing) FAIL("Required attribute `routing' not set for `AS' element."); LEAVE; STag_surfxml_AS(); surfxml_pcdata_ix = 0; ETag_surfxml_AS(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_3: case S_surfxml_AS: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; - case S_surfxml_include_2: case S_surfxml_include_1: case S_surfxml_include: SET(S_surfxml_include_2); break; - case S_surfxml_platform_3: case S_surfxml_platform_1: case S_surfxml_platform_5: case S_surfxml_platform: case S_surfxml_platform_6: SET(S_surfxml_platform_6); break; + case S_surfxml_platform_5: case S_surfxml_platform: case S_surfxml_platform_3: case S_surfxml_platform_6: case S_surfxml_platform_1: SET(S_surfxml_platform_6); break; + case S_surfxml_AS: case S_surfxml_AS_5: case S_surfxml_AS_6: case S_surfxml_AS_1: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break; + case S_surfxml_include_2: case S_surfxml_include: case S_surfxml_include_1: SET(S_surfxml_include_2); break; } } YY_BREAK @@ -6579,9 +6579,9 @@ YY_RULE_SETUP ETag_surfxml_AS(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_3: case S_surfxml_AS: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; - case S_surfxml_include_2: case S_surfxml_include_1: case S_surfxml_include: SET(S_surfxml_include_2); break; - case S_surfxml_platform_3: case S_surfxml_platform_1: case S_surfxml_platform_5: case S_surfxml_platform: case S_surfxml_platform_6: SET(S_surfxml_platform_6); break; + case S_surfxml_platform_5: case S_surfxml_platform: case S_surfxml_platform_3: case S_surfxml_platform_6: case S_surfxml_platform_1: SET(S_surfxml_platform_6); break; + case S_surfxml_AS: case S_surfxml_AS_5: case S_surfxml_AS_6: case S_surfxml_AS_1: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break; + case S_surfxml_include_2: case S_surfxml_include: case S_surfxml_include_1: SET(S_surfxml_include_2); break; } } YY_BREAK @@ -6594,18 +6594,18 @@ case 134: YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",surf_parse_text[0]); YY_BREAK -case YY_STATE_EOF(S_surfxml_AS_11): -case YY_STATE_EOF(S_surfxml_AS_12): -case YY_STATE_EOF(S_surfxml_AS_7): +case YY_STATE_EOF(S_surfxml_AS): case YY_STATE_EOF(S_surfxml_AS_4): -case YY_STATE_EOF(S_surfxml_AS_6): -case YY_STATE_EOF(S_surfxml_AS_14): +case YY_STATE_EOF(S_surfxml_AS_3): +case YY_STATE_EOF(S_surfxml_AS_9): +case YY_STATE_EOF(S_surfxml_AS_12): case YY_STATE_EOF(S_surfxml_AS_1): case YY_STATE_EOF(E_surfxml_AS): +case YY_STATE_EOF(S_surfxml_AS_6): +case YY_STATE_EOF(S_surfxml_AS_11): +case YY_STATE_EOF(S_surfxml_AS_7): +case YY_STATE_EOF(S_surfxml_AS_14): case YY_STATE_EOF(S_surfxml_AS_16): -case YY_STATE_EOF(S_surfxml_AS_3): -case YY_STATE_EOF(S_surfxml_AS): -case YY_STATE_EOF(S_surfxml_AS_9): if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `' expected."); YY_BREAK @@ -6699,8 +6699,8 @@ YY_RULE_SETUP if (!AX_surfxml_storage___type_size) FAIL("Required attribute `size' not set for `storage_type' element."); LEAVE; STag_surfxml_storage___type(); surfxml_pcdata_ix = 0; ETag_surfxml_storage___type(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; - case S_surfxml_AS_3: case S_surfxml_AS: case S_surfxml_AS_14: case S_surfxml_AS_13: SET(S_surfxml_AS_14); break; + case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_5: case S_surfxml_AS_1: case S_surfxml_AS_6: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break; } } YY_BREAK @@ -6724,8 +6724,8 @@ YY_RULE_SETUP ETag_surfxml_storage___type(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; - case S_surfxml_AS_3: case S_surfxml_AS: case S_surfxml_AS_14: case S_surfxml_AS_13: SET(S_surfxml_AS_14); break; + case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_5: case S_surfxml_AS_1: case S_surfxml_AS_6: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break; } } YY_BREAK @@ -6738,9 +6738,9 @@ case 153: YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",surf_parse_text[0]); YY_BREAK -case YY_STATE_EOF(S_surfxml_storage___type_2): -case YY_STATE_EOF(E_surfxml_storage___type): case YY_STATE_EOF(S_surfxml_storage___type): +case YY_STATE_EOF(E_surfxml_storage___type): +case YY_STATE_EOF(S_surfxml_storage___type_2): if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `' expected."); YY_BREAK @@ -6889,7 +6889,7 @@ YY_RULE_SETUP if (!AX_surfxml_mstorage_name) FAIL("Required attribute `name' not set for `mstorage' element."); LEAVE; STag_surfxml_mstorage(); surfxml_pcdata_ix = 0; ETag_surfxml_mstorage(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_host_1: case S_surfxml_host_2: case S_surfxml_host: SET(S_surfxml_host_2); break; + case S_surfxml_host: case S_surfxml_host_1: case S_surfxml_host_2: SET(S_surfxml_host_2); break; } } YY_BREAK @@ -6913,7 +6913,7 @@ YY_RULE_SETUP ETag_surfxml_mstorage(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_host_1: case S_surfxml_host_2: case S_surfxml_host: SET(S_surfxml_host_2); break; + case S_surfxml_host: case S_surfxml_host_1: case S_surfxml_host_2: SET(S_surfxml_host_2); break; } } YY_BREAK @@ -7070,7 +7070,7 @@ YY_RULE_SETUP if (!AX_surfxml_host_power) FAIL("Required attribute `power' not set for `host' element."); LEAVE; STag_surfxml_host(); surfxml_pcdata_ix = 0; ETag_surfxml_host(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_1: case S_surfxml_AS_13: case S_surfxml_AS_14: case S_surfxml_AS_3: case S_surfxml_AS: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_14: case S_surfxml_AS_13: case S_surfxml_AS_3: case S_surfxml_AS_1: case S_surfxml_AS: SET(S_surfxml_AS_14); break; } } YY_BREAK @@ -7094,7 +7094,7 @@ YY_RULE_SETUP ETag_surfxml_host(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_1: case S_surfxml_AS_13: case S_surfxml_AS_14: case S_surfxml_AS_3: case S_surfxml_AS: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_14: case S_surfxml_AS_13: case S_surfxml_AS_3: case S_surfxml_AS_1: case S_surfxml_AS: SET(S_surfxml_AS_14); break; } } YY_BREAK @@ -7107,9 +7107,9 @@ case 208: YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",surf_parse_text[0]); YY_BREAK +case YY_STATE_EOF(S_surfxml_host_2): case YY_STATE_EOF(S_surfxml_host): case YY_STATE_EOF(E_surfxml_host): -case YY_STATE_EOF(S_surfxml_host_2): if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `' expected."); YY_BREAK @@ -7203,8 +7203,8 @@ YY_RULE_SETUP if (!AX_surfxml_storage_attach) FAIL("Required attribute `attach' not set for `storage' element."); LEAVE; STag_surfxml_storage(); surfxml_pcdata_ix = 0; ETag_surfxml_storage(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS: case S_surfxml_AS_3: case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; - case S_surfxml_AS_5: case S_surfxml_AS_6: case S_surfxml_AS_1: SET(S_surfxml_AS_6); break; + case S_surfxml_AS_6: case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break; + case S_surfxml_AS: case S_surfxml_AS_14: case S_surfxml_AS_13: SET(S_surfxml_AS_14); break; } } YY_BREAK @@ -7228,8 +7228,8 @@ YY_RULE_SETUP ETag_surfxml_storage(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS: case S_surfxml_AS_3: case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; - case S_surfxml_AS_5: case S_surfxml_AS_6: case S_surfxml_AS_1: SET(S_surfxml_AS_6); break; + case S_surfxml_AS_6: case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break; + case S_surfxml_AS: case S_surfxml_AS_14: case S_surfxml_AS_13: SET(S_surfxml_AS_14); break; } } YY_BREAK @@ -7242,8 +7242,8 @@ case 227: YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",surf_parse_text[0]); YY_BREAK -case YY_STATE_EOF(E_surfxml_storage): case YY_STATE_EOF(S_surfxml_storage): +case YY_STATE_EOF(E_surfxml_storage): case YY_STATE_EOF(S_surfxml_storage_2): if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `' expected."); YY_BREAK @@ -7286,7 +7286,7 @@ YY_RULE_SETUP if (!AX_surfxml_gpu_name) FAIL("Required attribute `name' not set for `gpu' element."); LEAVE; STag_surfxml_gpu(); surfxml_pcdata_ix = 0; ETag_surfxml_gpu(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_13: case S_surfxml_AS_14: case S_surfxml_AS: case S_surfxml_AS_3: case S_surfxml_AS_1: SET(S_surfxml_AS_14); break; + case S_surfxml_AS: case S_surfxml_AS_1: case S_surfxml_AS_13: case S_surfxml_AS_3: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; } } YY_BREAK @@ -7310,7 +7310,7 @@ YY_RULE_SETUP ETag_surfxml_gpu(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_13: case S_surfxml_AS_14: case S_surfxml_AS: case S_surfxml_AS_3: case S_surfxml_AS_1: SET(S_surfxml_AS_14); break; + case S_surfxml_AS: case S_surfxml_AS_1: case S_surfxml_AS_13: case S_surfxml_AS_3: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; } } YY_BREAK @@ -7393,7 +7393,7 @@ YY_RULE_SETUP if (!AX_surfxml_host___link_down) FAIL("Required attribute `down' not set for `host_link' element."); LEAVE; STag_surfxml_host___link(); surfxml_pcdata_ix = 0; ETag_surfxml_host___link(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_3: case S_surfxml_AS: case S_surfxml_AS_14: case S_surfxml_AS_13: case S_surfxml_AS_1: SET(S_surfxml_AS_14); break; + case S_surfxml_AS: case S_surfxml_AS_1: case S_surfxml_AS_13: case S_surfxml_AS_3: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; } } YY_BREAK @@ -7417,7 +7417,7 @@ YY_RULE_SETUP ETag_surfxml_host___link(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_3: case S_surfxml_AS: case S_surfxml_AS_14: case S_surfxml_AS_13: case S_surfxml_AS_1: SET(S_surfxml_AS_14); break; + case S_surfxml_AS: case S_surfxml_AS_1: case S_surfxml_AS_13: case S_surfxml_AS_3: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; } } YY_BREAK @@ -7738,9 +7738,9 @@ YY_RULE_SETUP if (!AX_surfxml_cluster_lat) FAIL("Required attribute `lat' not set for `cluster' element."); LEAVE; STag_surfxml_cluster(); surfxml_pcdata_ix = 0; ETag_surfxml_cluster(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform: case S_surfxml_platform_3: case S_surfxml_platform_1: SET(S_surfxml_platform_6); break; - case S_surfxml_AS_6: case S_surfxml_AS_5: case S_surfxml_AS: case S_surfxml_AS_3: case S_surfxml_AS_1: SET(S_surfxml_AS_6); break; - case S_surfxml_include: case S_surfxml_include_1: case S_surfxml_include_2: SET(S_surfxml_include_2); break; + case S_surfxml_AS_3: case S_surfxml_AS_6: case S_surfxml_AS_1: case S_surfxml_AS: case S_surfxml_AS_5: SET(S_surfxml_AS_6); break; + case S_surfxml_include_1: case S_surfxml_include: case S_surfxml_include_2: SET(S_surfxml_include_2); break; + case S_surfxml_platform_1: case S_surfxml_platform_6: case S_surfxml_platform_3: case S_surfxml_platform_5: case S_surfxml_platform: SET(S_surfxml_platform_6); break; } } YY_BREAK @@ -7764,9 +7764,9 @@ YY_RULE_SETUP ETag_surfxml_cluster(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform: case S_surfxml_platform_3: case S_surfxml_platform_1: SET(S_surfxml_platform_6); break; - case S_surfxml_AS_6: case S_surfxml_AS_5: case S_surfxml_AS: case S_surfxml_AS_3: case S_surfxml_AS_1: SET(S_surfxml_AS_6); break; - case S_surfxml_include: case S_surfxml_include_1: case S_surfxml_include_2: SET(S_surfxml_include_2); break; + case S_surfxml_AS_3: case S_surfxml_AS_6: case S_surfxml_AS_1: case S_surfxml_AS: case S_surfxml_AS_5: SET(S_surfxml_AS_6); break; + case S_surfxml_include_1: case S_surfxml_include: case S_surfxml_include_2: SET(S_surfxml_include_2); break; + case S_surfxml_platform_1: case S_surfxml_platform_6: case S_surfxml_platform_3: case S_surfxml_platform_5: case S_surfxml_platform: SET(S_surfxml_platform_6); break; } } YY_BREAK @@ -7779,9 +7779,9 @@ case 312: YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",surf_parse_text[0]); YY_BREAK -case YY_STATE_EOF(S_surfxml_cluster): case YY_STATE_EOF(E_surfxml_cluster): case YY_STATE_EOF(S_surfxml_cluster_2): +case YY_STATE_EOF(S_surfxml_cluster): if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `' expected."); YY_BREAK @@ -7907,10 +7907,10 @@ YY_RULE_SETUP if (!AX_surfxml_cabinet_lat) FAIL("Required attribute `lat' not set for `cabinet' element."); LEAVE; STag_surfxml_cabinet(); surfxml_pcdata_ix = 0; ETag_surfxml_cabinet(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_14: case S_surfxml_AS_13: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_14); break; - case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform: case S_surfxml_platform_3: case S_surfxml_platform_1: SET(S_surfxml_platform_6); break; - case S_surfxml_include: case S_surfxml_include_1: case S_surfxml_include_2: SET(S_surfxml_include_2); break; - case S_surfxml_AS_6: case S_surfxml_AS_5: case S_surfxml_AS_1: SET(S_surfxml_AS_6); break; + case S_surfxml_AS_13: case S_surfxml_AS_14: case S_surfxml_AS: SET(S_surfxml_AS_14); break; + case S_surfxml_platform_6: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_5: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break; + case S_surfxml_AS_3: case S_surfxml_AS_5: case S_surfxml_AS_1: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; + case S_surfxml_include_1: case S_surfxml_include_2: case S_surfxml_include: SET(S_surfxml_include_2); break; } } YY_BREAK @@ -7934,10 +7934,10 @@ YY_RULE_SETUP ETag_surfxml_cabinet(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_14: case S_surfxml_AS_13: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_14); break; - case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform: case S_surfxml_platform_3: case S_surfxml_platform_1: SET(S_surfxml_platform_6); break; - case S_surfxml_include: case S_surfxml_include_1: case S_surfxml_include_2: SET(S_surfxml_include_2); break; - case S_surfxml_AS_6: case S_surfxml_AS_5: case S_surfxml_AS_1: SET(S_surfxml_AS_6); break; + case S_surfxml_AS_13: case S_surfxml_AS_14: case S_surfxml_AS: SET(S_surfxml_AS_14); break; + case S_surfxml_platform_6: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_5: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break; + case S_surfxml_AS_3: case S_surfxml_AS_5: case S_surfxml_AS_1: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; + case S_surfxml_include_1: case S_surfxml_include_2: case S_surfxml_include: SET(S_surfxml_include_2); break; } } YY_BREAK @@ -8084,9 +8084,9 @@ YY_RULE_SETUP if (!AX_surfxml_peer_lat) FAIL("Required attribute `lat' not set for `peer' element."); LEAVE; STag_surfxml_peer(); surfxml_pcdata_ix = 0; ETag_surfxml_peer(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_1: case S_surfxml_platform_3: case S_surfxml_platform_6: case S_surfxml_platform: case S_surfxml_platform_5: SET(S_surfxml_platform_6); break; - case S_surfxml_AS_1: case S_surfxml_AS_6: case S_surfxml_AS: case S_surfxml_AS_3: case S_surfxml_AS_5: SET(S_surfxml_AS_6); break; - case S_surfxml_include_1: case S_surfxml_include_2: case S_surfxml_include: SET(S_surfxml_include_2); break; + case S_surfxml_include_1: case S_surfxml_include: case S_surfxml_include_2: SET(S_surfxml_include_2); break; + case S_surfxml_AS_3: case S_surfxml_AS: case S_surfxml_AS_5: case S_surfxml_AS_1: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; + case S_surfxml_platform_1: case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break; } } YY_BREAK @@ -8110,9 +8110,9 @@ YY_RULE_SETUP ETag_surfxml_peer(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_1: case S_surfxml_platform_3: case S_surfxml_platform_6: case S_surfxml_platform: case S_surfxml_platform_5: SET(S_surfxml_platform_6); break; - case S_surfxml_AS_1: case S_surfxml_AS_6: case S_surfxml_AS: case S_surfxml_AS_3: case S_surfxml_AS_5: SET(S_surfxml_AS_6); break; - case S_surfxml_include_1: case S_surfxml_include_2: case S_surfxml_include: SET(S_surfxml_include_2); break; + case S_surfxml_include_1: case S_surfxml_include: case S_surfxml_include_2: SET(S_surfxml_include_2); break; + case S_surfxml_AS_3: case S_surfxml_AS: case S_surfxml_AS_5: case S_surfxml_AS_1: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; + case S_surfxml_platform_1: case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break; } } YY_BREAK @@ -8179,7 +8179,7 @@ YY_RULE_SETUP if (!AX_surfxml_router_id) FAIL("Required attribute `id' not set for `router' element."); LEAVE; STag_surfxml_router(); surfxml_pcdata_ix = 0; ETag_surfxml_router(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_1: case S_surfxml_AS_13: case S_surfxml_AS_14: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_14: case S_surfxml_AS_13: case S_surfxml_AS_3: case S_surfxml_AS_1: case S_surfxml_AS: SET(S_surfxml_AS_14); break; } } YY_BREAK @@ -8203,7 +8203,7 @@ YY_RULE_SETUP ETag_surfxml_router(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_1: case S_surfxml_AS_13: case S_surfxml_AS_14: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_14: case S_surfxml_AS_13: case S_surfxml_AS_3: case S_surfxml_AS_1: case S_surfxml_AS: SET(S_surfxml_AS_14); break; } } YY_BREAK @@ -8286,8 +8286,8 @@ YY_RULE_SETUP if (!AX_surfxml_backbone_latency) FAIL("Required attribute `latency' not set for `backbone' element."); LEAVE; STag_surfxml_backbone(); surfxml_pcdata_ix = 0; ETag_surfxml_backbone(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_14: case S_surfxml_AS_13: case S_surfxml_AS_3: case S_surfxml_AS: SET(S_surfxml_AS_14); break; - case S_surfxml_AS_6: case S_surfxml_AS_5: case S_surfxml_AS_1: SET(S_surfxml_AS_6); break; + case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_5: case S_surfxml_AS_6: case S_surfxml_AS_1: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break; } } YY_BREAK @@ -8311,8 +8311,8 @@ YY_RULE_SETUP ETag_surfxml_backbone(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_14: case S_surfxml_AS_13: case S_surfxml_AS_3: case S_surfxml_AS: SET(S_surfxml_AS_14); break; - case S_surfxml_AS_6: case S_surfxml_AS_5: case S_surfxml_AS_1: SET(S_surfxml_AS_6); break; + case S_surfxml_AS: case S_surfxml_AS_13: case S_surfxml_AS_14: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_5: case S_surfxml_AS_6: case S_surfxml_AS_1: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break; } } YY_BREAK @@ -8468,8 +8468,8 @@ YY_RULE_SETUP if (!AX_surfxml_link_bandwidth) FAIL("Required attribute `bandwidth' not set for `link' element."); LEAVE; STag_surfxml_link(); surfxml_pcdata_ix = 0; ETag_surfxml_link(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_14: case S_surfxml_AS_13: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_14); break; - case S_surfxml_AS_6: case S_surfxml_AS_5: case S_surfxml_AS_1: SET(S_surfxml_AS_6); break; + case S_surfxml_AS: case S_surfxml_AS_14: case S_surfxml_AS_13: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_1: case S_surfxml_AS_6: case S_surfxml_AS_5: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break; } } YY_BREAK @@ -8493,8 +8493,8 @@ YY_RULE_SETUP ETag_surfxml_link(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_14: case S_surfxml_AS_13: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_14); break; - case S_surfxml_AS_6: case S_surfxml_AS_5: case S_surfxml_AS_1: SET(S_surfxml_AS_6); break; + case S_surfxml_AS: case S_surfxml_AS_14: case S_surfxml_AS_13: SET(S_surfxml_AS_14); break; + case S_surfxml_AS_1: case S_surfxml_AS_6: case S_surfxml_AS_5: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break; } } YY_BREAK @@ -8507,8 +8507,8 @@ case 419: YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",surf_parse_text[0]); YY_BREAK -case YY_STATE_EOF(S_surfxml_link): case YY_STATE_EOF(S_surfxml_link_2): +case YY_STATE_EOF(S_surfxml_link): case YY_STATE_EOF(E_surfxml_link): if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `' expected."); YY_BREAK @@ -8581,7 +8581,7 @@ YY_RULE_SETUP if (!AX_surfxml_route_dst) FAIL("Required attribute `dst' not set for `route' element."); LEAVE; STag_surfxml_route(); surfxml_pcdata_ix = 0; ETag_surfxml_route(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_12: case S_surfxml_AS_14: case S_surfxml_AS_3: case S_surfxml_AS: case S_surfxml_AS_15: case S_surfxml_AS_16: case S_surfxml_AS_1: SET(S_surfxml_AS_16); break; + case S_surfxml_AS_12: case S_surfxml_AS_14: case S_surfxml_AS_3: case S_surfxml_AS_15: case S_surfxml_AS_1: case S_surfxml_AS_16: case S_surfxml_AS: SET(S_surfxml_AS_16); break; } } YY_BREAK @@ -8605,7 +8605,7 @@ YY_RULE_SETUP ETag_surfxml_route(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_12: case S_surfxml_AS_14: case S_surfxml_AS_3: case S_surfxml_AS: case S_surfxml_AS_15: case S_surfxml_AS_16: case S_surfxml_AS_1: SET(S_surfxml_AS_16); break; + case S_surfxml_AS_12: case S_surfxml_AS_14: case S_surfxml_AS_3: case S_surfxml_AS_15: case S_surfxml_AS_1: case S_surfxml_AS_16: case S_surfxml_AS: SET(S_surfxml_AS_16); break; } } YY_BREAK @@ -8618,8 +8618,8 @@ case 436: YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",surf_parse_text[0]); YY_BREAK -case YY_STATE_EOF(S_surfxml_route): case YY_STATE_EOF(S_surfxml_route_2): +case YY_STATE_EOF(S_surfxml_route): case YY_STATE_EOF(E_surfxml_route): if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `' expected."); YY_BREAK @@ -8720,7 +8720,7 @@ YY_RULE_SETUP if (!AX_surfxml_ASroute_gw___dst) FAIL("Required attribute `gw_dst' not set for `ASroute' element."); LEAVE; STag_surfxml_ASroute(); surfxml_pcdata_ix = 0; ETag_surfxml_ASroute(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_6: case S_surfxml_AS_8: case S_surfxml_AS: case S_surfxml_AS_3: case S_surfxml_AS_1: case S_surfxml_AS_4: case S_surfxml_AS_9: SET(S_surfxml_AS_9); break; + case S_surfxml_AS_3: case S_surfxml_AS_9: case S_surfxml_AS_1: case S_surfxml_AS_6: case S_surfxml_AS_4: case S_surfxml_AS_8: case S_surfxml_AS: SET(S_surfxml_AS_9); break; } } YY_BREAK @@ -8744,7 +8744,7 @@ YY_RULE_SETUP ETag_surfxml_ASroute(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_6: case S_surfxml_AS_8: case S_surfxml_AS: case S_surfxml_AS_3: case S_surfxml_AS_1: case S_surfxml_AS_4: case S_surfxml_AS_9: SET(S_surfxml_AS_9); break; + case S_surfxml_AS_3: case S_surfxml_AS_9: case S_surfxml_AS_1: case S_surfxml_AS_6: case S_surfxml_AS_4: case S_surfxml_AS_8: case S_surfxml_AS: SET(S_surfxml_AS_9); break; } } YY_BREAK @@ -8758,8 +8758,8 @@ YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",surf_parse_text[0]); YY_BREAK case YY_STATE_EOF(S_surfxml_ASroute_2): -case YY_STATE_EOF(E_surfxml_ASroute): case YY_STATE_EOF(S_surfxml_ASroute): +case YY_STATE_EOF(E_surfxml_ASroute): if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `' expected."); YY_BREAK @@ -8824,10 +8824,10 @@ YY_RULE_SETUP if (!AX_surfxml_link___ctn_id) FAIL("Required attribute `id' not set for `link_ctn' element."); LEAVE; STag_surfxml_link___ctn(); surfxml_pcdata_ix = 0; ETag_surfxml_link___ctn(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_bypassRoute_1: case S_surfxml_bypassRoute: case S_surfxml_bypassRoute_2: SET(S_surfxml_bypassRoute_2); break; - case S_surfxml_ASroute_1: case S_surfxml_ASroute: case S_surfxml_ASroute_2: SET(S_surfxml_ASroute_2); break; + case S_surfxml_ASroute_2: case S_surfxml_ASroute_1: case S_surfxml_ASroute: SET(S_surfxml_ASroute_2); break; case S_surfxml_bypassASroute: case S_surfxml_bypassASroute_2: case S_surfxml_bypassASroute_1: SET(S_surfxml_bypassASroute_2); break; - case S_surfxml_route_1: case S_surfxml_route: case S_surfxml_route_2: SET(S_surfxml_route_2); break; + case S_surfxml_route_2: case S_surfxml_route_1: case S_surfxml_route: SET(S_surfxml_route_2); break; + case S_surfxml_bypassRoute_1: case S_surfxml_bypassRoute: case S_surfxml_bypassRoute_2: SET(S_surfxml_bypassRoute_2); break; } } YY_BREAK @@ -8851,10 +8851,10 @@ YY_RULE_SETUP ETag_surfxml_link___ctn(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_bypassRoute_1: case S_surfxml_bypassRoute: case S_surfxml_bypassRoute_2: SET(S_surfxml_bypassRoute_2); break; - case S_surfxml_ASroute_1: case S_surfxml_ASroute: case S_surfxml_ASroute_2: SET(S_surfxml_ASroute_2); break; + case S_surfxml_ASroute_2: case S_surfxml_ASroute_1: case S_surfxml_ASroute: SET(S_surfxml_ASroute_2); break; case S_surfxml_bypassASroute: case S_surfxml_bypassASroute_2: case S_surfxml_bypassASroute_1: SET(S_surfxml_bypassASroute_2); break; - case S_surfxml_route_1: case S_surfxml_route: case S_surfxml_route_2: SET(S_surfxml_route_2); break; + case S_surfxml_route_2: case S_surfxml_route_1: case S_surfxml_route: SET(S_surfxml_route_2); break; + case S_surfxml_bypassRoute_1: case S_surfxml_bypassRoute: case S_surfxml_bypassRoute_2: SET(S_surfxml_bypassRoute_2); break; } } YY_BREAK @@ -8923,7 +8923,7 @@ YY_RULE_SETUP if (!AX_surfxml_bypassRoute_dst) FAIL("Required attribute `dst' not set for `bypassRoute' element."); LEAVE; STag_surfxml_bypassRoute(); surfxml_pcdata_ix = 0; ETag_surfxml_bypassRoute(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_12: case S_surfxml_AS_14: case S_surfxml_AS_3: case S_surfxml_AS: case S_surfxml_AS_15: case S_surfxml_AS_1: case S_surfxml_AS_16: SET(S_surfxml_AS_16); break; + case S_surfxml_AS_14: case S_surfxml_AS_12: case S_surfxml_AS_15: case S_surfxml_AS_3: case S_surfxml_AS_16: case S_surfxml_AS_1: case S_surfxml_AS: SET(S_surfxml_AS_16); break; } } YY_BREAK @@ -8947,7 +8947,7 @@ YY_RULE_SETUP ETag_surfxml_bypassRoute(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_12: case S_surfxml_AS_14: case S_surfxml_AS_3: case S_surfxml_AS: case S_surfxml_AS_15: case S_surfxml_AS_1: case S_surfxml_AS_16: SET(S_surfxml_AS_16); break; + case S_surfxml_AS_14: case S_surfxml_AS_12: case S_surfxml_AS_15: case S_surfxml_AS_3: case S_surfxml_AS_16: case S_surfxml_AS_1: case S_surfxml_AS: SET(S_surfxml_AS_16); break; } } YY_BREAK @@ -8960,9 +8960,9 @@ case 487: YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",surf_parse_text[0]); YY_BREAK +case YY_STATE_EOF(E_surfxml_bypassRoute): case YY_STATE_EOF(S_surfxml_bypassRoute): case YY_STATE_EOF(S_surfxml_bypassRoute_2): -case YY_STATE_EOF(E_surfxml_bypassRoute): if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `' expected."); YY_BREAK @@ -9046,7 +9046,7 @@ YY_RULE_SETUP if (!AX_surfxml_bypassASroute_gw___dst) FAIL("Required attribute `gw_dst' not set for `bypassASroute' element."); LEAVE; STag_surfxml_bypassASroute(); surfxml_pcdata_ix = 0; ETag_surfxml_bypassASroute(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_3: case S_surfxml_AS: case S_surfxml_AS_6: case S_surfxml_AS_8: case S_surfxml_AS_9: case S_surfxml_AS_4: case S_surfxml_AS_1: SET(S_surfxml_AS_9); break; + case S_surfxml_AS_3: case S_surfxml_AS_9: case S_surfxml_AS_8: case S_surfxml_AS_4: case S_surfxml_AS: case S_surfxml_AS_1: case S_surfxml_AS_6: SET(S_surfxml_AS_9); break; } } YY_BREAK @@ -9070,7 +9070,7 @@ YY_RULE_SETUP ETag_surfxml_bypassASroute(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_AS_3: case S_surfxml_AS: case S_surfxml_AS_6: case S_surfxml_AS_8: case S_surfxml_AS_9: case S_surfxml_AS_4: case S_surfxml_AS_1: SET(S_surfxml_AS_9); break; + case S_surfxml_AS_3: case S_surfxml_AS_9: case S_surfxml_AS_8: case S_surfxml_AS_4: case S_surfxml_AS: case S_surfxml_AS_1: case S_surfxml_AS_6: SET(S_surfxml_AS_9); break; } } YY_BREAK @@ -9181,7 +9181,7 @@ YY_RULE_SETUP if (!AX_surfxml_process_function) FAIL("Required attribute `function' not set for `process' element."); LEAVE; STag_surfxml_process(); surfxml_pcdata_ix = 0; ETag_surfxml_process(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_7: case S_surfxml_platform_8: case S_surfxml_platform_1: case S_surfxml_platform_3: case S_surfxml_platform_4: case S_surfxml_platform: case S_surfxml_platform_6: SET(S_surfxml_platform_8); break; + case S_surfxml_platform_4: case S_surfxml_platform: case S_surfxml_platform_7: case S_surfxml_platform_8: case S_surfxml_platform_3: case S_surfxml_platform_6: case S_surfxml_platform_1: SET(S_surfxml_platform_8); break; } } YY_BREAK @@ -9205,7 +9205,7 @@ YY_RULE_SETUP ETag_surfxml_process(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_7: case S_surfxml_platform_8: case S_surfxml_platform_1: case S_surfxml_platform_3: case S_surfxml_platform_4: case S_surfxml_platform: case S_surfxml_platform_6: SET(S_surfxml_platform_8); break; + case S_surfxml_platform_4: case S_surfxml_platform: case S_surfxml_platform_7: case S_surfxml_platform_8: case S_surfxml_platform_3: case S_surfxml_platform_6: case S_surfxml_platform_1: SET(S_surfxml_platform_8); break; } } YY_BREAK @@ -9218,9 +9218,9 @@ case 525: YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",surf_parse_text[0]); YY_BREAK +case YY_STATE_EOF(S_surfxml_process): case YY_STATE_EOF(E_surfxml_process): case YY_STATE_EOF(S_surfxml_process_2): -case YY_STATE_EOF(S_surfxml_process): if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `' expected."); YY_BREAK @@ -9262,7 +9262,7 @@ YY_RULE_SETUP if (!AX_surfxml_argument_value) FAIL("Required attribute `value' not set for `argument' element."); LEAVE; STag_surfxml_argument(); surfxml_pcdata_ix = 0; ETag_surfxml_argument(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_process_2: case S_surfxml_process: case S_surfxml_process_1: SET(S_surfxml_process_2); break; + case S_surfxml_process_1: case S_surfxml_process_2: case S_surfxml_process: SET(S_surfxml_process_2); break; } } YY_BREAK @@ -9286,7 +9286,7 @@ YY_RULE_SETUP ETag_surfxml_argument(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_process_2: case S_surfxml_process: case S_surfxml_process_1: SET(S_surfxml_process_2); break; + case S_surfxml_process_1: case S_surfxml_process_2: case S_surfxml_process: SET(S_surfxml_process_2); break; } } YY_BREAK @@ -9339,7 +9339,7 @@ YY_RULE_SETUP { LEAVE; STag_surfxml_config(); surfxml_pcdata_ix = 0; ETag_surfxml_config(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_2: case S_surfxml_platform_3: case S_surfxml_platform: SET(S_surfxml_platform_3); break; + case S_surfxml_platform_3: case S_surfxml_platform_2: case S_surfxml_platform: SET(S_surfxml_platform_3); break; } } YY_BREAK @@ -9363,7 +9363,7 @@ YY_RULE_SETUP ETag_surfxml_config(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_2: case S_surfxml_platform_3: case S_surfxml_platform: SET(S_surfxml_platform_3); break; + case S_surfxml_platform_3: case S_surfxml_platform_2: case S_surfxml_platform: SET(S_surfxml_platform_3); break; } } YY_BREAK @@ -9436,14 +9436,14 @@ YY_RULE_SETUP if (!AX_surfxml_prop_value) FAIL("Required attribute `value' not set for `prop' element."); LEAVE; STag_surfxml_prop(); surfxml_pcdata_ix = 0; ETag_surfxml_prop(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_storage___type_1: case S_surfxml_storage___type_2: case S_surfxml_storage___type: SET(S_surfxml_storage___type_2); break; - case S_surfxml_storage_2: case S_surfxml_storage_1: case S_surfxml_storage: SET(S_surfxml_storage_2); break; - case S_surfxml_link_1: case S_surfxml_link_2: case S_surfxml_link: SET(S_surfxml_link_2); break; - case S_surfxml_host_1: case S_surfxml_host_2: case S_surfxml_host: SET(S_surfxml_host_2); break; - case S_surfxml_cluster: case S_surfxml_cluster_1: case S_surfxml_cluster_2: SET(S_surfxml_cluster_2); break; - case S_surfxml_AS_2: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break; case S_surfxml_process_2: case S_surfxml_process_1: case S_surfxml_process: SET(S_surfxml_process_2); break; - case S_surfxml_config: case S_surfxml_config_1: case S_surfxml_config_2: SET(S_surfxml_config_2); break; + case S_surfxml_storage___type: case S_surfxml_storage___type_2: case S_surfxml_storage___type_1: SET(S_surfxml_storage___type_2); break; + case S_surfxml_config_1: case S_surfxml_config_2: case S_surfxml_config: SET(S_surfxml_config_2); break; + case S_surfxml_link: case S_surfxml_link_2: case S_surfxml_link_1: SET(S_surfxml_link_2); break; + case S_surfxml_AS_3: case S_surfxml_AS_2: case S_surfxml_AS: SET(S_surfxml_AS_3); break; + case S_surfxml_host: case S_surfxml_host_1: case S_surfxml_host_2: SET(S_surfxml_host_2); break; + case S_surfxml_cluster_2: case S_surfxml_cluster: case S_surfxml_cluster_1: SET(S_surfxml_cluster_2); break; + case S_surfxml_storage: case S_surfxml_storage_1: case S_surfxml_storage_2: SET(S_surfxml_storage_2); break; } } YY_BREAK @@ -9467,14 +9467,14 @@ YY_RULE_SETUP ETag_surfxml_prop(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_storage___type_1: case S_surfxml_storage___type_2: case S_surfxml_storage___type: SET(S_surfxml_storage___type_2); break; - case S_surfxml_storage_2: case S_surfxml_storage_1: case S_surfxml_storage: SET(S_surfxml_storage_2); break; - case S_surfxml_link_1: case S_surfxml_link_2: case S_surfxml_link: SET(S_surfxml_link_2); break; - case S_surfxml_host_1: case S_surfxml_host_2: case S_surfxml_host: SET(S_surfxml_host_2); break; - case S_surfxml_cluster: case S_surfxml_cluster_1: case S_surfxml_cluster_2: SET(S_surfxml_cluster_2); break; - case S_surfxml_AS_2: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break; case S_surfxml_process_2: case S_surfxml_process_1: case S_surfxml_process: SET(S_surfxml_process_2); break; - case S_surfxml_config: case S_surfxml_config_1: case S_surfxml_config_2: SET(S_surfxml_config_2); break; + case S_surfxml_storage___type: case S_surfxml_storage___type_2: case S_surfxml_storage___type_1: SET(S_surfxml_storage___type_2); break; + case S_surfxml_config_1: case S_surfxml_config_2: case S_surfxml_config: SET(S_surfxml_config_2); break; + case S_surfxml_link: case S_surfxml_link_2: case S_surfxml_link_1: SET(S_surfxml_link_2); break; + case S_surfxml_AS_3: case S_surfxml_AS_2: case S_surfxml_AS: SET(S_surfxml_AS_3); break; + case S_surfxml_host: case S_surfxml_host_1: case S_surfxml_host_2: SET(S_surfxml_host_2); break; + case S_surfxml_cluster_2: case S_surfxml_cluster: case S_surfxml_cluster_1: SET(S_surfxml_cluster_2); break; + case S_surfxml_storage: case S_surfxml_storage_1: case S_surfxml_storage_2: SET(S_surfxml_storage_2); break; } } YY_BREAK @@ -9545,7 +9545,7 @@ YY_RULE_SETUP if (!AX_surfxml_model___prop_value) FAIL("Required attribute `value' not set for `model_prop' element."); LEAVE; STag_surfxml_model___prop(); surfxml_pcdata_ix = 0; ETag_surfxml_model___prop(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_storage___type: case S_surfxml_storage___type_2: case S_surfxml_storage___type_1: SET(S_surfxml_storage___type_2); break; + case S_surfxml_storage___type_2: case S_surfxml_storage___type_1: case S_surfxml_storage___type: SET(S_surfxml_storage___type_2); break; } } YY_BREAK @@ -9569,7 +9569,7 @@ YY_RULE_SETUP ETag_surfxml_model___prop(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_storage___type: case S_surfxml_storage___type_2: case S_surfxml_storage___type_1: SET(S_surfxml_storage___type_2); break; + case S_surfxml_storage___type_2: case S_surfxml_storage___type_1: case S_surfxml_storage___type: SET(S_surfxml_storage___type_2); break; } } YY_BREAK diff --git a/src/surf/storage_n11.cpp b/src/surf/storage_n11.cpp index 832cc03314..71a03fa294 100644 --- a/src/surf/storage_n11.cpp +++ b/src/surf/storage_n11.cpp @@ -482,9 +482,11 @@ StorageN11Action::StorageN11Action(ModelPtr model, double cost, bool failed, Sto case WRITE: lmm_expand(model->getMaxminSystem(), storage->p_constraintWrite, getVariable(), 1.0); - ActionPtr action = this; - xbt_dynar_push(storage->p_writeActions, &action); - ref(); + +//TODO there is something annoying with what's below. Have to sort it out... +// ActionPtr action = this; +// xbt_dynar_push(storage->p_writeActions, &action); +// ref(); break; } XBT_OUT(); diff --git a/src/surf/surf_c_bindings.cpp b/src/surf/surf_c_bindings.cpp index 61cc24ecb4..d5a0cb088e 100644 --- a/src/surf/surf_c_bindings.cpp +++ b/src/surf/surf_c_bindings.cpp @@ -392,7 +392,8 @@ size_t surf_workstation_file_tell(surf_resource_t workstation, surf_file_t fd){ return get_casted_workstation(workstation)->fileTell(fd); } -int surf_workstation_file_seek(surf_resource_t workstation, surf_file_t fd, sg_size_t offset, int origin){ +int surf_workstation_file_seek(surf_resource_t workstation, surf_file_t fd, + sg_offset_t offset, int origin){ return get_casted_workstation(workstation)->fileSeek(fd, offset, origin); } diff --git a/src/surf/surf_routing.cpp b/src/surf/surf_routing.cpp index f31b64083c..10584439b0 100644 --- a/src/surf/surf_routing.cpp +++ b/src/surf/surf_routing.cpp @@ -360,7 +360,7 @@ void routing_AS_begin(sg_platf_AS_cbarg_t AS) switch(AS->routing){ case A_surfxml_AS_routing_Cluster: model = &routing_models[SURF_MODEL_CLUSTER];break; case A_surfxml_AS_routing_Cluster___torus: model = &routing_models[SURF_MODEL_TORUS_CLUSTER];break; - case A_surfxml_AS_routing_Cluster___fat___tree: model = &routing_models[SURF_MODEL_FAT_TREE_CLUSTER]; break; + case A_surfxml_AS_routing_Cluster___fat___tree: model = &routing_models[SURF_MODEL_FAT_TREE_CLUSTER];break; case A_surfxml_AS_routing_Dijkstra: model = &routing_models[SURF_MODEL_DIJKSTRA];break; case A_surfxml_AS_routing_DijkstraCache: model = &routing_models[SURF_MODEL_DIJKSTRACACHE];break; case A_surfxml_AS_routing_Floyd: model = &routing_models[SURF_MODEL_FLOYD];break; @@ -987,7 +987,7 @@ static void routing_parse_cluster(sg_platf_cluster_cbarg_t cluster) //call the cluster function that adds the others links if (cluster->topology == SURF_CLUSTER_FAT_TREE) { - ((AsClusterFatTree*) current_routing)->addComputeNode(i); + ((AsClusterFatTree*) current_routing)->addProcessingNode(i); } else { ((AsClusterPtr)current_routing)->create_links_for_node(cluster, i, rankId, rankId* @@ -1006,7 +1006,7 @@ static void routing_parse_cluster(sg_platf_cluster_cbarg_t cluster) // For fat trees, the links must be created once all nodes have been added if(cluster->topology == SURF_CLUSTER_FAT_TREE) { - ((AsClusterFatTree*)current_routing)->create_links(cluster); + ((AsClusterFatTree*)current_routing)->create_links(); } // Add a router. It is magically used thanks to the way in which surf_routing_cluster is written, // and it's very useful to connect clusters together diff --git a/src/surf/surf_routing_cluster_fat_tree.cpp b/src/surf/surf_routing_cluster_fat_tree.cpp index 066cd0fdee..b32b6a6cbc 100644 --- a/src/surf/surf_routing_cluster_fat_tree.cpp +++ b/src/surf/surf_routing_cluster_fat_tree.cpp @@ -5,15 +5,18 @@ #include #include #include +#include - +XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_route_fat_tree, surf, "Routing for fat trees"); AS_t model_fat_tree_cluster_create(void) { return new AsClusterFatTree(); } -AsClusterFatTree::AsClusterFatTree() : levels(0) {} +AsClusterFatTree::AsClusterFatTree() : levels(0) { + XBT_DEBUG("Creating a new fat tree."); +} AsClusterFatTree::~AsClusterFatTree() { for (unsigned int i = 0 ; i < this->nodes.size() ; i++) { @@ -22,13 +25,18 @@ AsClusterFatTree::~AsClusterFatTree() { } bool AsClusterFatTree::isInSubTree(FatTreeNode *root, FatTreeNode *node) { + XBT_DEBUG("Is %d(%u,%u) in the sub tree of %d(%u,%u) ?", node->id, + node->level, node->position, root->id, root->level, root->position); + if (root->level <= node->level) { + return false; + } for (unsigned int i = 0 ; i < node->level ; i++) { if(root->label[i] != node->label[i]) { return false; } } - for (unsigned int i = root->level + 1 ; i < this->levels ; i++) { + for (unsigned int i = root->level ; i < this->levels ; i++) { if(root->label[i] != node->label[i]) { return false; } @@ -41,11 +49,40 @@ void AsClusterFatTree::getRouteAndLatency(RoutingEdgePtr src, sg_platf_route_cbarg_t into, double *latency) { FatTreeNode *source, *destination, *currentNode; - std::vector route; - source = this->nodes.find(src->getId())->second; - destination = this->nodes.find(dst->getId())->second; - + std::map::const_iterator tempIter; + +if (dst->getRcType() == SURF_NETWORK_ELEMENT_ROUTER || src->getRcType() == SURF_NETWORK_ELEMENT_ROUTER) return; + + /* Let's find the source and the destination in our internal structure */ + tempIter = this->computeNodes.find(src->getId()); + + // xbt_die -> assert + if (tempIter == this->computeNodes.end()) { + xbt_die("Could not find the source %s [%d] in the fat tree", src->getName(), + src->getId()); + } + source = tempIter->second; + tempIter = this->computeNodes.find(dst->getId()); + if (tempIter == this->computeNodes.end()) { + xbt_die("Could not find the destination %s [%d] in the fat tree", + dst->getName(), dst->getId()); + } + + + destination = tempIter->second; + + XBT_VERB("Get route and latency from '%s' [%d] to '%s' [%d] in a fat tree", + src->getName(), src->getId(), dst->getName(), dst->getId()); + + /* In case destination is the source, and there is a loopback, let's get + through it instead of going up to a switch*/ + if(source->id == destination->id && this->p_has_loopback) { + xbt_dynar_push_as(into->link_list, void*, source->loopback); + if(latency) { + *latency += source->loopback->getLatency(); + } + } currentNode = source; @@ -57,87 +94,154 @@ void AsClusterFatTree::getRouteAndLatency(RoutingEdgePtr src, for (unsigned int i = 0 ; i < currentNode->level ; i++) { d /= this->upperLevelNodesNumber[i]; } - k = this->upperLevelNodesNumber[currentNode->level] * - this->lowerLevelNodesNumber[currentNode->level]; - d = d % k; - route.push_back(currentNode->parents[d]->upLink); - if(latency) { - *latency += currentNode->parents[d]->upLink->getLatency(); - } - currentNode = currentNode->parents[d]->upNode; + k = this->upperLevelNodesNumber[currentNode->level]; + d = d % k; + xbt_dynar_push_as(into->link_list, void*,currentNode->parents[d]->upLink); + + if(latency) { + *latency += currentNode->parents[d]->upLink->getLatency(); + } + + if (this->p_has_limiter) { + xbt_dynar_push_as(into->link_list, void*,currentNode->limiterLink); + } + currentNode = currentNode->parents[d]->upNode; } - + + XBT_DEBUG("%d(%u,%u) is in the sub tree of %d(%u,%u).", destination->id, + destination->level, destination->position, currentNode->id, + currentNode->level, currentNode->position); + // Down part while(currentNode != destination) { for(unsigned int i = 0 ; i < currentNode->children.size() ; i++) { - if(i % this->lowerLevelNodesNumber[currentNode->level] == - destination->label[currentNode->level]) { - route.push_back(currentNode->children[i]->downLink); + if(i % this->lowerLevelNodesNumber[currentNode->level - 1] == + destination->label[currentNode->level - 1]) { + xbt_dynar_push_as(into->link_list, void*,currentNode->children[i]->downLink); if(latency) { *latency += currentNode->children[i]->downLink->getLatency(); } currentNode = currentNode->children[i]->downNode; + if (this->p_has_limiter) { + xbt_dynar_push_as(into->link_list, void*,currentNode->limiterLink); + } + XBT_DEBUG("%d(%u,%u) is accessible through %d(%u,%u)", destination->id, + destination->level, destination->position, currentNode->id, + currentNode->level, currentNode->position); } } } - - for (unsigned int i = 0 ; i < route.size() ; i++) { - xbt_dynar_push_as(into->link_list, void*, route[i]); - } - } /* This function makes the assumption that parse_specific_arguments() and * addNodes() have already been called */ -void AsClusterFatTree::create_links(sg_platf_cluster_cbarg_t cluster){ +void AsClusterFatTree::create_links(){ if(this->levels == 0) { return; } this->generateSwitches(); + + + if(XBT_LOG_ISENABLED(surf_route_fat_tree, xbt_log_priority_debug)) { + std::stringstream msgBuffer; + + msgBuffer << "We are creating a fat tree of " << this->levels << " levels " + << "with " << this->nodesByLevel[0] << " processing nodes"; + for (unsigned int i = 1 ; i <= this->levels ; i++) { + msgBuffer << ", " << this->nodesByLevel[i] << " switches at level " << i; + } + XBT_DEBUG("%s", msgBuffer.str().c_str()); + msgBuffer.str(""); + msgBuffer << "Nodes are : "; + + for (unsigned int i = 0 ; i < this->nodes.size() ; i++) { + msgBuffer << this->nodes[i]->id << "(" << this->nodes[i]->level << "," + << this->nodes[i]->position << ") "; + } + XBT_DEBUG("%s", msgBuffer.str().c_str()); + } + + this->generateLabels(); + unsigned int k = 0; // Nodes are totally ordered, by level and then by position, in this->nodes for (unsigned int i = 0 ; i < this->levels ; i++) { for (unsigned int j = 0 ; j < this->nodesByLevel[i] ; j++) { - if(i != this->levels - 1) { - for(unsigned int l = 0 ; l < this->nodesByLevel[i+1] ; l++) { - this->connectNodeToParents(cluster, this->nodes[k]); - } - } - k++; + this->connectNodeToParents(this->nodes[k]); + k++; } } + + if(XBT_LOG_ISENABLED(surf_route_fat_tree, xbt_log_priority_debug)) { + std::stringstream msgBuffer; + msgBuffer << "Links are : "; + for (unsigned int i = 0 ; i < this->links.size() ; i++) { + msgBuffer << "(" << this->links[i]->upNode->id << "," + << this->links[i]->downNode->id << ") "; + } + XBT_DEBUG("%s", msgBuffer.str().c_str()); + } + + } -int AsClusterFatTree::connectNodeToParents(sg_platf_cluster_cbarg_t cluster, - FatTreeNode *node) { - FatTreeNode* currentParentNode; +int AsClusterFatTree::connectNodeToParents(FatTreeNode *node) { + std::vector::iterator currentParentNode = this->nodes.begin(); int connectionsNumber = 0; const int level = node->level; - currentParentNode = this->nodes[this->getLevelPosition(level + 1)]; - for (unsigned int i = 0 ; i < this->nodesByLevel[level] ; i++ ) { - if(this->areRelated(currentParentNode, node)) { - for (unsigned int j = 0 ; j < this->lowerLevelPortsNumber[level + 1] ; j++) { - this->addLink(cluster, currentParentNode, node->label[level + 1] + - j * this->lowerLevelNodesNumber[level + 1], node, - currentParentNode->label[level + 1] + - j * this->upperLevelNodesNumber[level + 1]); + XBT_DEBUG("We are connecting node %d(%u,%u) to his parents.", + node->id, node->level, node->position); + currentParentNode += this->getLevelPosition(level + 1); + for (unsigned int i = 0 ; i < this->nodesByLevel[level + 1] ; i++ ) { + if(this->areRelated(*currentParentNode, node)) { + XBT_DEBUG("%d(%u,%u) and %d(%u,%u) are related," + " with %u links between them.", node->id, + node->level, node->position, (*currentParentNode)->id, + (*currentParentNode)->level, (*currentParentNode)->position, this->lowerLevelPortsNumber[level]); + for (unsigned int j = 0 ; j < this->lowerLevelPortsNumber[level] ; j++) { + this->addLink(*currentParentNode, node->label[level] + + j * this->lowerLevelNodesNumber[level], node, + (*currentParentNode)->label[level] + + j * this->upperLevelNodesNumber[level]); } connectionsNumber++; } + ++currentParentNode; } return connectionsNumber; } bool AsClusterFatTree::areRelated(FatTreeNode *parent, FatTreeNode *child) { + std::stringstream msgBuffer; + + if(XBT_LOG_ISENABLED(surf_route_fat_tree, xbt_log_priority_debug)) { + msgBuffer << "Are " << child->id << "(" << child->level << "," + << child->position << ") <"; + + for (unsigned int i = 0 ; i < this->levels ; i++) { + msgBuffer << child->label[i] << ","; + } + msgBuffer << ">"; + + msgBuffer << " and " << parent->id << "(" << parent->level + << "," << parent->position << ") <"; + for (unsigned int i = 0 ; i < this->levels ; i++) { + msgBuffer << parent->label[i] << ","; + } + msgBuffer << ">"; + msgBuffer << " related ? "; + XBT_DEBUG("%s", msgBuffer.str().c_str()); + + } if (parent->level != child->level + 1) { return false; } for (unsigned int i = 0 ; i < this->levels; i++) { - if (parent->label[i] != child->label[i] && i != parent->level) { + if (parent->label[i] != child->label[i] && i + 1 != parent->level) { return false; } } @@ -145,7 +249,8 @@ bool AsClusterFatTree::areRelated(FatTreeNode *parent, FatTreeNode *child) { } void AsClusterFatTree::generateSwitches() { - this->nodesByLevel.resize(this->levels, 0); + XBT_DEBUG("Generating switches."); + this->nodesByLevel.resize(this->levels + 1, 0); unsigned int nodesRequired = 0; // We take care of the number of nodes by level @@ -155,12 +260,13 @@ void AsClusterFatTree::generateSwitches() { } - if(this->nodesByLevel[0] > this->nodes.size()) { - surf_parse_error("There is not enough nodes to fit to the described topology." - " Please check your platform description (We need %d nodes, we only got %zu)", + if(this->nodesByLevel[0] != this->nodes.size()) { + surf_parse_error("The number of provided nodes does not fit with the wanted topology." + " Please check your platform description (We need %d nodes, we got %zu)", this->nodesByLevel[0], this->nodes.size()); return; } + for (unsigned int i = 0 ; i < this->levels ; i++) { int nodesInThisLevel = 1; @@ -179,59 +285,86 @@ void AsClusterFatTree::generateSwitches() { // If we have to many compute nodes, we ditch them - if (this->nodesByLevel[0] > this->nodes.size()) { - for (unsigned int i = this->nodesByLevel[0] ; i < this->nodes.size() ; i++) { - delete this->nodes[i]; - } - } + // We create the switches int k = 0; for (unsigned int i = 0 ; i < this->levels ; i++) { - for (unsigned int j = 0 ; j < this->nodesByLevel[i] ; j++) { + for (unsigned int j = 0 ; j < this->nodesByLevel[i + 1] ; j++) { FatTreeNode* newNode; - newNode = new FatTreeNode(--k, i + 1, j); + newNode = new FatTreeNode(this->cluster, --k, i + 1, j); + XBT_DEBUG("We create the switch %d(%d,%d)", newNode->id, newNode->level, + newNode->position); newNode->children.resize(this->lowerLevelNodesNumber[i] * this->lowerLevelPortsNumber[i]); if (i != this->levels - 1) { - newNode->parents.resize(this->upperLevelNodesNumber[i + 1]); + newNode->parents.resize(this->upperLevelNodesNumber[i + 1] * + this->lowerLevelPortsNumber[i + 1]); } - this->nodes.insert(std::make_pair(k,newNode)); + newNode->label.resize(this->levels); + this->nodes.push_back(newNode); } } } void AsClusterFatTree::generateLabels() { + XBT_DEBUG("Generating labels."); // TODO : check if nodesByLevel and nodes are filled - for (unsigned int i = 0 ; i < this->levels ; i++) { - std::vector maxLabel(this->nodesByLevel[i]); - std::vector currentLabel(this->nodesByLevel[i], 0); - unsigned int k = 0; - for (unsigned int j = 0 ; j < this->nodesByLevel[i] ; j++) { - maxLabel[j] = j > i ? - this->lowerLevelNodesNumber[i] : this->upperLevelNodesNumber[i]; + std::vector maxLabel(this->levels); + std::vector currentLabel(this->levels); + unsigned int k = 0; + for (unsigned int i = 0 ; i <= this->levels ; i++) { + currentLabel.assign(this->levels, 0); + for (unsigned int j = 0 ; j < this->levels ; j++) { + maxLabel[j] = j + 1 > i ? + this->lowerLevelNodesNumber[j] : this->upperLevelNodesNumber[j]; } for (unsigned int j = 0 ; j < this->nodesByLevel[i] ; j++) { + + if(XBT_LOG_ISENABLED(surf_route_fat_tree, xbt_log_priority_debug )) { + std::stringstream msgBuffer; + + msgBuffer << "Assigning label <"; + for (unsigned int l = 0 ; l < this->levels ; l++) { + msgBuffer << currentLabel[l] << ","; + } + msgBuffer << "> to " << k << " (" << i << "," << j <<")"; + + XBT_DEBUG("%s", msgBuffer.str().c_str()); + } this->nodes[k]->label.assign(currentLabel.begin(), currentLabel.end()); - int remainder = 0; + bool remainder = true; + unsigned int pos = 0; do { - int pos = currentLabel.size() - 1; - remainder = ++currentLabel[pos] / maxLabel[pos]; - currentLabel[pos] = currentLabel[pos] % maxLabel[pos]; - --pos; + std::stringstream msgBuffer; + + ++currentLabel[pos]; + if (currentLabel[pos] >= maxLabel[pos]) { + currentLabel[pos] = 0; + remainder = true; + } + else { + remainder = false; + } + if (!remainder) { + pos = 0; + } + else { + ++pos; + } } - while(remainder != 0); - k++; + while(remainder && pos < this->levels); + k++; } } } int AsClusterFatTree::getLevelPosition(const unsigned int level) { - if (level > this->levels - 1) { + if (level > this->levels) { // Well, that should never happen. Maybe should we throw instead. return -1; } @@ -243,21 +376,25 @@ int AsClusterFatTree::getLevelPosition(const unsigned int level) { return tempPosition; } -void AsClusterFatTree::addComputeNode(int id) { +void AsClusterFatTree::addProcessingNode(int id) { using std::make_pair; static int position = 0; FatTreeNode* newNode; - newNode = new FatTreeNode(id, 0, position); - newNode->parents.resize(this->upperLevelNodesNumber[0] * this->lowerLevelPortsNumber[0]); - this->nodes.insert(make_pair(id,newNode)); + newNode = new FatTreeNode(this->cluster, id, 0, position++); + newNode->parents.resize(this->upperLevelNodesNumber[0] * + this->lowerLevelPortsNumber[0]); + newNode->label.resize(this->levels); + this->computeNodes.insert(make_pair(id,newNode)); + this->nodes.push_back(newNode); } -void AsClusterFatTree::addLink(sg_platf_cluster_cbarg_t cluster, - FatTreeNode *parent, unsigned int parentPort, +void AsClusterFatTree::addLink(FatTreeNode *parent, unsigned int parentPort, FatTreeNode *child, unsigned int childPort) { FatTreeLink *newLink; - newLink = new FatTreeLink(cluster, parent, child); - + newLink = new FatTreeLink(this->cluster, child, parent); + XBT_DEBUG("Creating a link between the parent (%d,%d,%u)" + " and the child (%d,%d,%u)", parent->level, parent->position, + parentPort, child->level, child->position, childPort); parent->children[parentPort] = newLink; child->parents[childPort] = newLink; @@ -314,6 +451,7 @@ void AsClusterFatTree::parse_specific_arguments(sg_platf_cluster_cbarg_t for(size_t i = 0 ; i < tmp.size() ; i++){ this->lowerLevelPortsNumber.push_back(std::atoi(tmp[i].c_str())); } + this->cluster = cluster; } @@ -325,49 +463,96 @@ void AsClusterFatTree::generateDotFile(const string& filename) const { file.open(filename.c_str(), ios::out | ios::trunc); if(file.is_open()) { - // That could also be greatly clarified with C++11 - std::vector::const_iterator iter; file << "graph AsClusterFatTree {\n"; - for (iter = this->links.begin() ; iter != this->links.end() ; iter++ ) { - file << (*iter)->downNode->id + for (unsigned int i = 0 ; i < this->nodes.size() ; i++) { + file << this->nodes[i]->id; + if(this->nodes[i]->id < 0) { + file << " [shape=circle];\n"; + } + else { + file << " [shape=hexagon];\n"; + } + } + + for (unsigned int i = 0 ; i < this->links.size() ; i++ ) { + file << this->links[i]->downNode->id << " -- " - << (*iter)->upNode->id + << this->links[i]->upNode->id << ";\n"; } file << "}"; file.close(); } else { - std::cerr << "Unable to open file " << filename << std::endl; + XBT_DEBUG("Unable to open file %s", filename.c_str()); return; } } -FatTreeNode::FatTreeNode(int id, int level, int position) : id(id), - level(level), - position(position){} +FatTreeNode::FatTreeNode(sg_platf_cluster_cbarg_t cluster, int id, int level, + int position) : id(id), level(level), + position(position) { + s_sg_platf_link_cbarg_t linkTemplate; + if(cluster->limiter_link) { + memset(&linkTemplate, 0, sizeof(linkTemplate)); + linkTemplate.bandwidth = cluster->limiter_link; + linkTemplate.latency = 0; + linkTemplate.state = SURF_RESOURCE_ON; + linkTemplate.policy = SURF_LINK_SHARED; + linkTemplate.id = bprintf("limiter_%d", id); + sg_platf_new_link(&linkTemplate); + this->limiterLink = (NetworkLink*) xbt_lib_get_or_null(link_lib, + linkTemplate.id, + SURF_LINK_LEVEL); + free((void*)linkTemplate.id); + } + if(cluster->loopback_bw || cluster->loopback_lat) { + memset(&linkTemplate, 0, sizeof(linkTemplate)); + linkTemplate.bandwidth = cluster->loopback_bw; + linkTemplate.latency = cluster->loopback_lat; + linkTemplate.state = SURF_RESOURCE_ON; + linkTemplate.policy = SURF_LINK_FATPIPE; + linkTemplate.id = bprintf("loopback_%d", id); + sg_platf_new_link(&linkTemplate); + this->loopback = (NetworkLink*) xbt_lib_get_or_null(link_lib, + linkTemplate.id, + SURF_LINK_LEVEL); + free((void*)linkTemplate.id); + } +} -FatTreeLink::FatTreeLink(sg_platf_cluster_cbarg_t cluster, FatTreeNode *downNode, +FatTreeLink::FatTreeLink(sg_platf_cluster_cbarg_t cluster, + FatTreeNode *downNode, FatTreeNode *upNode) : upNode(upNode), downNode(downNode) { static int uniqueId = 0; s_sg_platf_link_cbarg_t linkTemplate; + memset(&linkTemplate, 0, sizeof(linkTemplate)); linkTemplate.bandwidth = cluster->bw; linkTemplate.latency = cluster->lat; linkTemplate.state = SURF_RESOURCE_ON; - linkTemplate.policy = cluster->sharing_policy; // Maybe should we do sthg with that ? - - - NetworkLink* link; - linkTemplate.id = bprintf("link_from_%d_to_%d_%d_UP", downNode->id, upNode->id, uniqueId); - sg_platf_new_link(&linkTemplate); - link = (NetworkLink*) xbt_lib_get_or_null(link_lib, linkTemplate.id, SURF_LINK_LEVEL); - this->upLink = link; // check link? - linkTemplate.id = bprintf("link_from_%d_to_%d_%d_DOWN", downNode->id, upNode->id, uniqueId); + linkTemplate.policy = cluster->sharing_policy; // sthg to do with that ? + linkTemplate.id = bprintf("link_from_%d_to_%d_%d", downNode->id, upNode->id, + uniqueId); sg_platf_new_link(&linkTemplate); - link = (NetworkLink*) xbt_lib_get_or_null(link_lib, linkTemplate.id, SURF_LINK_LEVEL); - this->downLink = link; // check link ? - + NetworkLink* link; + std::string tmpID; + if (cluster->sharing_policy == SURF_LINK_FULLDUPLEX) { + tmpID = std::string(linkTemplate.id) + "_UP"; + link = (NetworkLink*) xbt_lib_get_or_null(link_lib, tmpID.c_str(), + SURF_LINK_LEVEL); + this->upLink = link; // check link? + tmpID = std::string(linkTemplate.id) + "_DOWN"; + link = (NetworkLink*) xbt_lib_get_or_null(link_lib, tmpID.c_str(), + SURF_LINK_LEVEL); + this->downLink = link; // check link ? + } + else { + link = (NetworkLink*) xbt_lib_get_or_null(link_lib, linkTemplate.id, + SURF_LINK_LEVEL); + this->upLink = link; + this->downLink = link; + } uniqueId++; - + free((void*)linkTemplate.id); } diff --git a/src/surf/surf_routing_cluster_fat_tree.hpp b/src/surf/surf_routing_cluster_fat_tree.hpp index 206abb4097..c4de13f1a7 100644 --- a/src/surf/surf_routing_cluster_fat_tree.hpp +++ b/src/surf/surf_routing_cluster_fat_tree.hpp @@ -23,28 +23,46 @@ class FatTreeNode; class FatTreeLink; - +/* \class FatTreeNode + * \brief A node in a fat tree + */ class FatTreeNode { public: + /* \brief Unique ID which identifies every node + */ int id; - unsigned int level; // The 0th level represents the leafs of the PGFT - unsigned int position; // Position in the level + /* \brief Level into the tree, with 0 being the leafs + */ + unsigned int level; + /* \brief Position into the level, starting from 0 + */ + unsigned int position; + /* In order to link nodes between them, each one must be assigned a label, + * consisting of l integers, l being the levels number of the tree. Each label + * is unique in the level, and the way it is generated allows the construction + * of a fat tree which fits the desired topology + */ std::vector label; - /* We can see the sizes sum of the two following vectors as the device - * ports number. If we use the notations used in Zahavi's paper, - * children.size() = m_level and parents.size() = w_(level+1) - * + + /* Links to the lower level, where the position in the vector corresponds to + * a port number. */ - std::vector children; // m, apply from lvl 0 to levels - 1 - std::vector parents; // w, apply from lvl 1 to levels - FatTreeNode(int id, int level=-1, int position=-1); + std::vector children; + /* Links to the upper level, where the position in the vector corresponds to + * a port number. + */ + std::vector parents; + + NetworkLink* limiterLink; + NetworkLink* loopback; + FatTreeNode(sg_platf_cluster_cbarg_t cluster, int id, int level, + int position); }; class FatTreeLink { public: FatTreeLink(sg_platf_cluster_cbarg_t cluster, FatTreeNode *source, FatTreeNode *destination); - // unsigned int ports; /* Links are dependant of the chosen network model, but must implement * NetworkLink */ @@ -52,7 +70,6 @@ public: NetworkLink *downLink; FatTreeNode *upNode; FatTreeNode *downNode; - }; class AsClusterFatTree : public AsCluster { @@ -65,29 +82,32 @@ public: // virtual void getRouteAndLatency(const int src, const int dst, // std::vector *route, // double *latency) const; - virtual void create_links(sg_platf_cluster_cbarg_t cluster); + virtual void create_links(); void parse_specific_arguments(sg_platf_cluster_cbarg_t cluster); - void addComputeNode(int id); + void addProcessingNode(int id); void generateDotFile(const string& filename = "fatTree.dot") const; -protected: +private: + //description of a PGFT (TODO : better doc) unsigned int levels; std::vector lowerLevelNodesNumber; // number of children by node std::vector upperLevelNodesNumber; // number of parents by node std::vector lowerLevelPortsNumber; // ports between each level l and l-1 - std::map nodes; + std::map computeNodes; + std::vector nodes; std::vector links; std::vector nodesByLevel; - void addLink(sg_platf_cluster_cbarg_t cluster, - FatTreeNode *parent, unsigned int parentPort, + sg_platf_cluster_cbarg_t cluster; + + void addLink(FatTreeNode *parent, unsigned int parentPort, FatTreeNode *child, unsigned int childPort); int getLevelPosition(const unsigned int level); void generateLabels(); void generateSwitches(); - int connectNodeToParents(sg_platf_cluster_cbarg_t cluster, FatTreeNode *node); + int connectNodeToParents(FatTreeNode *node); bool areRelated(FatTreeNode *parent, FatTreeNode *child); bool isInSubTree(FatTreeNode *root, FatTreeNode *node); }; diff --git a/src/surf/workstation_interface.cpp b/src/surf/workstation_interface.cpp index 00ecfdf261..ba424e99c3 100644 --- a/src/surf/workstation_interface.cpp +++ b/src/surf/workstation_interface.cpp @@ -251,6 +251,7 @@ ActionPtr Workstation::open(const char* fullpath) { else xbt_die("Can't find mount point for '%s' on '%s'", fullpath, getName()); + XBT_DEBUG("OPEN %s on disk '%s'",path, st->getName()); ActionPtr action = st->open((const char*)mount_name, (const char*)path); free((char*)path); free((char*)mount_name); @@ -259,19 +260,19 @@ ActionPtr Workstation::open(const char* fullpath) { ActionPtr Workstation::close(surf_file_t fd) { StoragePtr st = findStorageOnMountList(fd->mount); - XBT_DEBUG("CLOSE on disk '%s'",st->getName()); + XBT_DEBUG("CLOSE %s on disk '%s'",fd->name, st->getName()); return st->close(fd); } ActionPtr Workstation::read(surf_file_t fd, sg_size_t size) { StoragePtr st = findStorageOnMountList(fd->mount); - XBT_DEBUG("READ on disk '%s'",st->getName()); + XBT_DEBUG("READ %s on disk '%s'",fd->name, st->getName()); return st->read(fd, size); } ActionPtr Workstation::write(surf_file_t fd, sg_size_t size) { StoragePtr st = findStorageOnMountList(fd->mount); - XBT_DEBUG("WRITE on disk '%s'",st->getName()); + XBT_DEBUG("WRITE %s on disk '%s'",fd->name, st->getName()); return st->write(fd, size); } @@ -288,7 +289,7 @@ int Workstation::unlink(surf_file_t fd) { st->getName()); return -1; } else { - XBT_DEBUG("UNLINK on disk '%s'",st->getName()); + XBT_DEBUG("UNLINK %s on disk '%s'",fd->name, st->getName()); st->m_usedSize -= fd->size; // Remove the file from storage @@ -325,7 +326,7 @@ sg_size_t Workstation::fileTell(surf_file_t fd){ return fd->current_position; } -int Workstation::fileSeek(surf_file_t fd, sg_size_t offset, int origin){ +int Workstation::fileSeek(surf_file_t fd, sg_offset_t offset, int origin){ switch (origin) { case SEEK_SET: @@ -353,7 +354,7 @@ int Workstation::fileMove(surf_file_t fd, const char* fullpath){ *new_psize = *psize; if (psize){// src file exists xbt_dict_remove(findStorageOnMountList(fd->mount)->p_content, fd->name); - char *path = (char *) xbt_malloc ((strlen(fullpath)-strlen(fd->mount)+1));; + char *path = (char *) xbt_malloc ((strlen(fullpath)-strlen(fd->mount)+1)); strncpy(path, fullpath+strlen(fd->mount), strlen(fullpath)-strlen(fd->mount)+1); xbt_dict_set(findStorageOnMountList(fd->mount)->p_content, path, diff --git a/src/surf/workstation_interface.hpp b/src/surf/workstation_interface.hpp index b4e2dd7b0b..add4082eca 100644 --- a/src/surf/workstation_interface.hpp +++ b/src/surf/workstation_interface.hpp @@ -346,7 +346,7 @@ public: * - SEEK_END: end of the file * @return MSG_OK if successful, otherwise MSG_TASK_CANCELED */ - virtual int fileSeek(surf_file_t fd, sg_size_t offset, int origin); + virtual int fileSeek(surf_file_t fd, sg_offset_t offset, int origin); /** * @brief Move a file to another location on the *same mount point*. diff --git a/src/xbt/graphxml.c b/src/xbt/graphxml.c index 39ff4065da..bfb40afc66 100644 --- a/src/xbt/graphxml.c +++ b/src/xbt/graphxml.c @@ -466,8 +466,8 @@ static yyconst flex_int16_t yy_accept[564] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 13, 0, 0, 14, - 0, 15, 0 + 0, 0, 0, 0, 0, 0, 13, 0, 0, 15, + 0, 14, 0 } ; static yyconst flex_int32_t yy_ec[256] = @@ -1133,21 +1133,21 @@ short int graphxml_node_name_isset; AT_graphxml_node_data AX_graphxml_node_data; #define A_graphxml_node_data (graphxml_bufferstack + AX_graphxml_node_data) short int graphxml_node_data_isset; -AT_graphxml_edge_name AX_graphxml_edge_name; -#define A_graphxml_edge_name (graphxml_bufferstack + AX_graphxml_edge_name) -short int graphxml_edge_name_isset; -AT_graphxml_edge_data AX_graphxml_edge_data; -#define A_graphxml_edge_data (graphxml_bufferstack + AX_graphxml_edge_data) -short int graphxml_edge_data_isset; -AT_graphxml_node_label AX_graphxml_node_label; -#define A_graphxml_node_label (graphxml_bufferstack + AX_graphxml_node_label) -short int graphxml_node_label_isset; -AT_graphxml_edge_label AX_graphxml_edge_label; -#define A_graphxml_edge_label (graphxml_bufferstack + AX_graphxml_edge_label) -short int graphxml_edge_label_isset; +AT_graphxml_node_position___x AX_graphxml_node_position___x; +#define A_graphxml_node_position___x (graphxml_bufferstack + AX_graphxml_node_position___x) +short int graphxml_node_position___x_isset; AT_graphxml_edge_source AX_graphxml_edge_source; #define A_graphxml_edge_source (graphxml_bufferstack + AX_graphxml_edge_source) short int graphxml_edge_source_isset; +AT_graphxml_edge_data AX_graphxml_edge_data; +#define A_graphxml_edge_data (graphxml_bufferstack + AX_graphxml_edge_data) +short int graphxml_edge_data_isset; +AT_graphxml_graph_isDirected AX_graphxml_graph_isDirected; +#define A_graphxml_graph_isDirected AX_graphxml_graph_isDirected +short int graphxml_graph_isDirected_isset; +AT_graphxml_edge_name AX_graphxml_edge_name; +#define A_graphxml_edge_name (graphxml_bufferstack + AX_graphxml_edge_name) +short int graphxml_edge_name_isset; AT_graphxml_node_position___y AX_graphxml_node_position___y; #define A_graphxml_node_position___y (graphxml_bufferstack + AX_graphxml_node_position___y) short int graphxml_node_position___y_isset; @@ -1157,12 +1157,12 @@ short int graphxml_edge_length_isset; AT_graphxml_edge_target AX_graphxml_edge_target; #define A_graphxml_edge_target (graphxml_bufferstack + AX_graphxml_edge_target) short int graphxml_edge_target_isset; -AT_graphxml_graph_isDirected AX_graphxml_graph_isDirected; -#define A_graphxml_graph_isDirected AX_graphxml_graph_isDirected -short int graphxml_graph_isDirected_isset; -AT_graphxml_node_position___x AX_graphxml_node_position___x; -#define A_graphxml_node_position___x (graphxml_bufferstack + AX_graphxml_node_position___x) -short int graphxml_node_position___x_isset; +AT_graphxml_edge_label AX_graphxml_edge_label; +#define A_graphxml_edge_label (graphxml_bufferstack + AX_graphxml_edge_label) +short int graphxml_edge_label_isset; +AT_graphxml_node_label AX_graphxml_node_label; +#define A_graphxml_node_label (graphxml_bufferstack + AX_graphxml_node_label) +short int graphxml_node_label_isset; /* XML state. */ #ifdef FLEX_DEBUG @@ -1736,12 +1736,12 @@ SET(ROOT_graphxml_edge); case 14: /* rule 14 can match eol */ YY_RULE_SETUP -SET(ROOT_graphxml_node); +SET(ROOT_graphxml_graph); YY_BREAK case 15: /* rule 15 can match eol */ YY_RULE_SETUP -SET(ROOT_graphxml_graph); +SET(ROOT_graphxml_node); YY_BREAK case 16: /* rule 16 can match eol */ @@ -1838,10 +1838,10 @@ case 30: YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",xbt_graph_parse_text[0]); YY_BREAK -case YY_STATE_EOF(S_graphxml_graph): case YY_STATE_EOF(S_graphxml_graph_3): -case YY_STATE_EOF(E_graphxml_graph): +case YY_STATE_EOF(S_graphxml_graph): case YY_STATE_EOF(S_graphxml_graph_5): +case YY_STATE_EOF(E_graphxml_graph): case YY_STATE_EOF(S_graphxml_graph_1): FAIL("Premature EOF: `' expected."); YY_BREAK @@ -2089,7 +2089,7 @@ YY_RULE_SETUP LEAVE; STag_graphxml_edge(); graphxml_pcdata_ix = 0; ETag_graphxml_edge(); popbuffer(); /* attribute */ switch (YY_START) { case ROOT_graphxml_edge: SET(EPILOG); break; - case S_graphxml_graph_3: case S_graphxml_graph_4: case S_graphxml_graph_1: case S_graphxml_graph_5: case S_graphxml_graph: SET(S_graphxml_graph_5); break; + case S_graphxml_graph_5: case S_graphxml_graph: case S_graphxml_graph_1: case S_graphxml_graph_3: case S_graphxml_graph_4: SET(S_graphxml_graph_5); break; } } YY_BREAK @@ -2114,7 +2114,7 @@ YY_RULE_SETUP popbuffer(); /* attribute */ switch (YY_START) { case ROOT_graphxml_edge: SET(EPILOG); break; - case S_graphxml_graph_3: case S_graphxml_graph_4: case S_graphxml_graph_1: case S_graphxml_graph_5: case S_graphxml_graph: SET(S_graphxml_graph_5); break; + case S_graphxml_graph_5: case S_graphxml_graph: case S_graphxml_graph_1: case S_graphxml_graph_3: case S_graphxml_graph_4: SET(S_graphxml_graph_5); break; } } YY_BREAK diff --git a/src/xbt/log.c b/src/xbt/log.c index 06214ef482..ba67a7d523 100644 --- a/src/xbt/log.c +++ b/src/xbt/log.c @@ -714,6 +714,7 @@ static void xbt_log_connect_categories(void) XBT_LOG_CONNECT(surf_route_cluster); XBT_LOG_CONNECT(surf_route_cluster_torus); XBT_LOG_CONNECT(surf_route_dijkstra); + XBT_LOG_CONNECT(surf_route_fat_tree); XBT_LOG_CONNECT(surf_route_floyd); XBT_LOG_CONNECT(surf_route_full); XBT_LOG_CONNECT(surf_route_none); diff --git a/teshsuite/msg/process_join/process_join.tesh b/teshsuite/msg/process_join/process_join.tesh index 90548a5004..e48c49a411 100644 --- a/teshsuite/msg/process_join/process_join.tesh +++ b/teshsuite/msg/process_join/process_join.tesh @@ -1,5 +1,5 @@ -$ process_join ${srcdir:=.}/process_join_p.xml ${srcdir:=.}/process_join_d.xml +$ ./process_join$EXEEXT ${srcdir:=.}/process_join_p.xml ${srcdir:=.}/process_join_d.xml > [Tremblay:master:(1) 0.000000] [msg_test/INFO] Start slave > [Tremblay:slave from master:(2) 0.000000] [msg_test/INFO] Slave started > [Tremblay:master:(1) 0.000000] [msg_test/INFO] Join the slave (timeout 2) diff --git a/teshsuite/msg/storage/storage_basic.c b/teshsuite/msg/storage/storage_basic.c index d352f27363..4114570112 100644 --- a/teshsuite/msg/storage/storage_basic.c +++ b/teshsuite/msg/storage/storage_basic.c @@ -17,6 +17,7 @@ sg_size_t read_local_file(const char *src); void dump_storage_by_name(char *name); void display_storage_content(msg_storage_t storage); void get_set_storage_data(const char *storage_name); +void dump_platform_storages(void); int client(int argc, char *argv[]); int server(int argc, char *argv[]); @@ -139,6 +140,17 @@ void get_set_storage_data(const char *storage_name){ xbt_free(data); } +void dump_platform_storages(void){ + unsigned int cursor; + xbt_dynar_t storages = MSG_storages_as_dynar(); + msg_storage_t storage; + xbt_dynar_foreach(storages, cursor, storage){ + XBT_INFO("Storage %s is attached to %s", MSG_storage_get_name(storage), MSG_storage_get_host(storage)); + MSG_storage_set_property_value(storage, "usage", xbt_strdup("gpfs"), NULL); + } + xbt_dynar_free(&storages); +} + int client(int argc, char *argv[]) { hsm_put("server","/sd1/doc/simgrid/examples/cxx/autoDestination/FinalizeTask.cxx","/sd2/scratch/toto.cxx"); @@ -184,6 +196,7 @@ int server(int argc, char *argv[]) } storage_info(MSG_host_self()); + dump_platform_storages(); return 1; } diff --git a/teshsuite/msg/storage/storage_basic.tesh b/teshsuite/msg/storage/storage_basic.tesh index 288ebc3d37..2b6e0f98ca 100644 --- a/teshsuite/msg/storage/storage_basic.tesh +++ b/teshsuite/msg/storage/storage_basic.tesh @@ -1,4 +1,4 @@ -$ storage_basic --cfg=path:${srcdir:=.} ${srcdir:=.}/platform.xml ${srcdir:=.}/deployment.xml 0 "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" +$ ./storage_basic$EXEEXT --cfg=path:${srcdir:=.} ${srcdir:=.}/platform.xml ${srcdir:=.}/deployment.xml 0 "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" > [ 0.000000] (1:server@server) *** Storage info on server *** > [ 0.000000] (1:server@server) Storage name: sdisk1, mount name: /sd1 > [ 0.000000] (1:server@server) Free size: 322122547160 bytes @@ -57,4 +57,7 @@ $ storage_basic --cfg=path:${srcdir:=.} ${srcdir:=.}/platform.xml ${srcdir:=.}/d > [ 3.208145] (1:server@server) /doc/simgrid/examples/cxx/basic/Main.cxx size: 10 bytes > [ 3.208145] (1:server@server) /scratch/toto.cxx size: 500001 bytes > [ 3.208145] (1:server@server) /doc/simgrid/examples/cxx/basic/Slave.cxx size: 10 bytes +> [ 3.208145] (1:server@server) Storage cdisk is attached to client +> [ 3.208145] (1:server@server) Storage sdisk1 is attached to server +> [ 3.208145] (1:server@server) Storage sdisk2 is attached to server > [ 3.208145] (0:@) Simulated time: 3.20814 diff --git a/teshsuite/surf/trace_usage/trace_usage.tesh b/teshsuite/surf/trace_usage/trace_usage.tesh index 7f5b633398..f75d50676a 100644 --- a/teshsuite/surf/trace_usage/trace_usage.tesh +++ b/teshsuite/surf/trace_usage/trace_usage.tesh @@ -1,4 +1,3 @@ #! ./tesh $ $SG_TEST_EXENV ${bindir:=.}/trace_usage ->