svn commit: r340436 - in head/sys/dev: netmap virtio/network

Vincenzo Maffione vmaffione at freebsd.org
Wed Nov 14 20:46:36 UTC 2018


On Wed, Nov 14, 2018, 8:44 PM Rodney W. Grimes <
freebsd at pdx.rh.cn85.dnsmgr.net wrote:

> > Author: vmaffione
> > Date: Wed Nov 14 15:39:48 2018
> > New Revision: 340436
> > URL: https://svnweb.freebsd.org/changeset/base/340436
> >
> > Log:
> >   vtnet: fix netmap support
> >
> >   netmap(4) support for vtnet(4) was incomplete and had multiple bugs.
> >   This commit fixes those bugs to bring netmap on vtnet in a functional
> state.
> >
> >   Changelist:
> >     - handle errors returned by virtqueue_enqueue() properly (they were
> >       previously ignored)
> >     - make sure netmap XOR rest of the kernel access each virtqueue.
> >     - compute the number of netmap slots for TX and RX separately,
> according to
> >       whether indirect descriptors are used or not for a given virtqueue.
> >     - make sure sglist are freed according to their type (mbufs or netmap
> >       buffers)
> >     - add support for mulitiqueue and netmap host (aka sw) rings.
> >     - intercept VQ interrupts directly instead of intercepting them in
> txq_eof
> >       and rxq_eof. This simplifies the code and makes it easier to make
> sure
> >       taskqueues are not running for a VQ while it is in netmap mode.
> >     - implement vntet_netmap_config() to cope with changes in the number
> of queues.
> >
> >   Reviewed by:        bryanv
> >   Approved by:        gnn (mentor)
> >   MFC after:  3 days
> >   Sponsored by:       Sunny Valley Networks
> >   Differential Revision:      https://reviews.freebsd.org/D17916
>
> I would like to get some wider test of this in ^head/
> specifically with use in a bhyve guest before we do
> an early merge to stable/12 so that this can be in
> the next build.
>
> If you are capable of testing this within bhyve as a guest
> please do so and provide feedback.  It does not need to be
> a ^/head host, just the guest needs to be using vtnet
> nic's.
>
>
The tests I did are reported here https://reviews.freebsd.org/D17916 , and
consist of one or two ^/head guests, each
one having a vtnet NIC. The hypervisor is qemu-kvm, running in the host.
Unfortunately I cannot do tests with bhyve as an hypervisor, because that
requires a FreeBSD host (e.g., ^/head , stable/12 or stable/11),
and at the moment I don't have one.

Cheers,
  Vincenzo


More information about the svn-src-head mailing list