-
Notifications
You must be signed in to change notification settings - Fork 29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unified packet capture interface, take 2 #166
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #166 +/- ##
==========================================
+ Coverage 61.62% 67.77% +6.15%
==========================================
Files 64 66 +2
Lines 5300 5741 +441
==========================================
+ Hits 3266 3891 +625
+ Misses 2034 1850 -184 ☔ View full report in Codecov by Sentry. |
Working on the mac support reminded me of something. When I first started working on this new interface I had a "sniff" mode which used linux's raw packet interface with a promiscuous NIC to capture packets destined for a different host. I originally did this because that is how we were running one of our data modes at LWA1. I've since moved on to multicast and I now wonder if "sniff" is still a feature worth having. |
There is only one failure in |
COR packet format updates
MacOS is better now but there still seems to be intermittent problems. They sometimes happen when I test locally but it isn't clear why. |
Just a note that I'm able to reproduce this error on my little MacBook Air:
Is that the only Mac error you're seeing on this branch now? |
I think this faithfully brings the changes from `socket-deinline` and `socket-reference` into `ibverb-support`. Test results seem to be unchanged. One change from `socket-reference` that may have been lost is that we deleted the `pid_t` member from `BFudpcapture_impl` and `BFudptransmit_impl` but it's still present in the corresponding `packet_capture` and `packet_writer` objects.
That's interesting. I just pulled down the recent changes and gave it a shot on my laptop again. The first time I ended up with no failures but this warning:
Second run did not show that warnings and there we still no failures. Third run failed with:
Fourth run also failed as the same place. Fifth , sixth, and seventh runs were all ok. Eighth failed. I don't really get it. |
Oof. I've seen the I guess I've been gravitating toward a timing/race condition type of hypothesis. I notice in the send loops in the tests, there's a |
I usually use a As for blocking/non-blocking the only thing that should block would be the ring that connects something like |
clarify ctags install
Further clarification on ctags install
Clarifications to docs instructions
Update docs
wording
Add cudaver to docs
Update python requirements
This PR provides a unified packet capture interface that makes it easier to add new packet formats to Bifrost and to read packet formats from the network (unicast or multicast) or from disk. This also includes a generalization of the packet writer interface. This PR changes the Bifrost API in a couple of ways:
bifrost.udp_capture.UDPCapture is now bifrost.packet_capture.UDPCapture
there is a new PacketCaptureCallback class that wraps the callbacks
bifrost.udp_transmit is now bifrost.packet_writer
This should also address the segfault I was running into in #137.