pci least feature matching allocation

Registered by Yongli He

in current pci pass-through pci device request via pci stats and claim the device by
another piece of code: pci manager. here is a use case to show why least feature device
match allocation is needed.

suppose we had 2 pci acceleration card, on host1 :
        pci1:  Support neutron physical network 'phy1"
        pci2: same as pci1 but do not support network 'phy1"

and second one on host2 support :
      same as pci1.

now user want a nic card say pci1. in current system scheduler pick host by mach the pci stats, there is no different for host1&host2, no difference for pci1 and pci in the host1, there is 2 problem:

1. pci filter better to pick up host2, if use host1, later user want more features will lack of  pci network for 'phy1', and pick up phy1 might just bad choice because it's might connect to a network usr don't know.

2. if host2 run out device, in host1, should pick up the pci2. this can achieved : pick up least featured card first.

Blueprint information

Status:
Not started
Approver:
None
Priority:
Undefined
Drafter:
Yongli He
Direction:
Needs approval
Assignee:
Yongli He
Definition:
Review
Series goal:
None
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

Whiteboard

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

Addressed by: https://review.openstack.org/190065
    Allocate least feature device to user

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.