| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2018-08-23 | |||
| 12:15:18 | moshele | sahid: np :) | |
| 12:15:44 | mriedem | moshele: sorry i don't understand that statement, | |
| 12:15:46 | mriedem | looking at your paste | |
| 12:15:46 | mriedem | : libvirtError: unsupported configuration: Unknown PCI device <driver name='vhost'/> has been specified | |
| 12:15:57 | mriedem | and looking at https://review.openstack.org/#/c/595592/1/nova/virt/libvirt/designer.py | |
| 12:16:06 | mriedem | i guess in this case the net_type was 'direct'? | |
| 12:16:11 | mriedem | so L120 | |
| 12:17:17 | sahid | mriedem: are you sure vfio is a valid driver? | |
| 12:17:22 | sahid | moshele: | |
| 12:17:55 | ykarel | jroll, hi | |
| 12:17:56 | moshele | shaid: https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/virtualization_deployment_and_administration_guide/sect-pci_devices-pci_passthrough | |
| 12:18:19 | moshele | sahid: https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/virtualization_deployment_and_administration_guide/sect-pci_devices-pci_passthrough | |
| 12:19:12 | ykarel | jroll, can u check https://bugs.launchpad.net/tripleo/+bug/1787910/comments/13 | |
| 12:19:12 | openstack | Launchpad bug 1787910 in tripleo "OVB overcloud deploy fails on nova placement errors" [Critical,Triaged] - Assigned to Marios Andreou (marios-b) | |
| 12:19:16 | sahid | ok thanks, because i remeber of a bug in libvirt for vhostuser interface interface, when you basically set it to vhostuser (which is the driver used) libvirt is reaisng an error | |
| 12:19:18 | moshele | mriedem: no the net_type 'direct' is for macvtap port for port direct which is hostdev we don't set the driver name | |
| 12:20:04 | mriedem | moshele: yeah i figured it out, | |
| 12:20:09 | mriedem | the comment is busted in the code, | |
| 12:20:13 | mriedem | i left a comment about fixing it :) | |
| 12:21:16 | moshele | mriedem: the problem is with this https://github.com/openstack/nova/blob/34956bea4beb8e5ba474b42ba777eb88a5eadd76/nova/virt/libvirt/vif.py#L166-L176 | |
| 12:21:40 | moshele | mriedem: driver is not specified it put vhost | |
| 12:21:45 | ykarel | mriedem, or u can check https://bugs.launchpad.net/tripleo/+bug/1787910/comments/13 | |
| 12:21:45 | openstack | Launchpad bug 1787910 in tripleo "OVB overcloud deploy fails on nova placement errors" [Critical,Triaged] - Assigned to Marios Andreou (marios-b) | |
| 12:22:24 | mriedem | aha | |
| 12:22:26 | mriedem | moshele: ok | |
| 12:23:04 | moshele | mriedem: I send the mail because I am not sure about the fix. I know that my fix solve direct port | |
| 12:23:57 | mriedem | i'd ask jangutter but he's not around | |
| 12:24:23 | sahid | moshele: perhaps it's better to use None, lbvirt might have some kind of fallback, example using vfio but if available on host fallback to uio | |
| 12:24:24 | mriedem | moshele: vnic_type = 'direct' right? | |
| 12:24:31 | zigo | Hi there ! | |
| 12:24:45 | zigo | Any idea why I'm getting this when building the Nova Debian package? https://stretch-rocky.infomaniak.ch/job/nova/9/console | |
| 12:24:50 | zigo | (see the end of unit test run...) | |
| 12:25:03 | sahid | it's what is done for vhost, norammy by default, libvirt use vhost but fallback to qemu if vhost module is not loaded on host | |
| 12:25:06 | mriedem | zigo: you'll need to put that in a paste | |
| 12:25:06 | moshele | mriedem: yes | |
| 12:25:09 | mriedem | or give out creds | |
| 12:25:30 | zigo | Sure. | |
| 12:25:55 | zigo | mriedem: http://paste.openstack.org/show/728679/ | |
| 12:26:50 | zigo | From where is comming the MIMEAccept object? Is that nova's internal? | |
| 12:27:01 | zigo | A grep in nova shows nothing ... | |
| 12:27:03 | moshele | sahid: but this port will set driver name to vhost if it None https://github.com/openstack/nova/blob/34956bea4beb8e5ba474b42ba777eb88a5eadd76/nova/virt/libvirt/vif.py#L166-L176 | |
| 12:27:17 | mriedem | ykarel: i'll let jroll look at that b/c https://review.openstack.org/#/c/565841 was master only atm which is stein, and today is rocky rc3 so i'm focused on what we need to get done for rc3 | |
| 12:27:21 | moshele | sahid: s/port/part | |
| 12:27:36 | ykarel | mriedem, no prob, Thanks | |
| 12:27:47 | ykarel | rocky is more priority now | |
| 12:28:00 | mriedem | zigo: i'd guess the wsgi-intercept library | |
| 12:28:02 | mriedem | cdent: ^ | |
| 12:28:05 | mriedem | http://paste.openstack.org/show/728679/ | |
| 12:29:14 | mriedem | well best_matches = req.accept.acceptable_offers(types) is clearly in placement code | |
| 12:29:21 | cdent | zigo, looks webob | |
| 12:29:30 | sahid | moshele: hum... it's complicated, because if you set it to None, the LibvirtConfig will not generate the tx/rx args | |
| 12:29:30 | mriedem | yeah | |
| 12:29:42 | cdent | acceptable_offer is new in webob 1.8.x I think | |
| 12:30:02 | mriedem | sahid: but it looks like we default to vhost if rx/tx is configured https://github.com/openstack/nova/blob/34956bea4beb8e5ba474b42ba777eb88a5eadd76/nova/virt/libvirt/vif.py#L166-L176 | |
| 12:30:10 | mriedem | so driver_name will always be at least vhost? | |
| 12:30:25 | mriedem | which doesn't work for net_type == 'hostdev'? | |
| 12:30:42 | cdent | zigo: my guess is that the webob is not up to date with minimum requirements? | |
| 12:30:53 | zigo | cdent: Yeah, that should be it, thanks! | |
| 12:31:05 | mriedem | https://github.com/openstack/nova/blob/master/lower-constraints.txt#L170 fwiw | |
| 12:31:08 | mriedem | 1.8.2 | |
| 12:31:09 | zigo | Debian version is 1:1.7.3-2 | |
| 12:31:11 | cdent | zigo: I'm glad it was that easy :) | |
| 12:31:12 | zigo | Thanks guys. | |
| 12:31:14 | zigo | Will update it. | |
| 12:31:22 | sahid | yes yes, it's just i don't think we should specically set it to vfio, i think we should not set it at all for hostdev | |
| 12:31:40 | sahid | but if we do that tx/rx are then ignored | |
| 12:31:54 | jroll | mriedem: ykarel: I'm looking at this, I'm confused what is special about tripleo jobs here, as this works fine in our ironic jobs | |
| 12:32:08 | sahid | https://github.com/openstack/nova/blob/34956bea4beb8e5ba474b42ba777eb88a5eadd76/nova/virt/libvirt/config.py#L1390 | |
| 12:32:17 | jroll | oh wait, it's probably the flavors | |
| 12:32:24 | mriedem | sahid: yup | |
| 12:33:13 | mriedem | but if rx is configured, | |
| 12:33:15 | mriedem | and driver is None, | |
| 12:33:20 | mriedem | we hard-code to vhost | |
| 12:33:21 | mriedem | https://github.com/openstack/nova/blob/34956bea4beb8e5ba474b42ba777eb88a5eadd76/nova/virt/libvirt/vif.py#L169 | |
| 12:33:39 | mriedem | but apparently that doesn't work | |
| 12:33:39 | mriedem | : libvirtError: unsupported configuration: Unknown PCI device <driver name='vhost'/> has been specified | |
| 12:33:45 | mriedem | http://paste.openstack.org/show/728666/ | |
| 12:34:14 | sahid | can't we do something like that? https://github.com/openstack/nova/blob/34956bea4beb8e5ba474b42ba777eb88a5eadd76/nova/virt/libvirt/vif.py#L432 | |
| 12:34:53 | mriedem | heh, that TODO is overwriting the thing done in get_base_config which is based on another TODO | |
| 12:35:28 | mriedem | and here https://github.com/openstack/nova/blob/34956bea4beb8e5ba474b42ba777eb88a5eadd76/nova/virt/libvirt/vif.py#L519 | |
| 12:35:42 | moshele | sahid.mriedem : we can skip it for vnic_type direct in https://github.com/openstack/nova/blob/34956bea4beb8e5ba474b42ba777eb88a5eadd76/nova/virt/libvirt/vif.py#L166-L176 | |
| 12:35:48 | mriedem | sahid: which vnic_type did you test the rx queue stuff with? | |
| 12:36:04 | jroll | ykarel: posted a comment on the bug | |
| 12:36:07 | moshele | sahid, mriedem ^ | |
| 12:36:13 | ykarel | jroll, checking | |
| 12:36:27 | mriedem | moshele: but what about the other sriov types? https://github.com/openstack/nova/blob/34956bea4beb8e5ba474b42ba777eb88a5eadd76/nova/network/model.py#L111 | |
| 12:36:35 | sahid | get_config_vhostuser and _set_config_VIFHostUser are the same thing, one is native Nova the other for os-vif | |
| 12:36:45 | mriedem | i know | |
| 12:37:01 | sahid | ah sorry i did not have undersdoot the qustion so | |
| 12:37:11 | mriedem | so are direct and macvtap the only supported vnic types for rx/tx queues? | |
| 12:37:29 | moshele | mriedem: they are got beacuse the macvtap is also virtio and also the virtio forwarder | |
| 12:37:40 | moshele | mriedem: s/got/good | |
| 12:37:46 | sahid | all vnic that are using virtio | |
| 12:37:56 | sahid | can have rc/tx queues | |
| 12:38:12 | moshele | sahid: SR-IOV passthrough is not virtio | |
| 12:38:25 | moshele | sahid: meaning vnic_type direct | |
| 12:38:39 | mriedem | alright, i'm clearly in over my head here in the nfv waters. my main concern is today is rc3 and it doesn't sound like we know what the correct solution is. so i'm wondering if we should just release note a known limitation and put something in the rx/tx config option help saying it's only supported by one specifiv vnic_type for now based on the one we know that works | |
| 12:38:39 | sahid | yes, but you are talking about SRIOV+mactap right? | |
| 12:38:42 | moshele | sahid: also direct_physocal should work | |
| 12:38:56 | mriedem | i would rather release rocky stating *what we know works* | |