vm-virtio: Create virtio-net device

In order to provide connectivity through network interface between
host and guest, this patch introduces the virtio-net backend.

This code is based on Firecracker commit
d4a89cdc0bd2867f821e3678328dabad6dd8b767

It is a trimmed down version of the original files as it removes the
rate limiter support. It has been ported to support vm-memory crate
and the epoll handler has been modified in order to run a dedicated
epoll loop from the device itself. This epoll loop runs in its own
dedicated thread.

Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
This commit is contained in:
Sebastien Boeuf
2019-05-07 17:26:37 -07:00
committed by Samuel Ortiz
parent 1d450c527f
commit 6d27cfb3b6
3 changed files with 597 additions and 0 deletions
+2
View File
@@ -10,6 +10,8 @@ devices = { path = "../devices" }
epoll = "=4.0.1"
libc = ">=0.2.39"
log = "*"
net_gen = { path = "../net_gen" }
net_util = { path = "../net_util" }
pci = { path = "../pci" }
tempfile = ">=3.0.2"
virtio-bindings = { path = "../virtio-bindings" }