From owner-svn-doc-all@FreeBSD.ORG Mon Mar 31 19:55:45 2014 Return-Path: Delivered-To: svn-doc-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 80BE6238; Mon, 31 Mar 2014 19:55:45 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6D5F2D97; Mon, 31 Mar 2014 19:55:45 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.8/8.14.8) with ESMTP id s2VJtj07057151; Mon, 31 Mar 2014 19:55:45 GMT (envelope-from pgj@svn.freebsd.org) Received: (from pgj@localhost) by svn.freebsd.org (8.14.8/8.14.8/Submit) id s2VJtjVR057150; Mon, 31 Mar 2014 19:55:45 GMT (envelope-from pgj@svn.freebsd.org) Message-Id: <201403311955.s2VJtjVR057150@svn.freebsd.org> From: Gabor Pali Date: Mon, 31 Mar 2014 19:55:45 +0000 (UTC) To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r44402 - head/en_US.ISO8859-1/htdocs/news/status X-SVN-Group: doc-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-doc-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire doc trees \(except for " user" , " projects" , and " translations" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 31 Mar 2014 19:55:45 -0000 Author: pgj Date: Mon Mar 31 19:55:44 2014 New Revision: 44402 URL: http://svnweb.freebsd.org/changeset/doc/44402 Log: - Add a 2014Q1 report on the PCI SR-IOV infrastructure Submitted by: rstone Modified: head/en_US.ISO8859-1/htdocs/news/status/report-2014-01-2014-03.xml Modified: head/en_US.ISO8859-1/htdocs/news/status/report-2014-01-2014-03.xml ============================================================================== --- head/en_US.ISO8859-1/htdocs/news/status/report-2014-01-2014-03.xml Mon Mar 31 18:52:57 2014 (r44401) +++ head/en_US.ISO8859-1/htdocs/news/status/report-2014-01-2014-03.xml Mon Mar 31 19:55:44 2014 (r44402) @@ -18,7 +18,7 @@

Thanks to all the reporters for the excellent work! This report - contains 6 entries and we hope you enjoy reading it.

+ contains 7 entries and we hope you enjoy reading it.

The deadline for submissions covering between April and June 2014 is July 7th, 2014.

@@ -31,6 +31,12 @@ + kern + + Kernel + + + ports Ports @@ -377,4 +383,66 @@ Midori). + + + PCI SR-IOV Infrastructure + + + + + Ryan + Stone + + rstone@FreeBSD.org + + + + + Work in progress on GitHub + + + +

PCI Single Root I/O Virtualization (SR-IOV) is an optional part + of the PCIe standard that provides hardware acceleration for the + virtualization of PCIe devices. When SR-IOV is in use, a + function in a PCI device (known as a Physical Function, or PF) + will present multiple Virtual PCI Functions (VF) on the PCI bus. + These VFs are fully independent PCI devices that have + access to the resources of the PF. For example, on a network + interface card VFs could transmit and receive packets + independent of the PF.

+ +

The most obvious use case for SR-IOV is virtualization. A + hypervisor like bhyve could instantiate a VF for every VM and + use PCI passthrough to assign the VFs to the VMs. This would + allow multiple VMs to share access to the PCI device without + having to do any expensive communication with the hypervisor, + greatly increasing performance of performing I/O from a VM.

+ +

There are two parts to this project. The first is implementing + an API in the PCI subsystem for the creating VFs and configuring + standard PCI features like BARs. The second part is updating + individual drivers for PCI devices that support SR-IOV to + configure their VFs. For example, a network interface driver + will typically have to assign a MAC address to a VF and + configure the interface to route packets destined for that MAC + address to the VF.

+ +

At this point only SR-IOV support for the ixgbe(4) + driver is planned. The PCI subsystem API is designed to be + generic and should support SR-IOV on any device, but fairly + extensive driver work is necessary to support SR-IOV, which is + currently not planned due to lack of time and hardware.

+ +

At present, ixgbe(4) is able to create VFs and the + ixgbevf driver is able to pass traffic. There is still + a fair amount of work to support VLAN tags, multicast addresses + and other features on the VFs. Also, the VF configuration needs + to be better integrated with the PF initialization path to + ensure that resets of the PF do not interrupt operation of the + VFs.

+ + + Sandvine, Inc +