| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2019-12-02 | |||
| 19:03:29 | Sundar | parameter) will now be in the compute manager patch. | |
| 19:03:52 | dansmith | Sundar: ah right, forgot that would be the check, so yes, move it thusly | |
| 19:04:01 | Sundar | dansmith: What you said about resources['accel...'] is exactly what I said in the gerrit review :) | |
| 19:04:06 | dansmith | ack | |
| 19:04:35 | dansmith | Sundar: except not the same names | |
| 19:04:46 | dansmith | Sundar: I was giving you a freebie pre -1 on the *name* :) | |
| 19:05:02 | Sundar | What name? | |
| 19:05:13 | dansmith | accel_info instead of accelerator_requests | |
| 19:05:35 | Sundar | I see. To match network_info etc. | |
| 19:05:38 | dansmith | yes | |
| 19:05:49 | dansmith | because I have issues. my therapist and I are working on them. | |
| 19:05:49 | Sundar | Ok, I'm not too hung up on names | |
| 19:05:54 | dansmith | good :) | |
| 19:08:23 | Sundar | sean-k-mooney: still intrigued by your idea for a fake device, block or PCI. Do you have a way to simulate a PCI device? It can be *quite* difficult AFAICS with linux PCI subsystem. | |
| 19:08:56 | dansmith | so I was thinking about something else, like grab the last usb host and pass that through | |
| 19:09:28 | dansmith | Sundar: I would focus on getting the patches back into order, and let sean-k-mooney pull something out of his butt for faking the PCI stuff... :) | |
| 19:10:25 | Sundar | Yup, that's what I plan to do :) but a 'real fake driver' (heck, I'll grab the award for today's oxymoron) would be very useful for the future. | |
| 19:10:26 | dansmith | he pulled off some fancy stuff for the numa live migration stuff, so we should see if he can do it again here :) | |
| 19:10:31 | sean-k-mooney | Sundar: the closest i have come up with is the netdevsim kernel module wich does create sriov capable fake pci device for testing and developing the kernel ebpf code | |
| 19:10:50 | sean-k-mooney | Sundar: how ever i dont think you can actully pass those device to a qemu instace. i have not tried however | |
| 19:11:08 | sean-k-mooney | i did try to use it for sriov testing in the past but i could not get it to work | |
| 19:11:56 | sean-k-mooney | i was able to create the fake device but i could not assing the vfs the pf might have worked but we dont really want to have to compile kernel module in the gate if we can avoid it | |
| 19:12:20 | Sundar | sean-k-mooney: It would be useful to have a libvirt patch where the domain XML for hostdev can have an attribute that indicates 'do not pass this to qemu'. | |
| 19:12:35 | Sundar | That would be useful outside of OpenStack too, I would guess. | |
| 19:12:37 | dansmith | sean-k-mooney: that's why i was thinking pick something on the host we could pass through, like one of those USB hosts | |
| 19:12:56 | dansmith | Sundar: can't imagine the libvirt folks would go for that | |
| 19:12:56 | sean-k-mooney | dansmith: maybe ya | |
| 19:14:11 | sean-k-mooney | there was talk and patchs for adding the abilty to emulate sriov device in qemu | |
| 19:14:27 | sean-k-mooney | if that ever gets merged upstream we might be able to use that | |
| 19:14:42 | sean-k-mooney | but for now it think focusing on getting the patches in order is better | |
| 19:15:06 | sean-k-mooney | if i come up with a way to fake sriov/pci deivces ill let ye know | |
| 19:15:24 | Sundar | We're all agreed on that :). Time for me to get back to work. | |
| 19:16:13 | sean-k-mooney | one thing i have been meaning to test for a while is if i can use a neutron port as a pci device for a guest | |
| 19:16:38 | sean-k-mooney | they dont support vfs put i might be able to do a PF passthough | |
| 19:18:13 | sean-k-mooney | im pretty sure we are missing a few things to make that work however espacally in the upstream ci. | |
| 19:38:52 | openstackgerrit | Eric Fried proposed openstack/nova master: Use Placement 1.34 (string suffixes & mappings) https://review.opendev.org/696418 | |
| 19:38:53 | openstackgerrit | Eric Fried proposed openstack/nova master: WIP: Tie requester_id to RequestGroup suffix https://review.opendev.org/696946 | |
| 19:40:02 | efried | gibi: 696418 ^ now just does the 1.34 cutover, will continue with the rest in subsequent patches. | |
| 19:51:42 | openstackgerrit | Merged openstack/nova master: Process requested_resources in ResourceRequest init https://review.opendev.org/696354 | |
| 20:04:18 | efried | dansmith: is nullable=True (e.g. [1]) made moot by having a default and using obj_set_defaults() in __init__ (e.g. [2])? | |
| 20:04:18 | efried | [1] https://github.com/openstack/nova/blob/f1382651dc3b7b945b69a2af0bc05aa472f26b28/nova/objects/request_spec.py#L1061 | |
| 20:04:18 | efried | [2] https://github.com/openstack/nova/blob/f1382651dc3b7b945b69a2af0bc05aa472f26b28/nova/objects/request_spec.py#L1071 | |
| 20:04:28 | dansmith | no | |
| 20:04:40 | dansmith | efried: nullable=True *only* means "can be set to None" | |
| 20:04:55 | efried | ah fusk, will I *ever* get that right? | |
| 20:05:04 | dansmith | probably not | |
| 20:05:05 | efried | I thought it meant "can be absent" (in terms of `in`) | |
| 20:05:16 | dansmith | no, | |
| 20:05:23 | dansmith | all fields can be absent all the time | |
| 20:05:29 | dansmith | also unrelated to defaults | |
| 20:05:49 | efried | dansmith: oh; so does obj_set_defaults() mean I don't have to do the `in` check? | |
| 20:05:55 | dansmith | no | |
| 20:06:14 | dansmith | if you haven't set defaults on the object, then 'in' will fail if the field is unset | |
| 20:06:29 | dansmith | you're connecting three things which are unrelated | |
| 20:06:44 | dansmith | __contains__ means nothing more than "is it set right now" | |
| 20:06:51 | dansmith | nullable means "can be set to none" | |
| 20:07:05 | dansmith | and default= means "if they call obj_set_defaults(), set this field to this value" | |
| 20:07:21 | efried | right, so forget nullable; I'm really just confirming whether gibi is correct here https://review.opendev.org/#/c/696418/1/nova/scheduler/utils.py@327 | |
| 20:07:45 | dansmith | technically he is not right | |
| 20:07:52 | dansmith | practically, he is. | |
| 20:07:53 | efried | because the obj could be loaded from cold storage | |
| 20:07:57 | dansmith | right | |
| 20:07:59 | efried | where it was unset | |
| 20:08:15 | dansmith | or you could del obj['field'] | |
| 20:08:35 | efried | but in this case the only way it got to cold storage was from having been previously __init__()ed, which set the defaults | |
| 20:08:53 | dansmith | the init hack might actually result in it being set when you load it from the db, but unintentionally, which is why I have campaigned against *ever* doing that | |
| 20:08:53 | efried | oh, unless it got stored/restored at an earlier version, I guess. | |
| 20:09:28 | dansmith | we don't check for every field in every object always because it's pointless.. in most cases we know which fields are always set | |
| 20:09:40 | dansmith | if there is any question, then you must check, but if there's not then you don'[t | |
| 20:10:19 | efried | so the check is not truly redundant, but not worth keeping in this case. | |
| 20:10:28 | dansmith | so the init hack probably means you dont need to check (hence "practically") but... the init hack is not something we should be doing, IMHO, so.. | |
| 20:10:29 | dansmith | right | |
| 20:10:31 | dansmith | I mean, | |
| 20:10:36 | openstackgerrit | Merged openstack/nova master: Reusable RequestGroup.add_{resource|trait} https://review.opendev.org/696380 | |
| 20:10:41 | dansmith | you can answer the "worth keeping" part, as I dont' have context | |
| 20:10:51 | dansmith | but I assume you're saying it has always been set somewhere, so probably safe | |
| 20:11:00 | dansmith | which, if true, is in keeping with our practices | |
| 20:11:07 | efried | I'm glad I asked. | |
| 20:11:11 | efried | thanks | |
| 20:13:02 | dansmith | yarp | |
| 20:13:46 | openstackgerrit | Lee Yarwood proposed openstack/nova stable/train: compute: Use long_rpc_timeout in reserve_block_device_name https://review.opendev.org/696953 | |
| 20:14:06 | openstackgerrit | Matt Riedemann proposed openstack/nova master: api-guide: flesh out the server actions section https://review.opendev.org/696954 | |
| 20:14:07 | mriedem | dansmith: melwitt: i wrote up a doc on using the instance actions API/commands ^ | |
| 20:15:06 | melwitt | f yeah | |
| 20:15:20 | openstackgerrit | Lee Yarwood proposed openstack/nova stable/stein: compute: Use long_rpc_timeout in reserve_block_device_name https://review.opendev.org/696955 | |
| 20:16:06 | openstackgerrit | Lee Yarwood proposed openstack/nova stable/rocky: compute: Use long_rpc_timeout in reserve_block_device_name https://review.opendev.org/696956 | |
| 20:24:02 | melwitt | mriedem: I thought you might appreciate this video https://twitter.com/Fobwashed/status/1200701358623473664 | |
| 20:26:16 | efried | I am clearly missing a huge amount of context and will never get that video. | |
| 20:26:33 | dansmith | same | |
| 20:26:35 | mriedem | i don't actually play games made after 98 so while i get it, ... | |
| 20:26:52 | mriedem | it's a joke about a shitty first person adventure game | |
| 20:27:06 | dansmith | people who live in their parents' basements are laughing hysterically right now though, I'm sure | |
| 20:27:09 | melwitt | really? aw man | |
| 20:27:22 | dansmith | (and melwitt apparently :P) | |
| 20:28:00 | melwitt | my favorite game in the series was morrowind. I started playing skyrim but lost interest | |
| 20:28:08 | dansmith | never heard of either | |
| 20:28:27 | mriedem | the pan flute is a nice touch | |
| 20:28:29 | dansmith | damn kids. | |
| 20:29:10 | melwitt | yeah, I guess only rpg fans might know it. though skyrim got pretty universally popular (to my surprise) | |
| 20:55:32 | mriedem | oh i am an rpg fan and have the saving throws to prove it | |