I believe the reason I did it this way, is because its possible that upon immediately starting, the plugin may die again (connection fizzles). If the packet was pulled and put on this channel, then the plugin dies, the packet is then lost. The goroutine method here guarantees that the packet to be retained must be pulled off before it'll consider it "used".