| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2019-09-05 | |||
| 10:29:35 | aspiers | a third option efried suggested is a new virt.libvirt.hardware | |
| 10:30:05 | openstackgerrit | Luyao Zhong proposed openstack/nova master: object: Introduce Resource and ResourceList objs https://review.opendev.org/678448 | |
| 10:30:06 | openstackgerrit | Luyao Zhong proposed openstack/nova master: Add resources dict into _Provider https://review.opendev.org/678449 | |
| 10:30:06 | openstackgerrit | Luyao Zhong proposed openstack/nova master: Retrieve the allocations early https://review.opendev.org/678450 | |
| 10:30:07 | openstackgerrit | Luyao Zhong proposed openstack/nova master: Claim resources in resource tracker https://review.opendev.org/678452 | |
| 10:30:07 | openstackgerrit | Luyao Zhong proposed openstack/nova master: libvirt: Enable driver discovering PMEM namespaces https://review.opendev.org/678453 | |
| 10:30:08 | openstackgerrit | Luyao Zhong proposed openstack/nova master: libvirt: report VPMEM resources by provider tree https://review.opendev.org/678454 | |
| 10:30:08 | openstackgerrit | Luyao Zhong proposed openstack/nova master: libvirt: Support VM creation with vpmems and vpmems cleanup https://review.opendev.org/678455 | |
| 10:30:09 | openstackgerrit | Luyao Zhong proposed openstack/nova master: Parse vpmem related flavor extra spec https://review.opendev.org/678456 | |
| 10:30:09 | openstackgerrit | Luyao Zhong proposed openstack/nova master: libvirt: Enable driver configuring PMEM namespaces https://review.opendev.org/679640 | |
| 10:30:10 | openstackgerrit | Luyao Zhong proposed openstack/nova master: Add functional tests for virtual persistent memory https://review.opendev.org/678470 | |
| 10:30:11 | openstackgerrit | Luyao Zhong proposed openstack/nova master: doc: attaching virtual persistent memory to guests https://review.opendev.org/680300 | |
| 10:30:13 | aspiers | but I was struggling to figure out whether SEV is libvirt specific. At least machine types are QEMU-specific | |
| 10:30:40 | sean-k-mooney | sev is tecnically not | |
| 10:30:48 | sean-k-mooney | but the way you are checking for it is | |
| 10:30:55 | kashyap | aspiers: SEV is hardware-specific; machine types indeed are not "libvirt | |
| 10:31:04 | kashyap | ... -specific" | |
| 10:31:13 | kashyap | As you discovered (read the chat). | |
| 10:31:25 | kashyap | But they're typically handled by libvirt for Nova. | |
| 10:31:29 | aspiers | Right | |
| 10:32:41 | aspiers | The problem is that get_mem_encryption_constraint() and its helpers are tied to virt.hardware | |
| 10:33:11 | sean-k-mooney | aspiers: move sev_enabled out of utils into the driver | |
| 10:33:12 | aspiers | because they rely on _get_flavor_image_meta() in that file, and so do other functions there | |
| 10:34:06 | aspiers | sean-k-mooney: originally sev_enabled had to be outside driver.py | |
| 10:34:13 | aspiers | so it could be called from vif.py | |
| 10:34:25 | aspiers | but now I moved the iommu stuff into designer.py | |
| 10:34:31 | aspiers | so maybe I could move it back | |
| 10:34:36 | sean-k-mooney | all calls from vif.py are form the driver | |
| 10:34:46 | sean-k-mooney | so you can pass it in a flag if its needed | |
| 10:34:58 | aspiers | that wasn't easily doable before | |
| 10:35:04 | sean-k-mooney | but we dont pas the libvirt host object to any other funciton in utils | |
| 10:35:07 | aspiers | but now it's not needed anyway | |
| 10:35:30 | sean-k-mooney | the utils dont actully talk to libvirt as far as i can see | |
| 10:35:36 | aspiers | right | |
| 10:35:52 | sean-k-mooney | so the sev_enabled check does not fit with the rest of the module | |
| 10:36:41 | sean-k-mooney | so ya simple fix is just make it a member funciton of the driver then you can do self.host and just pass in the flavor and image | |
| 10:37:14 | aspiers | I don't think this is sufficient | |
| 10:37:27 | aspiers | how would https://review.opendev.org/#/c/644565/51/nova/virt/libvirt/utils.py@38 change? | |
| 10:37:34 | aspiers | oh sorry | |
| 10:37:37 | sean-k-mooney | i will remove the only use of hardware.py form the utils | |
| 10:37:42 | aspiers | wrong link | |
| 10:38:06 | aspiers | how would https://review.opendev.org/#/c/680065/4/nova/virt/hardware.py change? | |
| 10:38:18 | sean-k-mooney | that would not | |
| 10:38:30 | aspiers | but that already causes a cycle | |
| 10:38:33 | sean-k-mooney | your only calling libvirt_utils.get_machine_type(image_meta) | |
| 10:38:49 | sean-k-mooney | how | |
| 10:38:56 | aspiers | look at the CI failures :) | |
| 10:39:07 | sean-k-mooney | hardware.py will import utils but utils wont import it | |
| 10:39:33 | sean-k-mooney | so if you remove the change in https://review.opendev.org/#/c/644565/51/nova/virt/libvirt/utils.py@38 | |
| 10:39:38 | sean-k-mooney | its not an issue right | |
| 10:40:30 | aspiers | ohhh OK those CI failures on the first patch are something else | |
| 10:40:42 | aspiers | I thought I saw circular import errors in both patches but I was wrong | |
| 10:40:50 | aspiers | cool | |
| 10:42:11 | sean-k-mooney | there is another way to break circual dependcies in python but moveing htat function is the simplest | |
| 10:42:23 | aspiers | which one? | |
| 10:42:28 | aspiers | sev_enabled? | |
| 10:42:31 | sean-k-mooney | yes | |
| 10:42:34 | sean-k-mooney | moving it to the driver | |
| 10:42:42 | aspiers | you mentioned another function in utils you are gonna move? | |
| 10:42:45 | aspiers | which one? | |
| 10:42:59 | sean-k-mooney | no you dont need to move anything else | |
| 10:43:04 | aspiers | oh that's the only one OK cool | |
| 10:43:06 | sean-k-mooney | just the new funtion your intoducing | |
| 10:43:14 | aspiers | so move that to libvirt/driver.py | |
| 10:43:18 | aspiers | where it was originally :) | |
| 10:43:20 | sean-k-mooney | ya | |
| 10:43:22 | aspiers | cool | |
| 10:43:29 | aspiers | using designer.py made everything a lot cleaner | |
| 10:43:33 | aspiers | this is another example of that | |
| 10:43:42 | aspiers | thanks a lot! | |
| 10:43:45 | sean-k-mooney | we want to kill desigenr.py | |
| 10:43:48 | yonglihe | sean-k-mooney, stephenfin: good morning, guys. | |
| 10:43:51 | aspiers | my brain was hurting from thinking about this | |
| 10:43:53 | sean-k-mooney | or at least we did | |
| 10:44:10 | aspiers | sean-k-mooney: there should be a list of tech debt goals somewhere public | |
| 10:44:11 | sean-k-mooney | yonglihe: hi | |
| 10:44:15 | aspiers | sean-k-mooney: e.g. storyboard | |
| 10:44:28 | aspiers | maybe it's on an etherpad somewhere | |
| 10:44:29 | sean-k-mooney | aspiers: i was going to say etherpad would be good. | |
| 10:44:35 | aspiers | WFM too | |
| 10:44:49 | aspiers | OK, gonna take a break | |
| 10:45:23 | sean-k-mooney | aspiers: the designer.py was intoduced by danpb to breakout some fo the code out of the driver but it was started and never finish and became techdebt | |
| 10:45:39 | sean-k-mooney | really we shoudl merge it into the config.py | |
| 10:45:48 | aspiers | I disagree | |
| 10:45:56 | sean-k-mooney | its basically doing the same thing | |
| 10:46:00 | aspiers | I think the scoping text at the top of config.py is good | |
| 10:46:10 | sean-k-mooney | well i gues | |
| 10:46:12 | aspiers | it's good to keep logic out of config,py | |
| 10:46:22 | sean-k-mooney | config.py is giving you the datamodels | |
| 10:46:24 | aspiers | just keep it parsing/generating XML only | |
| 10:46:28 | sean-k-mooney | and serialistaion code | |
| 10:46:38 | sean-k-mooney | and the designer is wiring up the elements | |
| 10:46:51 | sean-k-mooney | but the problem is so is the driver.py | |
| 10:47:21 | sean-k-mooney | so without moveing more of the xml logic out of the dirver and into the desinger among other things its kind of messey to have it in two places | |
| 10:47:48 | sean-k-mooney | yonglihe: o/ | |
| 10:50:25 | sean-k-mooney | yonglihe: i see stephenfin has +2'd the toplogy api seires. it should merge soon | |
| 10:50:55 | sean-k-mooney | yonglihe: that just leaves your orpahn vm series right | |
| 10:51:22 | openstackgerrit | Adam Spiers proposed openstack/nova master: Ensure q35 machine type is used when booting with SEV https://review.opendev.org/680065 | |
| 10:51:37 | openstackgerrit | Adam Spiers proposed openstack/nova master: Ensure q35 machine type is used when booting with SEV https://review.opendev.org/680065 | |
| 10:52:10 | yonglihe | sure, i notice that. thank you guys. That orphan is real orphan now. -:) | |