Earlier  
Posted Nick Remark
#openstack-nova - 2017-08-25
15:46:59 fried_rice edmondsw Yeah, I think that's why we want to be able to support alternative mechanisms for identifying the devices.
15:47:06 edmondsw +1
15:47:09 claudiub edmondsw: yep, that's what i'm thinking about. although, there is a way, at least for my scenario. since i'm doing an md5 of the NIC's PCI device_id, a small script can be provided to "figure out" the vendor_id and product_id
15:47:21 fried_rice edmondsw See :08:13
15:47:29 clarkb mriedem: is that content not the default out of nova/etc in the nova repo?
15:47:32 claudiub but ideally, we wouldn't have to rely on something like this
15:47:48 fried_rice claudiub You're only doing that for SR-IOV, so the user never sees it, right?
15:47:59 claudiub fried_rice: yep
15:48:03 edmondsw claudiub yeah... but it's a lot nicer to operators if they can just plug in something that makes sense, not have to go figure out how to turn what they know into something nova can understand
15:48:05 fried_rice I.e. the user doesn't have to figure out that MD5 spoofing and set up an alias with it.
15:48:12 claudiub fried_rice: it only has to be whitelisted
15:48:27 fried_rice claudiub And your setup allows you to whitelist by address :)
15:48:36 clarkb mriedem: I guess not reading the change it is an explicit step taken in devstack. Interesting
15:48:46 fried_rice After you've done all the mounting & dismounting gorp per https://blogs.technet.microsoft.com/heyscriptingguy/2016/07/14/passing-through-devices-to-hyper-v-vms-by-using-discrete-device-assignment/
15:50:09 claudiub fried_rice: that link is only for full PCI passthrough, not for SR-IOV. :)
15:50:28 fried_rice claudiub So how do you whitelist SR-IOV?
15:53:04 claudiub fried_rice: for hyper-v SR-IOV configuration, there are other steps to check if it's supported and enable it. For example, running the powershell command Get-VMHost, will also include SR-IOV support details: if it's supported or not on the host (must be enabled in BIOS). Afterwards, the NICs have to be checked if they support SR-IOV, which can be checked by Get-NetAdapterSriov, if i'm not mistaken
15:53:31 fried_rice claudiub But what do you put in the nova-cpu.conf's [pci]passthrough_whitelist ?
15:53:58 fried_rice Do the above commands produce some kind of output that the user can translate to the whitelist entry?
15:54:10 mriedem clarkb: yeah
15:54:14 mriedem devstack sets that up
15:54:16 claudiub fried_rice: at this moment, those spoofed vendor_id, product_id
15:54:31 fried_rice claudiub Oh, so your user *does* see the spoofed vendor/prod IDs.
15:54:33 claudiub but ideally I'd have a better option.
15:54:54 fried_rice okay, cool, that's a pretty good story.
15:55:04 claudiub fried_rice: only on the compute node's nova.conf file.
15:55:19 fried_rice claudiub Right, operator-facing.
15:55:29 claudiub fried_rice: yep
15:55:34 fried_rice Which is ick.
15:55:49 claudiub yep
16:03:28 openstackgerrit Eric Fried proposed openstack/nova-specs master: WIP: SPEC: PCI passthrough by device ID https://review.openstack.org/497965
16:03:31 openstackgerrit Dan Smith proposed openstack/nova master: Move hash ring initialization to init_host() for ironic https://review.openstack.org/497966
16:04:23 dansmith edleafe: ^
16:04:56 openstackgerrit Stephen Finucane proposed openstack/nova master: conf: Allow users to unset 'keymap' options https://review.openstack.org/496605
16:04:57 openstackgerrit Stephen Finucane proposed openstack/nova master: tests: De-duplicate some graphics tests https://review.openstack.org/497969
16:05:19 stephenfin dansmith: ^
16:05:25 dansmith aye
16:05:29 stephenfin ta
16:06:12 dansmith stephenfin: you're still not setting keymap to None... is there a reason?
16:06:16 dansmith in the test I mean
16:08:32 openstackgerrit Matt Riedemann proposed openstack/nova master: De-duplicate two delete_allocation_for_* methods https://review.openstack.org/496936
16:09:45 cdent whoops mriedem
16:09:45 cdent thanks for making that fix mrhillsman
16:10:07 mriedem np
16:10:43 fried_rice cdent Rumor has it you're the VMWare guy. (mriedem threw you under the bus)
16:11:02 mriedem dansmith: first, superdan
16:11:04 fried_rice cdent Can you (refer me to someone who can) speak to how PCI is handled in VMWare?
16:11:11 mriedem second, notice the todo i added in here yesterday? https://review.openstack.org/#/c/497606/1/nova/compute/manager.py@3798
16:11:23 mriedem superdan: am i just blind or does that error handling not make any sense?
16:12:15 mriedem it was added long ago https://review.openstack.org/#/c/73387/ and had quite a bit of review from different people, but i don't see how it made sense back then either
16:12:17 cdent fried_rice: if you mean being employed by vware makes me the vmware guy, then yes. I’ve pointed out the conversation from earlier to some people who were interested.
16:12:30 mriedem cdent: would that be radu?
16:12:41 mriedem radu is the only other person i know that was working on nova in recent times
16:13:01 fried_rice cdent Cool beans. And FYI for passing along to those folks: https://blueprints.launchpad.net/nova/+spec/pci-by-device-id (cc stephenfin claudiub)
16:13:45 cdent rgerganov and gjayavelu . I’ll let them know to look (and to come back to irc one in a while)
16:14:04 cdent there are a lot of people who apparently used to
16:14:09 cdent but not so much now
16:14:10 mriedem there was also of course no test for the compute manager piece of that
16:14:14 mriedem i think i'm just going to remove it
16:14:17 superdan mriedem: I bet that was intending to catch migrationerror, which can be raised by _prep_resize
16:14:39 superdan mriedem: well, the comment definitely talks about the call though
16:15:07 superdan mriedem: like I said yesterday I thought that was a call, so that person did too
16:15:26 mriedem ok, i was going to say, from the change itself, it's raising that here https://review.openstack.org/#/c/73387/13/nova/virt/libvirt/driver.py
16:15:34 mriedem which on the source after the rpc cast
16:15:48 mriedem the rpc all you mentioned yesterday i thought was about something in conductor, but maybe i'm confused
16:16:02 mriedem anyway, i'm going to remove this handling from prep_resize as it can't happen
16:16:32 superdan hang on
16:16:34 superdan I'm confused
16:17:16 mriedem the libvirt driver raises that error from migrate_disk_and_power_off which is called from ComputeManager.resize_instance,
16:17:25 mriedem _prep_resize does an rpc cast to resize_instance on the source host
16:17:31 superdan mriedem: so you see that we can raise a MigrationError in there, right?
16:17:34 mriedem since it's a cast, the error raised from migrate_disk_and_power_off on the source can't come back
16:17:40 mriedem in _prep_resize?
16:17:43 superdan yeah
16:17:45 mriedem yes
16:17:49 superdan also,
16:18:01 mriedem MigrationError != MigrationPreCheckError
16:18:03 superdan we're doing the resize claim in a context manager and then the rpc call inside
16:18:12 superdan mriedem: I know, but precheck is a subclass of migration error
16:18:26 superdan mriedem: thought maybe it should be catching migrationerror instead
16:18:51 mriedem no i assume he added MigrationPreCheckError specifically b/c that's what was added to the driver to raise in tha same change
16:19:20 superdan I guess it doesn't matter regardless since we're not going to return the exception we let through to anything anyway
16:19:44 mriedem i'm not sure what the resize_claim has to do with anything,
16:19:48 mriedem that just aborts the claim on failure
16:19:58 mriedem like if the rpc cast blows up or something i guess
16:20:19 superdan mriedem: right, I'm saying there seems to be no reason to do that if we're not going to make a call
16:20:38 superdan let me take a step back
16:20:52 superdan all I'm saying is a lot of this path looks very confused about what is a blocking call vs. cas
16:20:54 superdan *cast
16:20:56 superdan that's all
16:21:15 mriedem agree
16:21:32 mriedem which is why i did this the other day https://review.openstack.org/#/c/496861/
16:21:40 mriedem because following this stupid back and forth shit is confusing
16:21:53 mriedem i've been meaning to do something like ^ for the live migration craziness for awhile too
16:22:09 mriedem like, "in this method, which is the 5th part of the live migration crazy, which fucking host am i actually on right now?!"
16:22:24 mriedem sorry for the salty language
16:26:04 kashyap mriedem: Salty language is welcome. [/me has a TODO item to write down live migration flow for Nova, too]
16:32:55 openstackgerrit Matt Riedemann proposed openstack/nova master: Remove useless error handling in prep_resize https://review.openstack.org/497976
16:34:25 openstackgerrit Dan Smith proposed openstack/nova master: Add uuid to migration object and migrate-on-load https://review.openstack.org/496934
16:39:19 openstackgerrit Eric Fried proposed openstack/nova-specs master: WIP: SPEC: Treat devices as generic resources https://review.openstack.org/497978

Earlier   Later