Re: [PATCH 0/6 v3] PCI: Linux kernel SR-IOV support

Previous thread: [PATCH 1/3] x86: add mtrr_cleanup_debug command line by Yinghai Lu on Saturday, September 27, 2008 - 12:30 am. (6 messages)

Next thread: [PATCH 1/6 v3] PCI: export some functions and macros by Zhao, Yu on Saturday, September 27, 2008 - 1:27 am. (4 messages)
From: Zhao, Yu
Date: Saturday, September 27, 2008 - 1:27 am

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 ...
From: Javier Guerra Giraldez
Date: Saturday, September 27, 2008 - 11:07 am

sounds great, i think some Infiniband HBAs have this capability; they even=
=20
suggested using on Xen for faster (no hypervisor intervention) communicatio=
n=20
between DomU's on the same box. (and transparently to out of the box, of=20
course)

does it need an IOMMU (VT-d), or the whole magic is done by the PCI device?

=2D-=20
Javier
From: Zhao, Yu
Date: Tuesday, October 7, 2008 - 7:32 pm

For native Linux, we can use Virtual Function without IOMMU. For KVM, it requires IOMMU so the guest can use VFs.

--

Previous thread: [PATCH 1/3] x86: add mtrr_cleanup_debug command line by Yinghai Lu on Saturday, September 27, 2008 - 12:30 am. (6 messages)

Next thread: [PATCH 1/6 v3] PCI: export some functions and macros by Zhao, Yu on Saturday, September 27, 2008 - 1:27 am. (4 messages)