Earlier  
Posted Nick Remark
#openstack-nova - 2019-12-02
19:03:17 dansmith accel_info = resources['accel_info']
19:03:20 dansmith :)
19:03:28 Sundar dansmith: That method would remain, albeit it would move to the compute manager patch. So that the waiting logic can call it once to decide whether to quit early. The virt driver patch 631245 will slim down to just the libvirt driver changes. The change in the signature for virt driver base class and the libvirt driver (to include arqs as a
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

Earlier   Later