svn commit: r48019 - head/en_US.ISO8859-1/htdocs/news/status
Benjamin Kaduk
bjk at FreeBSD.org
Fri Jan 15 03:45:10 UTC 2016
Author: bjk
Date: Fri Jan 15 03:45:09 2016
New Revision: 48019
URL: https://svnweb.freebsd.org/changeset/doc/48019
Log:
Add FreeBSD Integration Services entry from Dexuan Cui
Modified:
head/en_US.ISO8859-1/htdocs/news/status/report-2015-10-2015-12.xml
Modified: head/en_US.ISO8859-1/htdocs/news/status/report-2015-10-2015-12.xml
==============================================================================
--- head/en_US.ISO8859-1/htdocs/news/status/report-2015-10-2015-12.xml Fri Jan 15 01:59:38 2016 (r48018)
+++ head/en_US.ISO8859-1/htdocs/news/status/report-2015-10-2015-12.xml Fri Jan 15 03:45:09 2016 (r48019)
@@ -2206,4 +2206,134 @@
</task>
</help>
</project>
+
+ <project cat='kern'>
+ <title>&os; Integration Services (BIS) </title>
+
+ <contact>
+ <person>
+ <name>
+ <given>Dexuan</given>
+ <common>Cui</common>
+ </name>
+ <email>decui at microsoft.com</email>
+ </person>
+
+ <person>
+ <name>
+ <given>Hongjiang</given>
+ <common>Zhang</common>
+ </name>
+ <email>honzhan at microsoft.com</email>
+ </person>
+ </contact>
+
+ <links>
+ <url href="https://wiki.FreeBSD.org/HyperV">&os; Virtual Machines on Microsoft Hyper-V</url>
+ <url href="https://technet.microsoft.com/en-us/library/dn531030.aspx">Linux and &os; Virtual Machines on Hyper-V</url>
+ </links>
+
+ <body>
+ <p>When &os; virtual machines (VMs) run on Hyper-V, in order
+ to get the best network and storage performance and make full use
+ of all the benefits that Hyper-V provides, it is recommended to
+ use Hyper-V synthetic devices. The collection of drivers that are
+ required to run Hyper-V synthetic devices in &os; are known as
+ &os; Integration Services (BIS). Some of the BIS drivers (like
+ network and storage drivers) have existed in &os; 9.x and 10.x for
+ years, but there are still some performance and stability issues
+ and bugs. Additionally, compared with Windows and Linux VMs, the
+ current BIS lacks some important features, such as the virtual
+ Receive Side Scaling (vRSS) support in the Hyper-V network driver
+ and the support for UEFI VM (boot from UEFI), among others.</p>
+
+ <p>We are now working more on the issues and performance
+ tuning to make &os; VM run better on Hyper-V and the Hyper-V based
+ cloud platform Azure.</p>
+
+ <p>Our work during 2015Q4 is documented below:</p>
+
+ <ul>
+ <li>Optimizing the VMBus driver and Hyper-V network driver
+ for performance:
+ <ul>
+ <li>Sent out patches to enable <tt>INTR_MPSAFE</tt> for
+ the interrupt handling thread, speed up
+ relid-to-channel lookup in the thread by map table,
+ and optimize the VMBus ringbuffer writable
+ notification to the host.</li>
+
+ <li>Developing a patch to enable the virtual Receive
+ Side Scaling (vRSS) for Hyper-V network device driver.
+ This will greatly improve the network performance for
+ SMP virtual machine (VM).</li>
+
+ <li>Sent out a patch to enable the Hyper-V timer, which
+ will improve the accuracy of timekeeping when &os; VMs
+ run on Hyper-V.</li>
+ </ul>
+ </li>
+
+ <li>Fixing bugs and cleaning up the code:
+ <ul>
+ <li>Fixed a bug in checksum offloading (PR 203630
+ — [Hyper-V] [nat] [tcp] 10.2 NAT bug in TCP stack
+ or hyperv netsvc driver) in the Hyper-V network driver,
+ making &os; VM based NAT gateways work more reliably.</li>
+
+ <li>Fixed a serialization issue in the initialization of
+ VMBus devices, fixing PR 205156 ([Hyper-V] NICs' (hn0,
+ hn1) MAC addresses can appear in an uncertain way across
+ reboot).</li>
+
+ <li>Fixed a KVP (Key-Value Pair) issue (retrieving a
+ key's value can hang for an uncertain period of
+ time).</li>
+
+ <li>Added ioctl support for SIOCGIFMEDIA for the Hyper-V
+ network driver, fixing PR 187006 ([Hyper-V] dynamic
+ address (DHCP) obtaining doesn't work on HYPER-V OS
+ 2012 R2).</li>
+
+ <li>Sent out patches to add an interrupt counter for
+ Hyper-V VMBus interrupts (so the user can easily get
+ the statistical information about VMBus interrupts),
+ and fix the KVP daemon's poll timeout (so the daemon
+ will avoid unnecessary polling every 100
+ milliseconds.</li>
+
+ <li>Identified a TSC calibration issue: the i8254 PIT
+ timer emulation of Hyper-V is not fully reliable, so
+ the Hyper-V time counter should be used to calibrate
+ the TSC. A patch was drafted. With the patch, it looks
+ the warning kernel message (e.g., "calcru: runtime
+ went backwards from 46204978 usec to 23362331 usec for
+ pid 0 (kernel)") will go away, and the time-based
+ tracing of Dtrace will be more accurate.</li>
+ </ul>
+ </li>
+
+ <li>We plan to add support for UEFI VMs (a.k.a., Hyper-V
+ Generation-2 VMs). Currently some issues and to-do items were
+ identified: e.g., we cannot use the i8254 PIT to calibrate the
+ TSC because the i8254 PIT does not exist in a UEFI VM, and we
+ need to add support for the Hyper-V synthetic
+ keyboard/mouse/framebuffer device.</li>
+
+ <li>We are working on a disk detection issue: when a &os; VM
+ runs on a Windows Server 2016 Technical Preview host, the VM
+ will detect 16 disks whereas only 1 disk is configured for the
+ VM. Due to this issue, VMs running on these hosts can fail to
+ boot. A workaround patch was made and we are trying to make a
+ formal fix.</li>
+
+ <li>We are tidying up some internal BIS test cases and plan
+ to publish them on github.</li>
+ </ul>
+ </body>
+
+ <sponsor>
+ Microsoft
+ </sponsor>
+ </project>
</report>
More information about the svn-doc-head
mailing list