From: Jonathan Rouzaud-Cornabas Date: Wed, 16 Jan 2013 17:40:54 +0000 (+0100) Subject: Fix failed merge X-Git-Tag: v3_9_rc1~84^2~1 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/2d930fd4960af33c07d94ddb874f7503bab264f0 Fix failed merge --- diff --git a/include/surf/simgrid_dtd.h b/include/surf/simgrid_dtd.h index 9a0652db64..d6f345187e 100644 --- a/include/surf/simgrid_dtd.h +++ b/include/surf/simgrid_dtd.h @@ -56,12 +56,12 @@ XBT_PUBLIC(void ) STag_surfxml_trace(void); XBT_PUBLIC(void ) ETag_surfxml_trace(void); XBT_PUBLIC(void ) STag_surfxml_random(void); XBT_PUBLIC(void ) ETag_surfxml_random(void); -XBT_PUBLIC(void ) STag_surfxml_trace___connect(void); -XBT_PUBLIC(void ) ETag_surfxml_trace___connect(void); +XBT_PUBLIC(void ) STag_surfxml_trace_connect(void); +XBT_PUBLIC(void ) ETag_surfxml_trace_connect(void); XBT_PUBLIC(void ) STag_surfxml_AS(void); XBT_PUBLIC(void ) ETag_surfxml_AS(void); -XBT_PUBLIC(void ) STag_surfxml_storage___type(void); -XBT_PUBLIC(void ) ETag_surfxml_storage___type(void); +XBT_PUBLIC(void ) STag_surfxml_storage_type(void); +XBT_PUBLIC(void ) ETag_surfxml_storage_type(void); XBT_PUBLIC(void ) STag_surfxml_storage(void); XBT_PUBLIC(void ) ETag_surfxml_storage(void); XBT_PUBLIC(void ) STag_surfxml_mount(void); @@ -72,8 +72,8 @@ XBT_PUBLIC(void ) STag_surfxml_host(void); XBT_PUBLIC(void ) ETag_surfxml_host(void); XBT_PUBLIC(void ) STag_surfxml_gpu(void); XBT_PUBLIC(void ) ETag_surfxml_gpu(void); -XBT_PUBLIC(void ) STag_surfxml_host___link(void); -XBT_PUBLIC(void ) ETag_surfxml_host___link(void); +XBT_PUBLIC(void ) STag_surfxml_host_link(void); +XBT_PUBLIC(void ) ETag_surfxml_host_link(void); XBT_PUBLIC(void ) STag_surfxml_cluster(void); XBT_PUBLIC(void ) ETag_surfxml_cluster(void); XBT_PUBLIC(void ) STag_surfxml_cabinet(void); @@ -90,8 +90,8 @@ XBT_PUBLIC(void ) STag_surfxml_route(void); XBT_PUBLIC(void ) ETag_surfxml_route(void); XBT_PUBLIC(void ) STag_surfxml_ASroute(void); XBT_PUBLIC(void ) ETag_surfxml_ASroute(void); -XBT_PUBLIC(void ) STag_surfxml_link___ctn(void); -XBT_PUBLIC(void ) ETag_surfxml_link___ctn(void); +XBT_PUBLIC(void ) STag_surfxml_link_ctn(void); +XBT_PUBLIC(void ) ETag_surfxml_link_ctn(void); XBT_PUBLIC(void ) STag_surfxml_bypassRoute(void); XBT_PUBLIC(void ) ETag_surfxml_bypassRoute(void); XBT_PUBLIC(void ) STag_surfxml_bypassASroute(void); @@ -109,25 +109,25 @@ XBT_PUBLIC(void ) ETag_surfxml_prop(void); typedef int AT_surfxml_mount_name; #define AU_surfxml_mount_name NULL 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 int AT_surfxml_ASroute_gw___dst; -#define AU_surfxml_ASroute_gw___dst NULL -typedef int AT_surfxml_trace___connect_element; -#define AU_surfxml_trace___connect_element NULL +typedef int AT_surfxml_ASroute_gw_dst; +#define AU_surfxml_ASroute_gw_dst NULL +typedef int AT_surfxml_trace_connect_element; +#define AU_surfxml_trace_connect_element NULL typedef int AT_surfxml_prop_id; #define AU_surfxml_prop_id NULL -typedef int AT_surfxml_host___link_up; -#define AU_surfxml_host___link_up NULL +typedef int AT_surfxml_host_link_up; +#define AU_surfxml_host_link_up NULL typedef int AT_surfxml_host_id; #define AU_surfxml_host_id NULL typedef enum { AU_surfxml_ASroute_symmetrical, A_surfxml_ASroute_symmetrical_YES,A_surfxml_ASroute_symmetrical_NO } AT_surfxml_ASroute_symmetrical; typedef int AT_surfxml_peer_lat; #define AU_surfxml_peer_lat 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_link_latency___file; -#define AU_surfxml_link_latency___file NULL -typedef int AT_surfxml_peer_availability___file; -#define AU_surfxml_peer_availability___file 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_process_on_failure, A_surfxml_process_on_failure_DIE,A_surfxml_process_on_failure_RESTART } AT_surfxml_process_on_failure; +typedef int AT_surfxml_link_latency_file; +#define AU_surfxml_link_latency_file NULL +typedef int AT_surfxml_peer_availability_file; +#define AU_surfxml_peer_availability_file 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_host_state, A_surfxml_host_state_ON,A_surfxml_host_state_OFF } AT_surfxml_host_state; typedef int AT_surfxml_AS_id; #define AU_surfxml_AS_id NULL @@ -139,18 +139,18 @@ typedef int AT_surfxml_gpu_name; #define AU_surfxml_gpu_name NULL typedef int AT_surfxml_router_id; #define AU_surfxml_router_id NULL -typedef int AT_surfxml_storage___type_id; -#define AU_surfxml_storage___type_id NULL -typedef int AT_surfxml_process_start___time; -#define AU_surfxml_process_start___time NULL +typedef int AT_surfxml_storage_type_id; +#define AU_surfxml_storage_type_id NULL +typedef int AT_surfxml_process_start_time; +#define AU_surfxml_process_start_time NULL typedef int AT_surfxml_cabinet_bw; #define AU_surfxml_cabinet_bw NULL typedef int AT_surfxml_cluster_suffix; #define AU_surfxml_cluster_suffix NULL typedef int AT_surfxml_bypassASroute_dst; #define AU_surfxml_bypassASroute_dst NULL -typedef int AT_surfxml_host___link_id; -#define AU_surfxml_host___link_id NULL +typedef int AT_surfxml_host_link_id; +#define AU_surfxml_host_link_id NULL typedef int AT_surfxml_ASroute_src; #define AU_surfxml_ASroute_src NULL typedef int AT_surfxml_cluster_prefix; @@ -159,58 +159,58 @@ typedef int AT_surfxml_cabinet_prefix; #define AU_surfxml_cabinet_prefix NULL typedef int AT_surfxml_trace_file; #define AU_surfxml_trace_file 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_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_storage_typeId; #define AU_surfxml_storage_typeId NULL typedef int AT_surfxml_random_min; #define AU_surfxml_random_min NULL -typedef int AT_surfxml_link___ctn_id; -#define AU_surfxml_link___ctn_id NULL -typedef int AT_surfxml_peer_bw___out; -#define AU_surfxml_peer_bw___out NULL -typedef int AT_surfxml_cluster_availability___file; -#define AU_surfxml_cluster_availability___file NULL +typedef int AT_surfxml_link_ctn_id; +#define AU_surfxml_link_ctn_id NULL +typedef int AT_surfxml_peer_bw_out; +#define AU_surfxml_peer_bw_out NULL +typedef int AT_surfxml_cluster_availability_file; +#define AU_surfxml_cluster_availability_file NULL typedef int AT_surfxml_storage_content; #define AU_surfxml_storage_content NULL -typedef int AT_surfxml_process_kill___time; -#define AU_surfxml_process_kill___time NULL -typedef int AT_surfxml_cluster_bb___bw; -#define AU_surfxml_cluster_bb___bw NULL +typedef int AT_surfxml_process_kill_time; +#define AU_surfxml_process_kill_time NULL +typedef int AT_surfxml_cluster_bb_bw; +#define AU_surfxml_cluster_bb_bw NULL typedef int AT_surfxml_argument_value; #define AU_surfxml_argument_value 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_ASroute_gw___src; -#define AU_surfxml_ASroute_gw___src NULL +typedef int AT_surfxml_ASroute_gw_src; +#define AU_surfxml_ASroute_gw_src 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_RuleBased,A_surfxml_AS_routing_Vivaldi,A_surfxml_AS_routing_Cluster } AT_surfxml_AS_routing; typedef int AT_surfxml_link_bandwidth; #define AU_surfxml_link_bandwidth NULL typedef int AT_surfxml_cluster_id; #define AU_surfxml_cluster_id NULL -typedef int AT_surfxml_peer_bw___in; -#define AU_surfxml_peer_bw___in NULL +typedef int AT_surfxml_peer_bw_in; +#define AU_surfxml_peer_bw_in NULL typedef int AT_surfxml_random_mean; #define AU_surfxml_random_mean NULL -typedef int AT_surfxml_storage___type_size; -#define AU_surfxml_storage___type_size NULL -typedef int AT_surfxml_cluster_bb___lat; -#define AU_surfxml_cluster_bb___lat NULL +typedef int AT_surfxml_storage_type_size; +#define AU_surfxml_storage_type_size NULL +typedef int AT_surfxml_cluster_bb_lat; +#define AU_surfxml_cluster_bb_lat NULL typedef int AT_surfxml_link_latency; #define AU_surfxml_link_latency NULL typedef int AT_surfxml_backbone_bandwidth; #define AU_surfxml_backbone_bandwidth NULL typedef int AT_surfxml_backbone_id; #define AU_surfxml_backbone_id 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 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_cabinet_lat; #define AU_surfxml_cabinet_lat NULL typedef int AT_surfxml_random_seed; #define AU_surfxml_random_seed NULL -typedef int AT_surfxml_cluster_state___file; -#define AU_surfxml_cluster_state___file NULL -typedef int AT_surfxml_link_bandwidth___file; -#define AU_surfxml_link_bandwidth___file NULL -typedef int AT_surfxml_storage___type_content; -#define AU_surfxml_storage___type_content NULL +typedef int AT_surfxml_cluster_state_file; +#define AU_surfxml_cluster_state_file NULL +typedef int AT_surfxml_link_bandwidth_file; +#define AU_surfxml_link_bandwidth_file NULL +typedef int AT_surfxml_storage_type_content; +#define AU_surfxml_storage_type_content 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_random_id; #define AU_surfxml_random_id NULL @@ -224,17 +224,17 @@ typedef int AT_surfxml_process_host; #define AU_surfxml_process_host NULL typedef int AT_surfxml_cabinet_id; #define AU_surfxml_cabinet_id NULL -typedef int AT_surfxml_host_availability___file; -#define AU_surfxml_host_availability___file NULL +typedef int AT_surfxml_host_availability_file; +#define AU_surfxml_host_availability_file NULL typedef int AT_surfxml_cluster_lat; #define AU_surfxml_cluster_lat NULL typedef int AT_surfxml_router_coordinates; #define AU_surfxml_router_coordinates NULL typedef int AT_surfxml_trace_periodicity; #define AU_surfxml_trace_periodicity 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_peer_state___file; -#define AU_surfxml_peer_state___file 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_peer_state_file; +#define AU_surfxml_peer_state_file NULL typedef int AT_surfxml_peer_coordinates; #define AU_surfxml_peer_coordinates NULL typedef int AT_surfxml_bypassASroute_src; @@ -245,14 +245,14 @@ typedef int AT_surfxml_mstorage_typeId; #define AU_surfxml_mstorage_typeId NULL typedef int AT_surfxml_ASroute_dst; #define AU_surfxml_ASroute_dst NULL -typedef int AT_surfxml_link_state___file; -#define AU_surfxml_link_state___file NULL +typedef int AT_surfxml_link_state_file; +#define AU_surfxml_link_state_file NULL typedef int AT_surfxml_random_radical; #define AU_surfxml_random_radical NULL -typedef int AT_surfxml_bypassASroute_gw___src; -#define AU_surfxml_bypassASroute_gw___src NULL -typedef int AT_surfxml_trace___connect_trace; -#define AU_surfxml_trace___connect_trace NULL +typedef int AT_surfxml_bypassASroute_gw_src; +#define AU_surfxml_bypassASroute_gw_src NULL +typedef int AT_surfxml_trace_connect_trace; +#define AU_surfxml_trace_connect_trace NULL typedef int AT_surfxml_mount_id; #define AU_surfxml_mount_id NULL typedef int AT_surfxml_cluster_power; @@ -261,19 +261,19 @@ typedef int AT_surfxml_process_function; #define AU_surfxml_process_function NULL typedef int AT_surfxml_peer_id; #define AU_surfxml_peer_id NULL -typedef int AT_surfxml_cluster_router___id; -#define AU_surfxml_cluster_router___id NULL +typedef int AT_surfxml_cluster_router_id; +#define AU_surfxml_cluster_router_id NULL typedef int AT_surfxml_cabinet_radical; #define AU_surfxml_cabinet_radical 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 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_bypassRoute_dst; #define AU_surfxml_bypassRoute_dst NULL typedef int AT_surfxml_cabinet_power; #define AU_surfxml_cabinet_power NULL typedef int AT_surfxml_host_core; #define AU_surfxml_host_core NULL -typedef int AT_surfxml_storage___type_model; -#define AU_surfxml_storage___type_model NULL +typedef int AT_surfxml_storage_type_model; +#define AU_surfxml_storage_type_model NULL typedef int AT_surfxml_host_availability; #define AU_surfxml_host_availability NULL typedef int AT_surfxml_bypassRoute_src; @@ -294,18 +294,18 @@ 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_bypassASroute_gw___dst; -#define AU_surfxml_bypassASroute_gw___dst NULL -typedef int AT_surfxml_host___link_down; -#define AU_surfxml_host___link_down NULL +typedef int AT_surfxml_bypassASroute_gw_dst; +#define AU_surfxml_bypassASroute_gw_dst NULL +typedef int AT_surfxml_host_link_down; +#define AU_surfxml_host_link_down NULL typedef int AT_surfxml_include_file; #define AU_surfxml_include_file NULL -typedef int AT_surfxml_random_std___deviation; -#define AU_surfxml_random_std___deviation NULL +typedef int AT_surfxml_random_std_deviation; +#define AU_surfxml_random_std_deviation NULL typedef int AT_surfxml_cluster_core; #define AU_surfxml_cluster_core NULL -typedef int AT_surfxml_host_state___file; -#define AU_surfxml_host_state___file NULL +typedef int AT_surfxml_host_state_file; +#define AU_surfxml_host_state_file NULL typedef int AT_surfxml_route_dst; #define AU_surfxml_route_dst NULL typedef int AT_surfxml_cluster_bw; diff --git a/include/xbt/graphxml.h b/include/xbt/graphxml.h index 3757f648c2..556b0c0ec1 100644 --- a/include/xbt/graphxml.h +++ b/include/xbt/graphxml.h @@ -60,10 +60,10 @@ typedef int AT_graphxml_node_name; #define AU_graphxml_node_name NULL typedef int AT_graphxml_edge_source; #define AU_graphxml_edge_source NULL -typedef int AT_graphxml_node_position___y; -#define AU_graphxml_node_position___y NULL -typedef int AT_graphxml_node_position___x; -#define AU_graphxml_node_position___x NULL +typedef int AT_graphxml_node_position_y; +#define AU_graphxml_node_position_y NULL +typedef int AT_graphxml_node_position_x; +#define AU_graphxml_node_position_x NULL typedef int AT_graphxml_edge_data; #define AU_graphxml_edge_data NULL typedef int AT_graphxml_edge_target; diff --git a/src/instr/instr_msg_process.c b/src/instr/instr_msg_process.c new file mode 100644 index 0000000000..29d321b643 --- /dev/null +++ b/src/instr/instr_msg_process.c @@ -0,0 +1,152 @@ +/* Copyright (c) 2010. The SimGrid Team. + * All rights reserved. */ + +/* This program is free software; you can redistribute it and/or modify it + * under the terms of the license (GNU LGPL) which comes with this package. */ + +#include "instr/instr_private.h" +#include "mc/mc.h" + +#ifdef HAVE_TRACING + +XBT_LOG_NEW_DEFAULT_SUBCATEGORY (instr_msg_process, instr, "MSG process"); + +char *instr_process_id (msg_process_t proc, char *str, int len) +{ + return instr_process_id_2 (proc->name, proc->pid, str, len);//MSG_process_get_name(proc), MSG_process_get_PID(proc), str, len); +} + +char *instr_process_id_2 (const char *process_name, int process_pid, char *str, int len) +{ + snprintf (str, len, "%s-%d", process_name, process_pid); + return str; +} + +/* + * Instrumentation functions to trace MSG processes (msg_process_t) + */ +void TRACE_msg_process_change_host(msg_process_t process, msg_host_t old_host, msg_host_t new_host) +{ + if (TRACE_msg_process_is_enabled()){ + static long long int counter = 0; + + if(MC_is_active()) + MC_ignore_data_bss(&counter, sizeof(counter)); + + char key[INSTR_DEFAULT_STR_SIZE]; + snprintf (key, INSTR_DEFAULT_STR_SIZE, "%lld", counter++); + + int len = INSTR_DEFAULT_STR_SIZE; + char str[INSTR_DEFAULT_STR_SIZE]; + + //start link + container_t msg = PJ_container_get (instr_process_id(process, str, len)); + type_t type = PJ_type_get ("MSG_PROCESS_LINK", PJ_type_get_root()); + new_pajeStartLink (MSG_get_clock(), PJ_container_get_root(), type, msg, "M", key); + + //destroy existing container of this process + TRACE_msg_process_destroy (MSG_process_get_name (process), MSG_process_get_PID (process), old_host); + + //create new container on the new_host location + TRACE_msg_process_create (MSG_process_get_name (process), MSG_process_get_PID (process), new_host); + + //end link + msg = PJ_container_get(instr_process_id(process, str, len)); + type = PJ_type_get ("MSG_PROCESS_LINK", PJ_type_get_root()); + new_pajeEndLink (MSG_get_clock(), PJ_container_get_root(), type, msg, "M", key); + } +} + +void TRACE_msg_process_create (const char *process_name, int process_pid, msg_host_t host) +{ + if (TRACE_msg_process_is_enabled()){ + int len = INSTR_DEFAULT_STR_SIZE; + char str[INSTR_DEFAULT_STR_SIZE]; + + container_t host_container = PJ_container_get (SIMIX_host_get_name(host->smx_host)); + PJ_container_new(instr_process_id_2(process_name, process_pid, str, len), INSTR_MSG_PROCESS, host_container); + } +} + +void TRACE_msg_process_destroy (const char *process_name, int process_pid, msg_host_t host) +{ + int len = INSTR_DEFAULT_STR_SIZE; + char str[INSTR_DEFAULT_STR_SIZE]; + + container_t process = PJ_container_get (instr_process_id_2 (process_name, process_pid, str, len)); + PJ_container_remove_from_parent (process); + PJ_container_free (process); +} + +void TRACE_msg_process_kill(msg_process_t process) +{ + if (TRACE_msg_process_is_enabled()){ + //kill means that this process no longer exists, let's destroy it + TRACE_msg_process_destroy (MSG_process_get_name (process), MSG_process_get_PID (process), MSG_process_get_host (process)); + } +} + +void TRACE_msg_process_suspend(msg_process_t process) +{ + if (TRACE_msg_process_is_enabled()){ + int len = INSTR_DEFAULT_STR_SIZE; + char str[INSTR_DEFAULT_STR_SIZE]; + + container_t process_container = PJ_container_get (instr_process_id(process, str, len)); + type_t type = PJ_type_get ("MSG_PROCESS_STATE", process_container->type); + val_t value = PJ_value_get ("suspend", type); + new_pajePushState (MSG_get_clock(), process_container, type, value); + } +} + +void TRACE_msg_process_resume(msg_process_t process) +{ + if (TRACE_msg_process_is_enabled()){ + int len = INSTR_DEFAULT_STR_SIZE; + char str[INSTR_DEFAULT_STR_SIZE]; + + container_t process_container = PJ_container_get (instr_process_id(process, str, len)); + type_t type = PJ_type_get ("MSG_PROCESS_STATE", process_container->type); + new_pajePopState (MSG_get_clock(), process_container, type); + } +} + +void TRACE_msg_process_sleep_in(msg_process_t process) +{ + if (TRACE_msg_process_is_enabled()){ + int len = INSTR_DEFAULT_STR_SIZE; + char str[INSTR_DEFAULT_STR_SIZE]; + + container_t process_container = PJ_container_get (instr_process_id(process, str, len)); + type_t type = PJ_type_get ("MSG_PROCESS_STATE", process_container->type); + val_t value = PJ_value_get ("sleep", type); + new_pajePushState (MSG_get_clock(), process_container, type, value); + } +} + +void TRACE_msg_process_sleep_out(msg_process_t process) +{ + if (TRACE_msg_process_is_enabled()){ + int len = INSTR_DEFAULT_STR_SIZE; + char str[INSTR_DEFAULT_STR_SIZE]; + + container_t process_container = PJ_container_get (instr_process_id(process, str, len)); + type_t type = PJ_type_get ("MSG_PROCESS_STATE", process_container->type); + new_pajePopState (MSG_get_clock(), process_container, type); + } +} + +void TRACE_msg_process_end(msg_process_t process) +{ + if (TRACE_msg_process_is_enabled()) { + int len = INSTR_DEFAULT_STR_SIZE; + char str[INSTR_DEFAULT_STR_SIZE]; + + //that's the end, let's destroy it + container_t container = PJ_container_get (instr_process_id(process, str, len)); + PJ_container_remove_from_parent (container); + PJ_container_free (container); + } +} + +#endif /* HAVE_TRACING */ diff --git a/src/instr/instr_msg_task.c b/src/instr/instr_msg_task.c new file mode 100644 index 0000000000..39da9d7452 --- /dev/null +++ b/src/instr/instr_msg_task.c @@ -0,0 +1,160 @@ +/* Copyright (c) 2010. The SimGrid Team. + * All rights reserved. */ + +/* This program is free software; you can redistribute it and/or modify it + * under the terms of the license (GNU LGPL) which comes with this package. */ + +#include "instr/instr_private.h" +#include "mc/mc.h" + +#ifdef HAVE_TRACING + +XBT_LOG_NEW_DEFAULT_SUBCATEGORY (instr_msg, instr, "MSG"); + +void TRACE_msg_set_task_category(msg_task_t task, const char *category) +{ + xbt_assert(task->category == NULL, "Task %p(%s) already has a category (%s).", + task, task->name, task->category); + + //if user provides a NULL category, task is no longer traced + if (category == NULL) { + xbt_free (task->category); + task->category = NULL; + XBT_DEBUG("MSG task %p(%s), category removed", task, task->name); + return; + } + + //set task category + task->category = xbt_strdup (category); + XBT_DEBUG("MSG task %p(%s), category %s", task, task->name, task->category); +} + +/* MSG_task_create related function*/ +void TRACE_msg_task_create(msg_task_t task) +{ + static long long counter = 0; + task->counter = counter++; + task->category = NULL; + + if(MC_is_active()){ + MC_ignore_data_bss(&counter, sizeof(counter)); + MC_ignore_heap(&(task->counter), sizeof(task->counter)); + } + + XBT_DEBUG("CREATE %p, %lld", task, task->counter); +} + +/* MSG_task_execute related functions */ +void TRACE_msg_task_execute_start(msg_task_t task) +{ + XBT_DEBUG("EXEC,in %p, %lld, %s", task, task->counter, task->category); + + if (TRACE_msg_process_is_enabled()){ + int len = INSTR_DEFAULT_STR_SIZE; + char str[INSTR_DEFAULT_STR_SIZE]; + + container_t process_container = PJ_container_get (instr_process_id(MSG_process_self(), str, len)); + type_t type = PJ_type_get ("MSG_PROCESS_STATE", process_container->type); + val_t value = PJ_value_get ("task_execute", type); + new_pajePushState (MSG_get_clock(), process_container, type, value); + } +} + +void TRACE_msg_task_execute_end(msg_task_t task) +{ + XBT_DEBUG("EXEC,out %p, %lld, %s", task, task->counter, task->category); + + if (TRACE_msg_process_is_enabled()){ + int len = INSTR_DEFAULT_STR_SIZE; + char str[INSTR_DEFAULT_STR_SIZE]; + + container_t process_container = PJ_container_get (instr_process_id(MSG_process_self(), str, len)); + type_t type = PJ_type_get ("MSG_PROCESS_STATE", process_container->type); + new_pajePopState (MSG_get_clock(), process_container, type); + } +} + +/* MSG_task_destroy related functions */ +void TRACE_msg_task_destroy(msg_task_t task) +{ + XBT_DEBUG("DESTROY %p, %lld, %s", task, task->counter, task->category); + + //free category + xbt_free(task->category); + task->category = NULL; + return; +} + +/* MSG_task_get related functions */ +void TRACE_msg_task_get_start(void) +{ + XBT_DEBUG("GET,in"); + + if (TRACE_msg_process_is_enabled()){ + int len = INSTR_DEFAULT_STR_SIZE; + char str[INSTR_DEFAULT_STR_SIZE]; + + container_t process_container = PJ_container_get (instr_process_id(MSG_process_self(), str, len)); + type_t type = PJ_type_get ("MSG_PROCESS_STATE", process_container->type); + val_t value = PJ_value_get ("receive", type); + new_pajePushState (MSG_get_clock(), process_container, type, value); + } +} + +void TRACE_msg_task_get_end(double start_time, msg_task_t task) +{ + XBT_DEBUG("GET,out %p, %lld, %s", task, task->counter, task->category); + + if (TRACE_msg_process_is_enabled()){ + int len = INSTR_DEFAULT_STR_SIZE; + char str[INSTR_DEFAULT_STR_SIZE]; + + container_t process_container = PJ_container_get (instr_process_id(MSG_process_self(), str, len)); + type_t type = PJ_type_get ("MSG_PROCESS_STATE", process_container->type); + new_pajePopState (MSG_get_clock(), process_container, type); + + char key[INSTR_DEFAULT_STR_SIZE]; + snprintf (key, INSTR_DEFAULT_STR_SIZE, "p%lld", task->counter); + type = PJ_type_get ("MSG_PROCESS_TASK_LINK", PJ_type_get_root()); + new_pajeEndLink(MSG_get_clock(), PJ_container_get_root(), type, process_container, "SR", key); + } +} + +/* MSG_task_put related functions */ +int TRACE_msg_task_put_start(msg_task_t task) +{ + XBT_DEBUG("PUT,in %p, %lld, %s", task, task->counter, task->category); + + if (TRACE_msg_process_is_enabled()){ + int len = INSTR_DEFAULT_STR_SIZE; + char str[INSTR_DEFAULT_STR_SIZE]; + + container_t process_container = PJ_container_get (instr_process_id(MSG_process_self(), str, len)); + type_t type = PJ_type_get ("MSG_PROCESS_STATE", process_container->type); + val_t value = PJ_value_get ("send", type); + new_pajePushState (MSG_get_clock(), process_container, type, value); + + char key[INSTR_DEFAULT_STR_SIZE]; + snprintf (key, INSTR_DEFAULT_STR_SIZE, "p%lld", task->counter); + type = PJ_type_get ("MSG_PROCESS_TASK_LINK", PJ_type_get_root()); + new_pajeStartLink(MSG_get_clock(), PJ_container_get_root(), type, process_container, "SR", key); + } + + return 1; +} + +void TRACE_msg_task_put_end(void) +{ + XBT_DEBUG("PUT,out"); + + if (TRACE_msg_process_is_enabled()){ + int len = INSTR_DEFAULT_STR_SIZE; + char str[INSTR_DEFAULT_STR_SIZE]; + + container_t process_container = PJ_container_get (instr_process_id(MSG_process_self(), str, len)); + type_t type = PJ_type_get ("MSG_PROCESS_STATE", process_container->type); + new_pajePopState (MSG_get_clock(), process_container, type); + } +} + +#endif /* HAVE_TRACING */ diff --git a/src/surf/simgrid_dtd.c b/src/surf/simgrid_dtd.c index 689fcf0126..606179dcdf 100644 --- a/src/surf/simgrid_dtd.c +++ b/src/surf/simgrid_dtd.c @@ -4487,8 +4487,6 @@ AT_surfxml_bypassASroute_dst AX_surfxml_bypassASroute_dst; #define A_surfxml_bypassASroute_dst (surfxml_bufferstack + AX_surfxml_bypassASroute_dst) AT_surfxml_host_link_id AX_surfxml_host_link_id; #define A_surfxml_host_link_id (surfxml_bufferstack + AX_surfxml_host_link_id) -AT_surfxml_host___link_id AX_surfxml_host___link_id; -#define A_surfxml_host___link_id (surfxml_bufferstack + AX_surfxml_host___link_id) AT_surfxml_ASroute_src AX_surfxml_ASroute_src; #define A_surfxml_ASroute_src (surfxml_bufferstack + AX_surfxml_ASroute_src) AT_surfxml_cluster_prefix AX_surfxml_cluster_prefix; @@ -4825,8 +4823,8 @@ const char* *surfxml_statenames=NULL; #define IN_trace 27 #define AL_surfxml_random 28 #define E_surfxml_random 29 -#define AL_surfxml_trace___connect 30 -#define E_surfxml_trace___connect 31 +#define AL_surfxml_trace_connect 30 +#define E_surfxml_trace_connect 31 #define AL_surfxml_AS 32 #define S_surfxml_AS 33 #define S_surfxml_AS_1 34 @@ -4846,11 +4844,11 @@ const char* *surfxml_statenames=NULL; #define S_surfxml_AS_15 48 #define S_surfxml_AS_16 49 #define E_surfxml_AS 50 -#define AL_surfxml_storage___type 51 -#define S_surfxml_storage___type 52 -#define S_surfxml_storage___type_1 53 -#define S_surfxml_storage___type_2 54 -#define E_surfxml_storage___type 55 +#define AL_surfxml_storage_type 51 +#define S_surfxml_storage_type 52 +#define S_surfxml_storage_type_1 53 +#define S_surfxml_storage_type_2 54 +#define E_surfxml_storage_type 55 #define AL_surfxml_storage 56 #define S_surfxml_storage 57 #define S_surfxml_storage_1 58 @@ -4867,8 +4865,8 @@ const char* *surfxml_statenames=NULL; #define E_surfxml_host 69 #define AL_surfxml_gpu 70 #define E_surfxml_gpu 71 -#define AL_surfxml_host___link 72 -#define E_surfxml_host___link 73 +#define AL_surfxml_host_link 72 +#define E_surfxml_host_link 73 #define AL_surfxml_cluster 74 #define E_surfxml_cluster 75 #define AL_surfxml_cabinet 76 @@ -4894,8 +4892,8 @@ const char* *surfxml_statenames=NULL; #define S_surfxml_ASroute_1 96 #define S_surfxml_ASroute_2 97 #define E_surfxml_ASroute 98 -#define AL_surfxml_link___ctn 99 -#define E_surfxml_link___ctn 100 +#define AL_surfxml_link_ctn 99 +#define E_surfxml_link_ctn 100 #define AL_surfxml_bypassRoute 101 #define S_surfxml_bypassRoute 102 #define S_surfxml_bypassRoute_1 103 @@ -5176,8 +5174,8 @@ YY_DECL surfxml_statenames[IN_trace] = "trace"; surfxml_statenames[AL_surfxml_random] = NULL; surfxml_statenames[E_surfxml_random] = "random"; - surfxml_statenames[AL_surfxml_trace___connect] = NULL; - surfxml_statenames[E_surfxml_trace___connect] = "trace_connect"; + surfxml_statenames[AL_surfxml_trace_connect] = NULL; + surfxml_statenames[E_surfxml_trace_connect] = "trace_connect"; surfxml_statenames[AL_surfxml_AS] = NULL; surfxml_statenames[S_surfxml_AS] = "AS"; surfxml_statenames[S_surfxml_AS_1] = "AS"; @@ -5197,11 +5195,11 @@ YY_DECL surfxml_statenames[S_surfxml_AS_15] = "AS"; surfxml_statenames[S_surfxml_AS_16] = "AS"; surfxml_statenames[E_surfxml_AS] = "AS"; - surfxml_statenames[AL_surfxml_storage___type] = NULL; - surfxml_statenames[S_surfxml_storage___type] = "storage_type"; - surfxml_statenames[S_surfxml_storage___type_1] = "storage_type"; - surfxml_statenames[S_surfxml_storage___type_2] = "storage_type"; - surfxml_statenames[E_surfxml_storage___type] = "storage_type"; + surfxml_statenames[AL_surfxml_storage_type] = NULL; + surfxml_statenames[S_surfxml_storage_type] = "storage_type"; + surfxml_statenames[S_surfxml_storage_type_1] = "storage_type"; + surfxml_statenames[S_surfxml_storage_type_2] = "storage_type"; + surfxml_statenames[E_surfxml_storage_type] = "storage_type"; surfxml_statenames[AL_surfxml_storage] = NULL; surfxml_statenames[S_surfxml_storage] = "storage"; surfxml_statenames[S_surfxml_storage_1] = "storage"; @@ -5218,8 +5216,8 @@ YY_DECL surfxml_statenames[E_surfxml_host] = "host"; surfxml_statenames[AL_surfxml_gpu] = NULL; surfxml_statenames[E_surfxml_gpu] = "gpu"; - surfxml_statenames[AL_surfxml_host___link] = NULL; - surfxml_statenames[E_surfxml_host___link] = "host_link"; + surfxml_statenames[AL_surfxml_host_link] = NULL; + surfxml_statenames[E_surfxml_host_link] = "host_link"; surfxml_statenames[AL_surfxml_cluster] = NULL; surfxml_statenames[E_surfxml_cluster] = "cluster"; surfxml_statenames[AL_surfxml_cabinet] = NULL; @@ -5245,8 +5243,8 @@ YY_DECL surfxml_statenames[S_surfxml_ASroute_1] = "ASroute"; surfxml_statenames[S_surfxml_ASroute_2] = "ASroute"; surfxml_statenames[E_surfxml_ASroute] = "ASroute"; - surfxml_statenames[AL_surfxml_link___ctn] = NULL; - surfxml_statenames[E_surfxml_link___ctn] = "link_ctn"; + surfxml_statenames[AL_surfxml_link_ctn] = NULL; + surfxml_statenames[E_surfxml_link_ctn] = "link_ctn"; surfxml_statenames[AL_surfxml_bypassRoute] = NULL; surfxml_statenames[S_surfxml_bypassRoute] = "bypassRoute"; surfxml_statenames[S_surfxml_bypassRoute_1] = "bypassRoute"; @@ -5850,7 +5848,7 @@ YY_RULE_SETUP if (!AX_surfxml_random_min) FAIL("Required attribute `min' not set for `random' element."); if (!AX_surfxml_random_max) FAIL("Required attribute `max' not set for `random' element."); if (!AX_surfxml_random_mean) FAIL("Required attribute `mean' not set for `random' element."); - if (!AX_surfxml_random_std___deviation) FAIL("Required attribute `std_deviation' not set for `random' element."); + if (!AX_surfxml_random_std_deviation) FAIL("Required attribute `std_deviation' not set for `random' element."); LEAVE; STag_surfxml_random();surfxml_pcdata_ix = 0; ENTER(E_surfxml_random); } YY_BREAK @@ -5861,7 +5859,7 @@ YY_RULE_SETUP if (!AX_surfxml_random_min) FAIL("Required attribute `min' not set for `random' element."); if (!AX_surfxml_random_max) FAIL("Required attribute `max' not set for `random' element."); if (!AX_surfxml_random_mean) FAIL("Required attribute `mean' not set for `random' element."); - if (!AX_surfxml_random_std___deviation) FAIL("Required attribute `std_deviation' not set for `random' element."); + 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_2: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break; @@ -5926,35 +5924,35 @@ case 85: case 86: /* rule 86 can match eol */ YY_RULE_SETUP -A_surfxml_trace___connect_kind = A_surfxml_trace___connect_kind_HOST___AVAIL; +A_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_HOST_AVAIL; YY_BREAK case 87: /* rule 87 can match eol */ case 88: /* rule 88 can match eol */ YY_RULE_SETUP -A_surfxml_trace___connect_kind = A_surfxml_trace___connect_kind_POWER; +A_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_POWER; YY_BREAK case 89: /* rule 89 can match eol */ case 90: /* rule 90 can match eol */ YY_RULE_SETUP -A_surfxml_trace___connect_kind = A_surfxml_trace___connect_kind_LINK___AVAIL; +A_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_LINK_AVAIL; YY_BREAK case 91: /* rule 91 can match eol */ case 92: /* rule 92 can match eol */ YY_RULE_SETUP -A_surfxml_trace___connect_kind = A_surfxml_trace___connect_kind_BANDWIDTH; +A_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_BANDWIDTH; YY_BREAK case 93: /* rule 93 can match eol */ case 94: /* rule 94 can match eol */ YY_RULE_SETUP -A_surfxml_trace___connect_kind = A_surfxml_trace___connect_kind_LATENCY; +A_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_LATENCY; YY_BREAK case 95: /* rule 95 can match eol */ @@ -5979,17 +5977,17 @@ ENTER(VALUE2); BUFFERSET(AX_surfxml_trace_connect_element); case 99: YY_RULE_SETUP { - if (!AX_surfxml_trace___connect_trace) FAIL("Required attribute `trace' not set for `trace_connect' element."); - 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; ENTER(E_surfxml_trace___connect); + if (!AX_surfxml_trace_connect_trace) FAIL("Required attribute `trace' not set for `trace_connect' element."); + 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; ENTER(E_surfxml_trace_connect); } YY_BREAK case 100: YY_RULE_SETUP { - if (!AX_surfxml_trace___connect_trace) FAIL("Required attribute `trace' not set for `trace_connect' element."); - 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 */ + if (!AX_surfxml_trace_connect_trace) FAIL("Required attribute `trace' not set for `trace_connect' element."); + 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_11: case S_surfxml_AS_10: case S_surfxml_AS_7: SET(S_surfxml_AS_11); break; case S_surfxml_AS_12: case S_surfxml_AS_15: case S_surfxml_AS_16: SET(S_surfxml_AS_16); break; @@ -6009,7 +6007,7 @@ case 102: YY_RULE_SETUP FAIL("Bad attribute `%s' in `trace_connect' element start tag.",surf_parse_text); YY_BREAK -case YY_STATE_EOF(AL_surfxml_trace___connect): +case YY_STATE_EOF(AL_surfxml_trace_connect): FAIL("EOF in attribute list of `trace_connect' element."); YY_BREAK @@ -6018,7 +6016,7 @@ case 103: YY_RULE_SETUP { LEAVE; - ETag_surfxml_trace___connect(); + ETag_surfxml_trace_connect(); popbuffer(); /* attribute */ switch (YY_START) { case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS_7: SET(S_surfxml_AS_11); break; @@ -6040,7 +6038,7 @@ case 105: YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",surf_parse_text[0]); YY_BREAK -case YY_STATE_EOF(E_surfxml_trace___connect): +case YY_STATE_EOF(E_surfxml_trace_connect): if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `' expected."); YY_BREAK @@ -6254,19 +6252,19 @@ ENTER(VALUE2); BUFFERSET(AX_surfxml_storage_type_content); case 143: YY_RULE_SETUP { - if (!AX_surfxml_storage___type_id) FAIL("Required attribute `id' not set for `storage_type' element."); - if (!AX_surfxml_storage___type_model) FAIL("Required attribute `model' not set for `storage_type' element."); - 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; ENTER(S_surfxml_storage___type); + if (!AX_surfxml_storage_type_id) FAIL("Required attribute `id' not set for `storage_type' element."); + if (!AX_surfxml_storage_type_model) FAIL("Required attribute `model' not set for `storage_type' element."); + 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; ENTER(S_surfxml_storage_type); } YY_BREAK case 144: YY_RULE_SETUP { - if (!AX_surfxml_storage___type_id) FAIL("Required attribute `id' not set for `storage_type' element."); - if (!AX_surfxml_storage___type_model) FAIL("Required attribute `model' not set for `storage_type' element."); - 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 */ + if (!AX_surfxml_storage_type_id) FAIL("Required attribute `id' not set for `storage_type' element."); + if (!AX_surfxml_storage_type_model) FAIL("Required attribute `model' not set for `storage_type' element."); + 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_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; case S_surfxml_AS_1: 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; @@ -6281,7 +6279,7 @@ case 146: YY_RULE_SETUP FAIL("Bad attribute `%s' in `storage_type' element start tag.",surf_parse_text); YY_BREAK -case YY_STATE_EOF(AL_surfxml_storage___type): +case YY_STATE_EOF(AL_surfxml_storage_type): FAIL("EOF in attribute list of `storage_type' element."); YY_BREAK @@ -6290,7 +6288,7 @@ case 147: YY_RULE_SETUP { LEAVE; - ETag_surfxml_storage___type(); + ETag_surfxml_storage_type(); popbuffer(); /* attribute */ switch (YY_START) { case S_surfxml_AS_5: case S_surfxml_AS_6: SET(S_surfxml_AS_6); break; @@ -6307,9 +6305,9 @@ case 149: YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",surf_parse_text[0]); YY_BREAK -case YY_STATE_EOF(E_surfxml_storage___type): -case YY_STATE_EOF(S_surfxml_storage___type): -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_2): +case YY_STATE_EOF(S_surfxml_storage_type): if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `' expected."); YY_BREAK @@ -6891,19 +6889,19 @@ ENTER(VALUE2); BUFFERSET(AX_surfxml_host_link_down); case 237: YY_RULE_SETUP { - if (!AX_surfxml_host___link_id) FAIL("Required attribute `id' not set for `host_link' element."); - if (!AX_surfxml_host___link_up) FAIL("Required attribute `up' not set for `host_link' element."); - 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; ENTER(E_surfxml_host___link); + if (!AX_surfxml_host_link_id) FAIL("Required attribute `id' not set for `host_link' element."); + if (!AX_surfxml_host_link_up) FAIL("Required attribute `up' not set for `host_link' element."); + 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; ENTER(E_surfxml_host_link); } YY_BREAK case 238: YY_RULE_SETUP { - if (!AX_surfxml_host___link_id) FAIL("Required attribute `id' not set for `host_link' element."); - if (!AX_surfxml_host___link_up) FAIL("Required attribute `up' not set for `host_link' element."); - 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 */ + if (!AX_surfxml_host_link_id) FAIL("Required attribute `id' not set for `host_link' element."); + if (!AX_surfxml_host_link_up) FAIL("Required attribute `up' not set for `host_link' element."); + 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_1: 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; } @@ -6917,7 +6915,7 @@ case 240: YY_RULE_SETUP FAIL("Bad attribute `%s' in `host_link' element start tag.",surf_parse_text); YY_BREAK -case YY_STATE_EOF(AL_surfxml_host___link): +case YY_STATE_EOF(AL_surfxml_host_link): FAIL("EOF in attribute list of `host_link' element."); YY_BREAK @@ -6926,7 +6924,7 @@ case 241: YY_RULE_SETUP { LEAVE; - ETag_surfxml_host___link(); + ETag_surfxml_host_link(); popbuffer(); /* attribute */ switch (YY_START) { case S_surfxml_AS_1: 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; @@ -6942,7 +6940,7 @@ case 243: YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",surf_parse_text[0]); YY_BREAK -case YY_STATE_EOF(E_surfxml_host___link): +case YY_STATE_EOF(E_surfxml_host_link): if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `' expected."); YY_BREAK @@ -7059,21 +7057,21 @@ case 262: case 263: /* rule 263 can match eol */ YY_RULE_SETUP -A_surfxml_cluster_sharing___policy = A_surfxml_cluster_sharing___policy_SHARED; +A_surfxml_cluster_sharing_policy = A_surfxml_cluster_sharing_policy_SHARED; YY_BREAK case 264: /* rule 264 can match eol */ case 265: /* rule 265 can match eol */ YY_RULE_SETUP -A_surfxml_cluster_sharing___policy = A_surfxml_cluster_sharing___policy_FULLDUPLEX; +A_surfxml_cluster_sharing_policy = A_surfxml_cluster_sharing_policy_FULLDUPLEX; YY_BREAK case 266: /* rule 266 can match eol */ case 267: /* rule 267 can match eol */ YY_RULE_SETUP -A_surfxml_cluster_sharing___policy = A_surfxml_cluster_sharing___policy_FATPIPE; +A_surfxml_cluster_sharing_policy = A_surfxml_cluster_sharing_policy_FATPIPE; YY_BREAK case 268: /* rule 268 can match eol */ @@ -7100,14 +7098,14 @@ case 272: case 273: /* rule 273 can match eol */ YY_RULE_SETUP -A_surfxml_cluster_bb___sharing___policy = A_surfxml_cluster_bb___sharing___policy_SHARED; +A_surfxml_cluster_bb_sharing_policy = A_surfxml_cluster_bb_sharing_policy_SHARED; YY_BREAK case 274: /* rule 274 can match eol */ case 275: /* rule 275 can match eol */ YY_RULE_SETUP -A_surfxml_cluster_bb___sharing___policy = A_surfxml_cluster_bb___sharing___policy_FATPIPE; +A_surfxml_cluster_bb_sharing_policy = A_surfxml_cluster_bb_sharing_policy_FATPIPE; YY_BREAK case 276: /* rule 276 can match eol */ @@ -7477,8 +7475,8 @@ YY_RULE_SETUP { if (!AX_surfxml_peer_id) FAIL("Required attribute `id' not set for `peer' element."); if (!AX_surfxml_peer_power) FAIL("Required attribute `power' not set for `peer' element."); - if (!AX_surfxml_peer_bw___in) FAIL("Required attribute `bw_in' not set for `peer' element."); - if (!AX_surfxml_peer_bw___out) FAIL("Required attribute `bw_out' not set for `peer' element."); + if (!AX_surfxml_peer_bw_in) FAIL("Required attribute `bw_in' not set for `peer' element."); + if (!AX_surfxml_peer_bw_out) FAIL("Required attribute `bw_out' not set for `peer' element."); if (!AX_surfxml_peer_lat) FAIL("Required attribute `lat' not set for `peer' element."); LEAVE; STag_surfxml_peer();surfxml_pcdata_ix = 0; ENTER(E_surfxml_peer); } @@ -7488,8 +7486,8 @@ YY_RULE_SETUP { if (!AX_surfxml_peer_id) FAIL("Required attribute `id' not set for `peer' element."); if (!AX_surfxml_peer_power) FAIL("Required attribute `power' not set for `peer' element."); - if (!AX_surfxml_peer_bw___in) FAIL("Required attribute `bw_in' not set for `peer' element."); - if (!AX_surfxml_peer_bw___out) FAIL("Required attribute `bw_out' not set for `peer' element."); + if (!AX_surfxml_peer_bw_in) FAIL("Required attribute `bw_in' not set for `peer' element."); + if (!AX_surfxml_peer_bw_out) FAIL("Required attribute `bw_out' not set for `peer' element."); 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) { @@ -7833,21 +7831,21 @@ case 383: case 384: /* rule 384 can match eol */ YY_RULE_SETUP -A_surfxml_link_sharing___policy = A_surfxml_link_sharing___policy_SHARED; +A_surfxml_link_sharing_policy = A_surfxml_link_sharing_policy_SHARED; YY_BREAK case 385: /* rule 385 can match eol */ case 386: /* rule 386 can match eol */ YY_RULE_SETUP -A_surfxml_link_sharing___policy = A_surfxml_link_sharing___policy_FATPIPE; +A_surfxml_link_sharing_policy = A_surfxml_link_sharing_policy_FATPIPE; YY_BREAK case 387: /* rule 387 can match eol */ case 388: /* rule 388 can match eol */ YY_RULE_SETUP -A_surfxml_link_sharing___policy = A_surfxml_link_sharing___policy_FULLDUPLEX; +A_surfxml_link_sharing_policy = A_surfxml_link_sharing_policy_FULLDUPLEX; YY_BREAK case 389: YY_RULE_SETUP @@ -8094,8 +8092,8 @@ YY_RULE_SETUP { if (!AX_surfxml_ASroute_src) FAIL("Required attribute `src' not set for `ASroute' element."); if (!AX_surfxml_ASroute_dst) FAIL("Required attribute `dst' not set for `ASroute' element."); - if (!AX_surfxml_ASroute_gw___src) FAIL("Required attribute `gw_src' not set for `ASroute' element."); - if (!AX_surfxml_ASroute_gw___dst) FAIL("Required attribute `gw_dst' not set for `ASroute' element."); + if (!AX_surfxml_ASroute_gw_src) FAIL("Required attribute `gw_src' not set for `ASroute' element."); + if (!AX_surfxml_ASroute_gw_dst) FAIL("Required attribute `gw_dst' not set for `ASroute' element."); LEAVE; STag_surfxml_ASroute();surfxml_pcdata_ix = 0; ENTER(S_surfxml_ASroute); } YY_BREAK @@ -8104,8 +8102,8 @@ YY_RULE_SETUP { if (!AX_surfxml_ASroute_src) FAIL("Required attribute `src' not set for `ASroute' element."); if (!AX_surfxml_ASroute_dst) FAIL("Required attribute `dst' not set for `ASroute' element."); - if (!AX_surfxml_ASroute_gw___src) FAIL("Required attribute `gw_src' not set for `ASroute' element."); - if (!AX_surfxml_ASroute_gw___dst) FAIL("Required attribute `gw_dst' not set for `ASroute' element."); + if (!AX_surfxml_ASroute_gw_src) FAIL("Required attribute `gw_src' not set for `ASroute' element."); + 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_9: case S_surfxml_AS_1: case S_surfxml_AS: case S_surfxml_AS_8: case S_surfxml_AS_4: case S_surfxml_AS_6: case S_surfxml_AS_3: SET(S_surfxml_AS_9); break; @@ -8181,34 +8179,34 @@ case 438: case 439: /* rule 439 can match eol */ YY_RULE_SETUP -A_surfxml_link___ctn_direction = A_surfxml_link___ctn_direction_UP; +A_surfxml_link_ctn_direction = A_surfxml_link_ctn_direction_UP; YY_BREAK case 440: /* rule 440 can match eol */ case 441: /* rule 441 can match eol */ YY_RULE_SETUP -A_surfxml_link___ctn_direction = A_surfxml_link___ctn_direction_DOWN; +A_surfxml_link_ctn_direction = A_surfxml_link_ctn_direction_DOWN; YY_BREAK case 442: /* rule 442 can match eol */ case 443: /* rule 443 can match eol */ YY_RULE_SETUP -A_surfxml_link___ctn_direction = A_surfxml_link___ctn_direction_NONE; +A_surfxml_link_ctn_direction = A_surfxml_link_ctn_direction_NONE; YY_BREAK case 444: 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; ENTER(E_surfxml_link___ctn); + 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; ENTER(E_surfxml_link_ctn); } YY_BREAK case 445: 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 */ + 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: case S_surfxml_bypassRoute_2: case S_surfxml_bypassRoute_1: SET(S_surfxml_bypassRoute_2); break; case S_surfxml_route_1: case S_surfxml_route: case S_surfxml_route_2: SET(S_surfxml_route_2); break; @@ -8225,7 +8223,7 @@ case 447: YY_RULE_SETUP FAIL("Bad attribute `%s' in `link_ctn' element start tag.",surf_parse_text); YY_BREAK -case YY_STATE_EOF(AL_surfxml_link___ctn): +case YY_STATE_EOF(AL_surfxml_link_ctn): FAIL("EOF in attribute list of `link_ctn' element."); YY_BREAK @@ -8234,7 +8232,7 @@ case 448: YY_RULE_SETUP { LEAVE; - ETag_surfxml_link___ctn(); + ETag_surfxml_link_ctn(); popbuffer(); /* attribute */ switch (YY_START) { case S_surfxml_bypassRoute: case S_surfxml_bypassRoute_2: case S_surfxml_bypassRoute_1: SET(S_surfxml_bypassRoute_2); break; @@ -8253,7 +8251,7 @@ case 450: YY_RULE_SETUP FAIL("Unexpected character `%c': `' expected.",surf_parse_text[0]); YY_BREAK -case YY_STATE_EOF(E_surfxml_link___ctn): +case YY_STATE_EOF(E_surfxml_link_ctn): if(!ETag_surfxml_include_state()) FAIL("Premature EOF: `' expected."); YY_BREAK @@ -8412,8 +8410,8 @@ YY_RULE_SETUP { if (!AX_surfxml_bypassASroute_src) FAIL("Required attribute `src' not set for `bypassASroute' element."); if (!AX_surfxml_bypassASroute_dst) FAIL("Required attribute `dst' not set for `bypassASroute' element."); - if (!AX_surfxml_bypassASroute_gw___src) FAIL("Required attribute `gw_src' not set for `bypassASroute' element."); - if (!AX_surfxml_bypassASroute_gw___dst) FAIL("Required attribute `gw_dst' not set for `bypassASroute' element."); + if (!AX_surfxml_bypassASroute_gw_src) FAIL("Required attribute `gw_src' not set for `bypassASroute' element."); + if (!AX_surfxml_bypassASroute_gw_dst) FAIL("Required attribute `gw_dst' not set for `bypassASroute' element."); LEAVE; STag_surfxml_bypassASroute();surfxml_pcdata_ix = 0; ENTER(S_surfxml_bypassASroute); } YY_BREAK @@ -8422,8 +8420,8 @@ YY_RULE_SETUP { if (!AX_surfxml_bypassASroute_src) FAIL("Required attribute `src' not set for `bypassASroute' element."); if (!AX_surfxml_bypassASroute_dst) FAIL("Required attribute `dst' not set for `bypassASroute' element."); - if (!AX_surfxml_bypassASroute_gw___src) FAIL("Required attribute `gw_src' not set for `bypassASroute' element."); - if (!AX_surfxml_bypassASroute_gw___dst) FAIL("Required attribute `gw_dst' not set for `bypassASroute' element."); + if (!AX_surfxml_bypassASroute_gw_src) FAIL("Required attribute `gw_src' not set for `bypassASroute' element."); + 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_9: case S_surfxml_AS_1: case S_surfxml_AS: case S_surfxml_AS_8: case S_surfxml_AS_4: case S_surfxml_AS_6: case S_surfxml_AS_3: SET(S_surfxml_AS_9); break; @@ -8532,14 +8530,14 @@ case 491: case 492: /* rule 492 can match eol */ YY_RULE_SETUP -A_surfxml_process_on___failure = A_surfxml_process_on___failure_DIE; +A_surfxml_process_on_failure = A_surfxml_process_on_failure_DIE; YY_BREAK case 493: /* rule 493 can match eol */ case 494: /* rule 494 can match eol */ YY_RULE_SETUP -A_surfxml_process_on___failure = A_surfxml_process_on___failure_RESTART; +A_surfxml_process_on_failure = A_surfxml_process_on_failure_RESTART; YY_BREAK case 495: YY_RULE_SETUP @@ -8812,8 +8810,8 @@ YY_RULE_SETUP case S_surfxml_config_1: case S_surfxml_config: case S_surfxml_config_2: SET(S_surfxml_config_2); break; case S_surfxml_process_1: case S_surfxml_process: case S_surfxml_process_2: SET(S_surfxml_process_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_storage_type_2: case S_surfxml_storage_type: case S_surfxml_storage_type_1: SET(S_surfxml_storage_type_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_storage___type_1: case S_surfxml_storage___type: case S_surfxml_storage___type_2: SET(S_surfxml_storage___type_2); break; } } YY_BREAK @@ -8842,8 +8840,8 @@ YY_RULE_SETUP case S_surfxml_config_1: case S_surfxml_config: case S_surfxml_config_2: SET(S_surfxml_config_2); break; case S_surfxml_process_1: case S_surfxml_process: case S_surfxml_process_2: SET(S_surfxml_process_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_storage_type_2: case S_surfxml_storage_type: case S_surfxml_storage_type_1: SET(S_surfxml_storage_type_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_storage___type_1: case S_surfxml_storage___type: case S_surfxml_storage___type_2: SET(S_surfxml_storage___type_2); break; } } YY_BREAK @@ -8989,7 +8987,7 @@ case YY_STATE_EOF(S_surfxml_AS_8): case YY_STATE_EOF(S_surfxml_AS_10): case YY_STATE_EOF(S_surfxml_AS_13): case YY_STATE_EOF(S_surfxml_AS_15): -case YY_STATE_EOF(S_surfxml_storage___type_1): +case YY_STATE_EOF(S_surfxml_storage_type_1): case YY_STATE_EOF(S_surfxml_storage_1): case YY_STATE_EOF(S_surfxml_host_1): case YY_STATE_EOF(S_surfxml_link_1):