diff --git a/src/runtime2/component/component_context.rs b/src/runtime2/component/component_context.rs index 2c3f6870dbcc6e49553b8daeedc118627150ab69..8ed701cd2cf1427747cb35dfab60dcf2b9fd4093 100644 --- a/src/runtime2/component/component_context.rs +++ b/src/runtime2/component/component_context.rs @@ -137,7 +137,6 @@ impl CompCtx { let peer_index = self.get_peer_index_by_id(peer_id).unwrap(); let peer = &mut self.peers[peer_index]; peer.num_associated_ports -= 1; - println!(" ****** DEBUG: Removed peer {:?} from {:?}, now at {}", peer.id, self_id, peer.num_associated_ports); if peer.num_associated_ports == 0 { let mut peer = self.peers.remove(peer_index); if let Some(key) = peer.handle.decrement_users() { diff --git a/src/runtime2/component/component_pdl.rs b/src/runtime2/component/component_pdl.rs index c0effb7fd129d39a2d8cb625cf7c1c26ad0a5d05..f42259ea5a5a711d30d44cd09e1f4ab459aba2c8 100644 --- a/src/runtime2/component/component_pdl.rs +++ b/src/runtime2/component/component_pdl.rs @@ -679,7 +679,8 @@ impl CompPDL { } } } else { - // Peer is a different component + // Peer is a different component. We'll deal with sending the + // appropriate messages later let peer_handle = creator_ctx.get_peer_handle(created_port_info.peer_comp_id); let peer_info = creator_ctx.get_peer(peer_handle); created_ctx.add_peer(pair.created_handle, sched_ctx, peer_info.id, Some(&peer_info.handle)); @@ -739,6 +740,7 @@ impl CompPDL { let peer_port_handle = creator_ctx.get_port_handle(created_port_info.peer_port_id); let peer_port_info = creator_ctx.get_port_mut(peer_port_handle); peer_port_info.peer_comp_id = created_ctx.id; + peer_port_info.peer_port_id = created_port_info.self_id; creator_ctx.add_peer(peer_port_handle, sched_ctx, created_ctx.id, None); } } diff --git a/src/runtime2/runtime.rs b/src/runtime2/runtime.rs index ffee9f5038c8faf3758730e71870b54862dccccf..5b093be34c844f31be546b7853789b2f815dfe50 100644 --- a/src/runtime2/runtime.rs +++ b/src/runtime2/runtime.rs @@ -113,7 +113,6 @@ impl CompHandle { let old_count = self.num_handles.fetch_sub(1, Ordering::AcqRel); let new_count = old_count - 1; dbg_code!(self.decremented = true); - println!(" ****** DEBUG [handle]: Decremented count to {} for {:?}", new_count, self.id); if new_count == 0 { return Some(unsafe{ self.id.upgrade() }); } diff --git a/src/runtime2/scheduler.rs b/src/runtime2/scheduler.rs index 949372cab20039bb34bd20b88e5872af73ae32f8..1e02cfa0db92610c63a8e2ac8800acd22fcd9ae3 100644 --- a/src/runtime2/scheduler.rs +++ b/src/runtime2/scheduler.rs @@ -28,6 +28,11 @@ impl<'a> SchedulerCtx<'a> { pub(crate) fn log(&self, text: &str) { println!("[s:{:02}, c:{:03}] {}", self.id, self.comp, text); } + + // TODO: Obviously remove, but useful for testing + pub(crate) fn log_special(&self, text: &str) { + println!("[s:{:02}, c:{:03}] *** *** {}", self.id, self.comp, text); + } } impl Scheduler { @@ -105,7 +110,6 @@ impl Scheduler { let old_count = component.public.num_handles.fetch_sub(1, Ordering::AcqRel); let new_count = old_count - 1; - println!(" ****** DEBUG [ sched]: Decremented count to {} for {:?}", new_count, component.ctx.id); if new_count == 0 { sched_ctx.runtime.destroy_component(comp_key); return; diff --git a/src/runtime2/tests/mod.rs b/src/runtime2/tests/mod.rs index 8aee4a792cdff940b931d4769ac3f0df4fbb30b6..365aaf681f9f85c26a180f637ecfca2827dfbebd 100644 --- a/src/runtime2/tests/mod.rs +++ b/src/runtime2/tests/mod.rs @@ -31,7 +31,7 @@ fn test_component_creation() { } #[test] -fn test_component_communication_b() { +fn test_component_communication() { let pd = ProtocolDescription::parse(b" primitive sender(out o, u32 outside_loops, u32 inside_loops) { u32 outside_index = 0;