svn commit: r340461 - in stable/12/sys/dev: netmap virtio/network
Rodney W. Grimes
freebsd at pdx.rh.CN85.dnsmgr.net
Thu Nov 15 20:46:47 UTC 2018
> Author: vmaffione
> Date: Thu Nov 15 18:51:37 2018
> New Revision: 340461
> URL: https://svnweb.freebsd.org/changeset/base/340461
>
> Log:
> MFC :r340436
>
> 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.
>
> Sponsored by: Sunny Valley Networks
> Differential Revision: https://reviews.freebsd.org/D17916
> Approved by: re (gjb)
Thank you for getting this merged early, intime for RC1.
--
Rod Grimes rgrimes at freebsd.org
More information about the svn-src-all
mailing list