The Netvsc Poll Mode driver (PMD) provides support for the paravirtualized
network device for Microsoft Hyper-V. It can be used with
-Window Server 2008/2012/2016, Windows 10 and Azure cloud.
+Window Server 2008/2012/2016, Windows 10.
The device offers multi-queue support (if kernel and host support it),
checksum and segmentation offloads.
* The PMD supports multicast packets and promiscuous mode subject to restrictions on the host.
In order to this to work, the guest network configuration on Hyper-V must be configured to allow MAC address
- spoofing. This option is not available on Azure.
+ spoofing.
* The device has only a single MAC address.
Hyper-V driver does not support MAC or VLAN filtering because the Hyper-V host does not support it.
* VLAN tags are always stripped and presented in mbuf tci field.
-* The Hyper-V driver does not use or support Link State or Rx interrupt.
+* The Hyper-V driver does not use or support interrupts. Link state change
+ callback is done via change events in the packet ring.
* The maximum number of queues is limited by the host (currently 64).
When used with 4.16 kernel only a single queue is available.
-* This driver is intended for use with synthetic path only.
- Accelerated Networking (SR-IOV) acceleration is not supported yet.
- Use the VDEV_NETVSC device for accelerated networking instead.
-
+* This driver supports SR-IOV network acceleration.
+ If SR-IOV is enabled then the driver will transparently manage the interface,
+ and send and receive packets using the VF path.
+ The VDEV_NETVSC and FAILSAFE drivers are *not* used when using netvsc PMD.
Installation
------------
.. Note::
- The dpkd-devbind.py script should not be used. It only handles PCI devices.
+ The dpdk-devbind.py script can not be used since it only handles PCI devices.
Prerequisites
* Linux kernel support for UIO on vmbus is done with the uio_hv_generic driver.
Full support of multiple queues requires the 4.17 kernel. It is possible
to use the netvsc PMD with 4.16 kernel but it is limited to a single queue.
+
+
+Netvsc PMD arguments
+--------------------
+
+The user can specify below argument in devargs.
+
+#. ``latency``:
+
+ A netvsc device uses a mailbox page to indicate to the host that there
+ is something in the transmit queue. The host scans this page at a
+ periodic interval. This parameter allows adjusting the value that
+ is used by the host. Smaller values improve transmit latency, and larger
+ values save CPU cycles. This parameter is in microseconds.
+ If the value is too large or too small it will be
+ ignored by the host. (Default: 50)