From cd7fe06b09d94fb6590a920af98c2044f6bcd6cc Mon Sep 17 00:00:00 2001 From: Martin Quinson Date: Thu, 24 Mar 2016 20:39:52 +0100 Subject: [PATCH 1/1] Fix Fullduplex links with NS3 Do so by unspecializing the parsing of NS3 links compared to other models. => double win! --- src/surf/network_ns3.cpp | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/src/surf/network_ns3.cpp b/src/surf/network_ns3.cpp index 99ca278708..fb715bde5b 100644 --- a/src/surf/network_ns3.cpp +++ b/src/surf/network_ns3.cpp @@ -65,18 +65,6 @@ static void simgrid_ns3_add_host(simgrid::s4u::Host& host) host.extension_set(NS3_EXTENSION_ID, ns3host); } -static void parse_ns3_add_link(sg_platf_link_cbarg_t link) -{ - XBT_DEBUG("NS3_ADD_LINK '%s'",link->id); - - Link *l = surf_network_model->createLink(link->id, link->bandwidth, link->latency, link->policy, link->properties); - if (link->bandwidth_trace) - l->setBandwidthTrace(link->latency_trace); - if (link->latency_trace) - l->setLatencyTrace(link->latency_trace); - if (link->state_trace) - l->setStateTrace(link->state_trace); -} static void simgrid_ns3_add_router(simgrid::surf::NetCard* router) { const char* router_id = router->name(); @@ -249,7 +237,7 @@ NetworkNS3Model::NetworkNS3Model() : NetworkModel() { routing_model_create(NULL); simgrid::s4u::Host::onCreation.connect(simgrid_ns3_add_host); simgrid::surf::netcardCreatedCallbacks.connect(simgrid_ns3_add_router); - simgrid::surf::on_link.connect (parse_ns3_add_link); + simgrid::surf::on_link.connect(netlink_parse_init); simgrid::surf::on_cluster.connect (&parse_ns3_add_cluster); simgrid::surf::asCreatedCallbacks.connect(parse_ns3_add_AS); simgrid::surf::on_postparse.connect(&create_ns3_topology); //get_one_link_routes @@ -422,7 +410,7 @@ int NetworkNS3Action::unref() if (action_hook.is_linked()) p_stateSet->erase(p_stateSet->iterator_to(*this)); XBT_DEBUG ("Removing action %p", this); - delete this; + delete this; return 1; } return 0; -- 2.20.1