PCI passthrough libvirt implementation

Registered by Boris Pavlovic

Implement PCI passthrough for libvirt driver.

Support for all operation with VM, except live migration.

Blueprint information

Status:
Complete
Approver:
Russell Bryant
Priority:
Low
Drafter:
Boris Pavlovic
Direction:
Approved
Assignee:
jiang, yunhong
Definition:
Approved
Series goal:
Accepted for havana
Implementation:
Implemented
Milestone target:
milestone icon 2013.2
Started by
Boris Pavlovic
Completed by
Russell Bryant

Related branches

Sprints

Whiteboard

The Xen guys are also amenable to passthrough and it would be a good idea to confer with them to make sure that any changes you make to the base virt driver interface will work with both libvirt and Xen (at least).

-----

It doesn't affect virt interface at all -- boris-42
---
I was planning to review the changes when they are posted to understand the requirements on XenAPI for this -- Bob
---
Bob it will be nice. I am not familiar with virt.XEN, but I could say that on virt level you will get with instance record, pci addresses (domain:bus:slot.func) for all devices that should be passthrough

Gerrit topic: https://review.openstack.org/#q,topic:bp/pci-passthrough-libvirt,n,z

Addressed by: https://review.openstack.org/34643
    Fix db.utils.create_shadow_table() method

Addressed by: https://review.openstack.org/34644
    PCI passthrough DB Layer

Addressed by: https://review.openstack.org/34645
    PCI passthrough Conductor layer

Addressed by: https://review.openstack.org/34646
    PCI passthrough Utils layer

Addressed by: https://review.openstack.org/34647
    PCI passthrough Scheduler layer

Addressed by: https://review.openstack.org/34648
    PCI passthrough Compute layer

Addressed by: https://review.openstack.org/27130
    PCI passthrough Libvirt layer WIP

Gerrit topic: https://review.openstack.org/#q,topic:merge-with-boris,n,z

Addressed by: https://review.openstack.org/35100
    PCI passthrough Libvirt layer WIP

Gerrit topic: https://review.openstack.org/#q,topic:pci-passthrough-enhancement,n,z

Addressed by: https://review.openstack.org/39891
    PCI passthrough Libvirt vm config

Gerrit topic: https://review.openstack.org/#q,topic:pci_api,n,z

Addressed by: https://review.openstack.org/48007
    Add V2 and V3 api for PCI passthrough

Gerrit topic: https://review.openstack.org/#q,topic:pci-api,n,z

Addressed by: https://review.openstack.org/50576
    Add V2 and V3 api for PCI passthrough

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.