Earlier  
Posted Nick Remark
#openstack-nova - 2018-08-23
12:13:36 mriedem sahid: you should take a look at moshele's patch
12:13:46 mriedem moshele: what sets the driver_name to vhost?
12:14:54 moshele mriedem: the macvtap port which is virtio tap connected to VF so for that case it should be fine
12:14:54 sahid mriedem ah yes this bug has been reported downstream yesterday i think
12:15:00 sahid moshele: thanks for your patch
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

Earlier   Later