← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1768917] [NEW] PCI-Passthrough documentation is incorrect while trying to pass through a NIC

 

Public bug reported:

As per the documentation shown below

https://docs.openstack.org/nova/pike/admin/pci-passthrough.html

In order to achieve PCI passthrough of a network device, it states that
we should create a 'flavor' based on the alias and then associate a
flavor to the server create function.

Steps to follow:

Create an Alias:
[pci]
alias = { "vendor_id":"8086", "product_id":"154d", "device_type":"type-PF", "name":"a1" }

Create a Flavor:
[pci]
alias = { "vendor_id":"8086", "product_id":"154d", "device_type":"type-PF", "name":"a1" }

Add a whitelist:
[pci]
passthrough_whitelist = { "address": "0000:41:00.0" }

Create a Server with the Flavor:

# openstack server create --flavor m1.large --image
cirros-0.3.5-x86_64-uec --wait test-pci


With the above command, the VM creation errors out and we see a PortBindingFailure.

The reason for the PortBindingFailure is the 'vif_type' is always set to
'BINDING_FAILED".

The reason being, flavor does not mention about the 'vnic_type'='direct-
physical' without this information the sriov mechanism driver is not
able to bind the port.

Not sure if there is any way to specify the info in the flavor.

** Affects: nova
     Importance: Undecided
         Status: New


** Tags: pci

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1768917

Title:
  PCI-Passthrough documentation is incorrect while trying to pass
  through a NIC

Status in OpenStack Compute (nova):
  New

Bug description:
  As per the documentation shown below

  https://docs.openstack.org/nova/pike/admin/pci-passthrough.html

  In order to achieve PCI passthrough of a network device, it states
  that we should create a 'flavor' based on the alias and then associate
  a flavor to the server create function.

  Steps to follow:

  Create an Alias:
  [pci]
  alias = { "vendor_id":"8086", "product_id":"154d", "device_type":"type-PF", "name":"a1" }

  Create a Flavor:
  [pci]
  alias = { "vendor_id":"8086", "product_id":"154d", "device_type":"type-PF", "name":"a1" }

  Add a whitelist:
  [pci]
  passthrough_whitelist = { "address": "0000:41:00.0" }

  Create a Server with the Flavor:

  # openstack server create --flavor m1.large --image
  cirros-0.3.5-x86_64-uec --wait test-pci

  
  With the above command, the VM creation errors out and we see a PortBindingFailure.

  The reason for the PortBindingFailure is the 'vif_type' is always set
  to 'BINDING_FAILED".

  The reason being, flavor does not mention about the 'vnic_type
  '='direct-physical' without this information the sriov mechanism
  driver is not able to bind the port.

  Not sure if there is any way to specify the info in the flavor.

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1768917/+subscriptions


Follow ups