| #
997b054c
|
| 06-Jun-2014 |
Luigi Rizzo <luigi@FreeBSD.org> |
introduce mbq_lock() and mbq_unlock() for the mbq, so it is easier to buil the same code on linux (this generalizes the change in svn 267142)
MFC after: 3 days
|
| #
89cc2556
|
| 06-Jun-2014 |
Luigi Rizzo <luigi@FreeBSD.org> |
align comments with the ones in our development trunk
|
| #
441ab64f
|
| 06-Jun-2014 |
Luigi Rizzo <luigi@FreeBSD.org> |
prevent a panic when the netdev/ifp is not set in attach (internal c63a7b85)
MFC after: 3 days
|
| #
dc8a95e6
|
| 06-Jun-2014 |
Andrey Zonov <zont@FreeBSD.org> |
Use mtx_lock_spin/mtx_unlock_spin primitives on spin lock
Reviewed by: luigi MFC after: 1 week
|
| #
43ed1d3c
|
| 05-Jun-2014 |
Luigi Rizzo <luigi@FreeBSD.org> |
whitespace change: remove trailing whitespace
|
| #
6cec9cad
|
| 03-Jun-2014 |
Peter Grehan <grehan@FreeBSD.org> |
MFC @ r266724
An SVM update will follow this.
|
| #
3b8f0845
|
| 28-Apr-2014 |
Simon J. Gerraty <sjg@FreeBSD.org> |
Merge head
|
| #
84e51a1b
|
| 23-Apr-2014 |
Alan Somers <asomers@FreeBSD.org> |
IFC @264767
|
| #
bf775ebb
|
| 25-Feb-2014 |
Peter Grehan <grehan@FreeBSD.org> |
MFC @ r259635
This brings in the "-w" option from bhyve to ignore unknown MSRs. It will make debugging Linux guests a bit easier.
Suggested by: Willem Jan Withagen (wjw at digiware nl)
|
| #
c98bb15d
|
| 21-Feb-2014 |
Glen Barber <gjb@FreeBSD.org> |
MFH: tracking commit
Sponsored by: The FreeBSD Foundation
|
| #
5748b897
|
| 19-Feb-2014 |
Martin Matuska <mm@FreeBSD.org> |
Merge head up to r262222 (last merge was incomplete).
|
| #
89e3fd52
|
| 18-Feb-2014 |
Luigi Rizzo <luigi@FreeBSD.org> |
two small changes: - intercept FIONBIO and FIOASYNC ioctls on netmap file descriptors. libpcap calls them to set non blocking I/O on the file descriptor, for netmap this is a no-op because there
two small changes: - intercept FIONBIO and FIOASYNC ioctls on netmap file descriptors. libpcap calls them to set non blocking I/O on the file descriptor, for netmap this is a no-op because there is no read/write, but not intercepting would cause fcntl() to return -1 - rate limit and put under netmap.verbose some messages that occur when threads use concurrently the same file descriptor.
show more ...
|
| #
f0ea3689
|
| 15-Feb-2014 |
Luigi Rizzo <luigi@FreeBSD.org> |
This new version of netmap brings you the following:
- netmap pipes, providing bidirectional blocking I/O while moving 100+ Mpps between processes using shared memory channels (no mistake: over
This new version of netmap brings you the following:
- netmap pipes, providing bidirectional blocking I/O while moving 100+ Mpps between processes using shared memory channels (no mistake: over one hundred million. But mind you, i said *moving* not *processing*);
- kqueue support (BHyVe needs it);
- improved user library. Just the interface name lets you select a NIC, host port, VALE switch port, netmap pipe, and individual queues. The upcoming netmap-enabled libpcap will use this feature.
- optional extra buffers associated to netmap ports, for applications that need to buffer data yet don't want to make copies.
- segmentation offloading for the VALE switch, useful between VMs.
and a number of bug fixes and performance improvements.
My colleagues Giuseppe Lettieri and Vincenzo Maffione did a substantial amount of work on these features so we owe them a big thanks.
There are some external repositories that can be of interest:
https://code.google.com/p/netmap our public repository for netmap/VALE code, including linux versions and other stuff that does not belong here, such as python bindings.
https://code.google.com/p/netmap-libpcap a clone of the libpcap repository with netmap support. With this any libpcap client has access to most netmap feature with no recompilation. E.g. tcpdump can filter packets at 10-15 Mpps.
https://code.google.com/p/netmap-ipfw a userspace version of ipfw+dummynet which uses netmap to send/receive packets. Speed is up in the 7-10 Mpps range per core for simple rulesets.
Both netmap-libpcap and netmap-ipfw will be merged upstream at some point, but while this happens it is useful to have access to them.
And yes, this code will be merged soon. It is infinitely better than the version currently in 10 and 9.
MFC after: 3 days
show more ...
|
| #
485ac45a
|
| 04-Feb-2014 |
Peter Grehan <grehan@FreeBSD.org> |
MFC @ r259205 in preparation for some SVM updates. (for real this time)
|
| #
945a2095
|
| 20-Jan-2014 |
Kai Wang <kaiw@FreeBSD.org> |
MFH@260917.
|
| #
4f18ae67
|
| 19-Jan-2014 |
Glen Barber <gjb@FreeBSD.org> |
MFH: Tracking commit (r260891)
Sponsored by: The FreeBSD Foundation
|
| #
f2637526
|
| 16-Jan-2014 |
Luigi Rizzo <luigi@FreeBSD.org> |
netmap_user.h: add separate rx/tx ring indexes add ring specifier in nm_open device name
netmap.c, netmap_vale.c more consistent errno numbers
netmap_generic.c correctly handle failure
netmap_user.h: add separate rx/tx ring indexes add ring specifier in nm_open device name
netmap.c, netmap_vale.c more consistent errno numbers
netmap_generic.c correctly handle failure in registering interfaces.
tools/tools/netmap/ massive cleanup of the example programs (a lot of common code is now in netmap_user.h.)
nm_util.[ch] are going away soon. pcap.c will also go when i commit the native netmap support for libpcap.
show more ...
|
| #
e01ff621
|
| 09-Jan-2014 |
Glen Barber <gjb@FreeBSD.org> |
MFH: tracking commit (head@r260486)
Sponsored by: The FreeBSD Foundation
|
| #
339f59c0
|
| 09-Jan-2014 |
Gleb Smirnoff <glebius@FreeBSD.org> |
Fix build with VIMAGE.
|
| #
fb25194f
|
| 07-Jan-2014 |
Luigi Rizzo <luigi@FreeBSD.org> |
fix use after free when releasing a netmap adapter.
Submitted by: Giuseppe Lettieri
|
| #
17885a7b
|
| 06-Jan-2014 |
Luigi Rizzo <luigi@FreeBSD.org> |
It is 2014 and we have a new version of netmap. Most relevant features:
- netmap emulation on any NIC, even those without native netmap support.
On the ixgbe we have measured about 4Mpps/core/que
It is 2014 and we have a new version of netmap. Most relevant features:
- netmap emulation on any NIC, even those without native netmap support.
On the ixgbe we have measured about 4Mpps/core/queue in this mode, which is still a lot more than with sockets/bpf.
- seamless interconnection of VALE switch, NICs and host stack.
If you disable accelerations on your NIC (say em0)
ifconfig em0 -txcsum -txcsum
you can use the VALE switch to connect the NIC and the host stack:
vale-ctl -h valeXX:em0
allowing sharing the NIC with other netmap clients.
- THE USER API HAS SLIGHTLY CHANGED (head/cur/tail pointers instead of pointers/count as before). This was unavoidable to support, in the future, multiple threads operating on the same rings. Netmap clients require very small source code changes to compile again. On the plus side, the new API should be easier to understand and the internals are a lot simpler.
The manual page has been updated extensively to reflect the current features and give some examples.
This is the result of work of several people including Giuseppe Lettieri, Vincenzo Maffione, Michio Honda and myself, and has been financially supported by EU projects CHANGE and OPENLAB, from NetApp University Research Fund, NEC, and of course the Universita` di Pisa.
show more ...
|
| #
256d9417
|
| 18-Dec-2013 |
Gleb Smirnoff <glebius@FreeBSD.org> |
Fix build.
|
| #
f9790aeb
|
| 15-Dec-2013 |
Luigi Rizzo <luigi@FreeBSD.org> |
split netmap code according to functions: - netmap.c base code - netmap_freebsd.c FreeBSD-specific code - netmap_generic.c emulate netmap over standard drivers - netmap_mbq.c simple mbuf tailq - ne
split netmap code according to functions: - netmap.c base code - netmap_freebsd.c FreeBSD-specific code - netmap_generic.c emulate netmap over standard drivers - netmap_mbq.c simple mbuf tailq - netmap_mem2.c memory management - netmap_vale.c VALE switch
simplify devce-specific code
show more ...
|
| #
50d3286d
|
| 11-Nov-2013 |
Gleb Smirnoff <glebius@FreeBSD.org> |
Merge head r232040 through r258006.
|
| #
5864b3a5
|
| 06-Nov-2013 |
Luigi Rizzo <luigi@FreeBSD.org> |
remove a debugging message
|