[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <D8078B8B3B09934AA9F8F2D5FB3F28CE088751B5EF@pdsmsx502.ccr.corp.intel.com>
Date: Sat, 27 Sep 2008 16:27:36 +0800
From: "Zhao, Yu" <yu.zhao@...el.com>
To: "linux-pci@...r.kernel.org" <linux-pci@...r.kernel.org>
CC: Jesse Barnes <jbarnes@...tuousgeek.org>,
Randy Dunlap <randy.dunlap@...cle.com>,
Grant Grundler <grundler@...isc-linux.org>,
Alex Chiang <achiang@...com>, Matthew Wilcox <matthew@....cx>,
Roland Dreier <rdreier@...co.com>, Greg KH <greg@...ah.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"kvm@...r.kernel.org" <kvm@...r.kernel.org>,
"virtualization@...ts.linux-foundation.org"
<virtualization@...ts.linux-foundation.org>
Subject: [PATCH 0/6 v3] PCI: Linux kernel SR-IOV support
Greetings,
Following patches are intended to support SR-IOV capability in the Linux kernel. With these patches, people can turn a PCI device with the capability into multiple ones from software perspective, which can benefit KVM and achieve other purposes such as QoS, security, etc.
[PATCH 1/6 v3] PCI: export some functions and macros
[PATCH 2/6 v3] PCI: add new general functions
[PATCH 3/6 v3] PCI: support ARI capability
[PATCH 4/6 v3] PCI: support SR-IOV capability
[PATCH 5/6 v3] PCI: reserve bus range for SR-IOV device
[PATCH 6/6 v3] PCI: document the change
b/Documentation/DocBook/kernel-api.tmpl | 2
b/Documentation/PCI/pci-iov-howto.txt | 228 ++++++++
b/drivers/pci/Kconfig | 12
b/drivers/pci/Makefile | 2
b/drivers/pci/iov.c | 850 ++++++++++++++++++++++++++++++++
b/drivers/pci/pci-sysfs.c | 10
b/drivers/pci/pci.c | 2
b/drivers/pci/pci.h | 20
b/drivers/pci/probe.c | 50 -
b/drivers/pci/proc.c | 7
b/drivers/pci/setup-bus.c | 4
b/drivers/pci/setup-res.c | 2
b/include/linux/pci.h | 5
b/include/linux/pci_regs.h | 15
drivers/pci/iov.c | 24
drivers/pci/pci-sysfs.c | 123 ++--
drivers/pci/pci.c | 113 +++-
drivers/pci/pci.h | 75 ++
drivers/pci/probe.c | 40 +
drivers/pci/setup-bus.c | 4
drivers/pci/setup-res.c | 27 -
include/linux/pci.h | 98 +++
include/linux/pci_regs.h | 22
23 files changed, 1580 insertions(+), 155 deletions(-)
---
Single Root I/O Virtualization (SR-IOV) capability defined by PCI-SIG is intended to enable multiple system software to share PCI hardware resources. PCI device that supports this capability can be extended to one Physical Functions plus multiple Virtual Functions. Physical Function, which could be considered as the "real" PCI device, reflects the hardware instance and manages all physical resources. Virtual Functions are associated with a Physical Function and shares physical resources with the Physical Function. Software can control allocation of Virtual Functions via registers encapsulated in the capability structure.
SR-IOV specification can be found at http://www.pcisig.com/members/downloads/specifications/iov/sr-iov1.0_11Sep07.pdf
Devices that support SR-IOV are available from following vendors:
http://download.intel.com/design/network/ProdBrf/320025.pdf
http://www.netxen.com/products/chipsolutions/NX3031.html
http://www.neterion.com/products/x3100.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists