[Starlingx-discuss] [Bug] flavor "pci_passthrough:alias" should be required to passthrough physical NICs

Peters, Matt Matt.Peters at windriver.com
Fri Aug 30 11:40:11 UTC 2019


Hi Chenjie,
What were the issues you encountered that prevented it from working with the port vnic_type?

Thanks, Matt

From: "Xu, Chenjie" <chenjie.xu at intel.com>
Date: Thursday, August 29, 2019 at 10:49 PM
To: "Peters, Matt" <Matt.Peters at windriver.com>, "Webster, Steven" <Steven.Webster at windriver.com>, "Kopec, Gerald (Gerry)" <Gerry.Kopec at windriver.com>
Cc: Ghada Khalil <Ghada.Khalil at windriver.com>, "Zhao, Forrest" <forrest.zhao at intel.com>, "starlingx-discuss at lists.starlingx.io" <starlingx-discuss at lists.starlingx.io>
Subject: RE: [Starlingx-discuss] [Bug] flavor "pci_passthrough:alias" should be required to passthrough physical NICs

Hi Matt,

I have finished my testing with I210 NIC and the result shows that this way should be only used for SR-IOV physical function. And the blueprint "SR-IOV physical functions assignment with Neutron port" also indicates the same thing.
https://blueprints.launchpad.net/nova/+spec/sriov-pf-passthrough-neutron-port
https://bugs.launchpad.net/starlingx/+bug/1836682

For this limitation, which way do you suggest?
1. Record as a known limitation and document how to pass through NICs which don't support SR-IOV. Like below: users need to override helm with PCI alias like following:
cat > nova-overrides.yaml <<EOF
   conf:
   nova:
     DEFAULT:
       debug: True
     pci:
       alias:
           type: multistring
           values:
           - '{"vendor_id": "8086", "product_id": "37d2","device_type":"type-PCI","name": "pci-pass"}'
   EOF
  system helm-override-update stx-openstack nova openstack --values nova-overrides.yaml

2. Generate the helm override automatically. If this way is chosen, do you think this should be fixed in stx 2.0 or stx 3.0?

Best Regards,
Xu, Chenjie

From: Peters, Matt [mailto:Matt.Peters at windriver.com]
Sent: Wednesday, August 7, 2019 6:52 PM
To: Xu, Chenjie <chenjie.xu at intel.com>; Webster, Steven <Steven.Webster at windriver.com>; Kopec, Gerald (Gerry) <Gerry.Kopec at windriver.com>
Cc: Khalil, Ghada <Ghada.Khalil at windriver.com>; Zhao, Forrest <forrest.zhao at intel.com>; starlingx-discuss at lists.starlingx.io
Subject: Re: [Starlingx-discuss] [Bug] flavor "pci_passthrough:alias" should be required to passthrough physical NICs

Hi Chenjie,
The latest openstack release should support using the port vnic_type for type-PCI devices.  The only device I know of that doesn’t support PF/VF is the i210, which is what I think was used in reporting the bug.  I think your approach of having them retest with this method is the correct thing to do given you don’t have access to the hardware.

-Matt

From: "Xu, Chenjie" <chenjie.xu at intel.com<mailto:chenjie.xu at intel.com>>
Date: Tuesday, August 6, 2019 at 8:17 PM
To: "Peters, Matt" <Matt.Peters at windriver.com<mailto:Matt.Peters at windriver.com>>, "Webster, Steven" <Steven.Webster at windriver.com<mailto:Steven.Webster at windriver.com>>, "Kopec, Gerald (Gerry)" <Gerry.Kopec at windriver.com<mailto:Gerry.Kopec at windriver.com>>
Cc: Ghada Khalil <Ghada.Khalil at windriver.com<mailto:Ghada.Khalil at windriver.com>>, "Zhao, Forrest" <forrest.zhao at intel.com<mailto:forrest.zhao at intel.com>>, "starlingx-discuss at lists.starlingx.io<mailto:starlingx-discuss at lists.starlingx.io>" <starlingx-discuss at lists.starlingx.io<mailto:starlingx-discuss at lists.starlingx.io>>
Subject: RE: [Starlingx-discuss] [Bug] flavor "pci_passthrough:alias" should be required to passthrough physical NICs

Hi Matt,
Yes, I mean the port that does not report itself as a PF.

Best Regards,
Xu, Chenjie

From: Peters, Matt [mailto:Matt.Peters at windriver.com]
Sent: Wednesday, August 7, 2019 12:55 AM
To: Xu, Chenjie <chenjie.xu at intel.com<mailto:chenjie.xu at intel.com>>; Webster, Steven <Steven.Webster at windriver.com<mailto:Steven.Webster at windriver.com>>; Kopec, Gerald (Gerry) <Gerry.Kopec at windriver.com<mailto:Gerry.Kopec at windriver.com>>
Cc: Khalil, Ghada <Ghada.Khalil at windriver.com<mailto:Ghada.Khalil at windriver.com>>; Zhao, Forrest <forrest.zhao at intel.com<mailto:forrest.zhao at intel.com>>; starlingx-discuss at lists.starlingx.io<mailto:starlingx-discuss at lists.starlingx.io>
Subject: Re: [Starlingx-discuss] [Bug] flavor "pci_passthrough:alias" should be required to passthrough physical NICs

Hello Chenjie,
We typically configure the PCI-PT devices using the vnic-type option for manually created ports.  This replaces the older mechanism of being able to specify the vif-type (which was a StarlingX specific extension that was dropped).

For your question about the NIC type that does not support SR-IOV, do you mean a port that does not report itself as a PF (from a libvirt/nova perspective that would be device with Type-PCI vs Type-PF)?

-Matt

From: "Xu, Chenjie" <chenjie.xu at intel.com<mailto:chenjie.xu at intel.com>>
Date: Tuesday, August 6, 2019 at 11:14 AM
To: "Peters, Matt" <Matt.Peters at windriver.com<mailto:Matt.Peters at windriver.com>>, "Webster, Steven" <Steven.Webster at windriver.com<mailto:Steven.Webster at windriver.com>>, "Kopec, Gerald (Gerry)" <Gerry.Kopec at windriver.com<mailto:Gerry.Kopec at windriver.com>>
Cc: Ghada Khalil <Ghada.Khalil at windriver.com<mailto:Ghada.Khalil at windriver.com>>, "Zhao, Forrest" <forrest.zhao at intel.com<mailto:forrest.zhao at intel.com>>, "starlingx-discuss at lists.starlingx.io<mailto:starlingx-discuss at lists.starlingx.io>" <starlingx-discuss at lists.starlingx.io<mailto:starlingx-discuss at lists.starlingx.io>>
Subject: RE: [Starlingx-discuss] [Bug] flavor "pci_passthrough:alias" should be required to passthrough physical NICs

Hi Matt,

I find another way to pass through SR-IOV capable physical NIC to VM. This new way doesn't require to configure "PCI alias". The key point is to create a port whose vnic_type is direct-physical. The following link can be referenced:
https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/10/html/networking_guide/sr-iov-support-for-virtual-networking

However if we try to pass through a physical NIC which doesn't support SR-IOV, we may still need to configure "PCI alias". Because I don't have a physical NIC which doesn't support SR-IOV on my server, I can't test passing such NIC to VM by creating port whose vnic_type is direct-physical.

Do you think StarlingX needs to configure “PCI alias” automatically for physical NIC which doesn’t support SR-IOV or not?

Best Regards,
Xu, Chenjie

From: Peters, Matt [mailto:Matt.Peters at windriver.com]
Sent: Thursday, August 1, 2019 6:34 PM
To: Xu, Chenjie <chenjie.xu at intel.com<mailto:chenjie.xu at intel.com>>; Webster, Steven <Steven.Webster at windriver.com<mailto:Steven.Webster at windriver.com>>; Kopec, Gerald (Gerry) <Gerry.Kopec at windriver.com<mailto:Gerry.Kopec at windriver.com>>
Cc: Khalil, Ghada <Ghada.Khalil at windriver.com<mailto:Ghada.Khalil at windriver.com>>; Zhao, Forrest <forrest.zhao at intel.com<mailto:forrest.zhao at intel.com>>; starlingx-discuss at lists.starlingx.io<mailto:starlingx-discuss at lists.starlingx.io>
Subject: Re: [Starlingx-discuss] [Bug] flavor "pci_passthrough:alias" should be required to passthrough physical NICs

+Steve +Gerry

Do you have any additional information to add here?  I don’t believe we had to setup an alias in the past to do PCI-PT, so is this something that is new to the latest OpenStack nova release?  Did we drop some functionality to align with upstream nova (that use to be in starlingx-staging)?

-Matt

From: "Xu, Chenjie" <chenjie.xu at intel.com<mailto:chenjie.xu at intel.com>>
Date: Thursday, August 1, 2019 at 3:36 AM
To: "Peters, Matt" <Matt.Peters at windriver.com<mailto:Matt.Peters at windriver.com>>
Cc: Ghada Khalil <Ghada.Khalil at windriver.com<mailto:Ghada.Khalil at windriver.com>>, "Zhao, Forrest" <forrest.zhao at intel.com<mailto:forrest.zhao at intel.com>>, "starlingx-discuss at lists.starlingx.io<mailto:starlingx-discuss at lists.starlingx.io>" <starlingx-discuss at lists.starlingx.io<mailto:starlingx-discuss at lists.starlingx.io>>
Subject: [Starlingx-discuss] [Bug] flavor "pci_passthrough:alias" should be required to passthrough physical NICs


Hi Matt,

Based on my testing, the flavor with property “pci_passthrough:alias” should be required for passing a physical NIC to the VM. But it should not be required for passing a VF to the VM. So I think the alias information should contain physical NICs which are configured with “pci-passthrough” by following command:
system host-if-modify -m 1500 -n pcipass -c pci-passthrough ${COMPUTE} ${IFUUID}
   system interface-datanetwork-assign ${COMPUTE} pcipass ${PHYSNET2}

Could you please let me know your opinions and leave a comment in the below bug:
https://bugs.launchpad.net/starlingx/+bug/1836682

Best Regards,
Xu, Chenjie
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.starlingx.io/pipermail/starlingx-discuss/attachments/20190830/3cd7146a/attachment-0001.html>


More information about the Starlingx-discuss mailing list