-
Notifications
You must be signed in to change notification settings - Fork 273
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
tcpreplay appears to hang using loop and netmap options #424
Comments
I had to reinstall the OS due to a hardware change (new SSD), which means I had to rebuild/reinstall tcpreplay and netmap. Now the loop functionality is working with the --netmap option. Go figure! |
Interesting. Many Netmap issues are not due to my code. I suspect something in Netmap. I removed the "bug" label for now, but will keep open for a while until I can confirm it works for me. |
I was unable to reproduce with my current version. It may have been fixed somewhere along the way. I'll release 4.3 beta1 soon so you can try it out.
|
I can reproduce this issue. Redhat 7.0, tcpreplay 4.2.6, latest netmap, ixgbe-5.3.3. |
It seems that netmap_tx_queues_empty() keeps returning false after sent a file. |
Reopening for further investigation. |
NETMAP_TX_RING_EMPTY() keeps returning false. One question though, why is netmap_tx_queues_empty() checked only when loop == 1? |
What version of netmap are you using? We may want to open and issue with netmap to see if there has been any changes in this macro. |
NETMAP_TX_RING_EMPTY returning false is same meaning as nm_tx_pending() returning true. netmap api 12 (commit 53caf0a) with redhat 7.0 |
I looked at the netmap/apps/pkt-gen.c (no hang) and found out |
That appears to be new behaviour in pkt-gen.c. It's not the first time that updates are made to netmap that are not backwards compatible. I've had little time to work on this project, but will attempt to free up a day or two next week. Hopefully I can come up with a patch that is backwards compatible with versions of netmap that do not have NS_REPORT defined. |
I looked at history of src/common/netmap.c and
|
As of netmap commit 7b16969f (version 10), should use nm_tx_pending() to determine whether the TX buffers still contain data. Fix is to use nm_tx_pending() rather than NETMAP_TX_RING_EMPTY, unless using an older version of netmap.
Bug #424 Fix compatibility for netmap version 10 and higher
Support for newer versions of netmap. It appears that for version 10 and higher, should use Fixed in PR #522 |
Found that the fix works with |
Bug #424 fix bug in empty TX queue detect
Fixed in PR #424 |
From tcpreplay-users:
Version information:
Command line used:
Platform:
Make & model of the network card:
Description of problem:
Thanks.
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot_______________________________________________
Tcpreplay-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tcpreplay-users
Support Information: http://tcpreplay.synfin.net/trac/wiki/Support
The text was updated successfully, but these errors were encountered: