Date: Tue, 23 Jun 2015 21:53:32 +0200 From: Stefano Garzarella <stefanogarzarella@gmail.com> To: soc-status@freebsd.org Cc: Luigi Rizzo <rizzo@iet.unipi.it>, Peter Grehan <grehan@freebsd.org> Subject: ptnetmap on bhyve status report Message-ID: <CAO0mX5a=q%2BvqgGnDNWMsTZXZAeG6Gvn0UpC6gzZnR0q--sB=bw@mail.gmail.com>
next in thread | raw e-mail | index | archive | help
Dear All, I=E2=80=99m finished to implement ptnetmap on top of virtio-net. The FreeBSD code is available on https://svnweb.freebsd.org/socsvn/soc2015/stefano/ I tested it with FreeBSD and Linux guest and QEMU-KVM host. I tried to do very small changes in the virtio-net device driver, so the major modifications are in the sys/dev/netmap/if_vtnet_netmap.h I used virtio-net device to exchange notification between host and guest through interrupt (host -> guest) and iowrite (guest -> host), and ptnetmap-memdev to share netmap memory. ptnetmap-memdev is a PCI device that expose, through PCI_BAR, the netmap memory allocator to the guest. I had the same performance of previous implementation (with e1000): 24 Mpps with VALE ports, up to 50 Mpps with netmap-pipes and 14.88 Mpps (line-rate) with 10-Gbps NIC (ixgbe). I'm going to start the next step: implement the ptnetmap-memdev frontend in bhyve to map (through PCI_BAR) the netmap memory into the guest. The device driver for the guest is already done, because I used it with QEMU-KVM. Thanks, Stefano Garzarella --=20 *Stefano Garzarella* Software Engineer e-mail: stefano.garzarella@gmail.com github: http://github.com/stefano-garzarella linkedin: http://it.linkedin.com/pub/stefano-garzarella
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAO0mX5a=q%2BvqgGnDNWMsTZXZAeG6Gvn0UpC6gzZnR0q--sB=bw>