| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2022-02-21 | |||
| 15:20:34 | sean-k-mooney | right now its guarded by the remote managed tag | |
| 15:20:47 | sean-k-mooney | so it wont actully break anything unless you set that in the whitelist | |
| 15:21:06 | sean-k-mooney | but this is much more fragile then i would like | |
| 15:21:50 | gibi | hyperv does not use the pci device tracker I assume | |
| 15:21:58 | sean-k-mooney | i think it does | |
| 15:22:16 | sean-k-mooney | but the current code pats only run if you set remote_manged=true | |
| 15:22:29 | sean-k-mooney | and we catch error for the interface lookup in the qos path | |
| 15:22:51 | sean-k-mooney | which you also said is called form teh virt driver so it would not trigger an error in hyperv | |
| 15:22:55 | gibi | they do a very different and limited device matching https://github.com/openstack/nova/blob/0e0196d979cf1b8e63b9656358116a36f1f09ede/nova/virt/hyperv/vmops.py#L438-L444 | |
| 15:23:01 | gibi | just vendor and product id | |
| 15:23:06 | sean-k-mooney | yes | |
| 15:23:21 | gibi | so they are not relying on the whitelist pcidevicespec matching logic | |
| 15:23:22 | sean-k-mooney | hyperv does not allow them to access the pci address | |
| 15:23:41 | sean-k-mooney | the have an indrict handel via a uuid if i rememebr correctly | |
| 15:24:04 | sean-k-mooney | so they cant use the devname or adress fields | |
| 15:24:11 | dmitriis | sean-k-mooney: yeah, with the current code, runtime checks would only be triggered if the tag is set to true | |
| 15:24:12 | sean-k-mooney | just vendor id and prduct id | |
| 15:26:37 | sean-k-mooney | gibi: dmitriis so right now the pci device are first loaded form teh hypervior via https://github.com/openstack/nova/blob/0e0196d979cf1b8e63b9656358116a36f1f09ede/nova/compute/manager.py#L1554-L1560 | |
| 15:27:03 | sean-k-mooney | the compute mangers pre start hook calls update_available_resource | |
| 15:27:33 | sean-k-mooney | which calls into driver which gets the avaible resouces | |
| 15:27:59 | sean-k-mooney | that is the entrypoint that should raise the exction that will kill the comptue service if the confguration is invlaide | |
| 15:28:41 | sean-k-mooney | https://github.com/openstack/nova/blob/0e0196d979cf1b8e63b9656358116a36f1f09ede/nova/compute/resource_tracker.py#L879 | |
| 15:28:50 | sean-k-mooney | is where the resouce tracker called the virt driver | |
| 15:28:55 | opendevreview | Jonathan Race proposed openstack/nova master: driver/secheduler/docs for Adds Pick guest CPU architecture based on host arch in libvirt driver support https://review.opendev.org/c/openstack/nova/+/822053 | |
| 15:28:55 | opendevreview | Jonathan Race proposed openstack/nova master: object/notification for Adds Pick guest CPU architecture based on host arch in libvirt driver support https://review.opendev.org/c/openstack/nova/+/828369 | |
| 15:28:56 | opendevreview | Jonathan Race proposed openstack/nova master: zuul-job for Adds Pick guest CPU architecture based on host arch in libvirt driver support https://review.opendev.org/c/openstack/nova/+/828372 | |
| 15:29:16 | sean-k-mooney | which gets the pci passthough info https://github.com/openstack/nova/blob/0e0196d979cf1b8e63b9656358116a36f1f09ede/nova/virt/libvirt/driver.py#L8984 | |
| 15:29:51 | gibi | sean-k-mooney: so the comment in https://github.com/openstack/nova/blob/0e0196d979cf1b8e63b9656358116a36f1f09ede/nova/compute/manager.py#L1388-L1396 is not valid in the sense that the pci device tracker could kill the compute service not just the periodic task | |
| 15:30:10 | sean-k-mooney | that is used to init the pci tracker here https://github.com/openstack/nova/blob/0e0196d979cf1b8e63b9656358116a36f1f09ede/nova/compute/resource_tracker.py#L761 | |
| 15:30:38 | sean-k-mooney | gibi: yes it should be able to kill both | |
| 15:31:57 | gibi | https://review.opendev.org/c/openstack/nova/+/342301/2/nova/compute/manager.py this added the early parsing | |
| 15:31:57 | sean-k-mooney | gibi: so yes loadign the whitelisth ehre kills things early if the syntax is wrong but the pci tracker can kill the agent and or the perodic later if it whishes by raising an excption | |
| 15:32:32 | gibi | and at that time the pre_start_hook already called update_available_resource so then I don't see how that original bug happened | |
| 15:33:50 | sean-k-mooney | i dont think i reviewd that | |
| 15:33:54 | sean-k-mooney | so im not sure either | |
| 15:33:55 | gibi | it is ooold | |
| 15:34:07 | gibi | anyhow | |
| 15:34:11 | gibi | in summary | |
| 15:34:17 | gibi | we have plenty of coupling | |
| 15:34:24 | gibi | I will try to document that in the bug | |
| 15:34:27 | gibi | I opened | |
| 15:34:50 | gibi | but I'm not sure any more that I want to refactor everything before I fix the PF MAC update problem | |
| 15:35:01 | sean-k-mooney | actully i think this was invalid | |
| 15:35:05 | sean-k-mooney | https://bugs.launchpad.net/nova/+bug/1603034 | |
| 15:35:21 | sean-k-mooney | pci_passthrough_whitelist = [ {"devname": "hed1", "physical_network": "physnet1"},{"physical_network": "physnet1", "address": "*:04:00.0"},{"physical_network": "physnet2", "address": "*:04:00.1"}] | |
| 15:35:30 | sean-k-mooney | they were expecting an error because hed1 was not present | |
| 15:35:37 | sean-k-mooney | but the whitelist parsing shoudl not check that | |
| 15:35:49 | sean-k-mooney | so the change they have should not affect that behvioar | |
| 15:36:11 | gibi | still the whitelist.__init__ caught that based on the attached stack trace | |
| 15:36:22 | gibi | but did not kill the compute | |
| 15:36:53 | sean-k-mooney | it looks like it was found because of _init_dev_details | |
| 15:36:57 | gibi | yepp | |
| 15:37:03 | sean-k-mooney | so at that poitn it was doing the sysfs lookup | |
| 15:37:07 | gibi | yes | |
| 15:37:24 | sean-k-mooney | ya so that was actully already a bug | |
| 15:37:39 | sean-k-mooney | since it shoudl not call sysfs as we have been disucssing | |
| 15:38:20 | sean-k-mooney | gibi: ok so you are writign up a bug for this | |
| 15:38:39 | sean-k-mooney | and are going to try an capture this old context | |
| 15:39:04 | gibi | yes | |
| 15:39:17 | gibi | I try to write up what couplings I found | |
| 15:39:23 | gibi | the Whitelist.__init__ is one example | |
| 16:08:46 | gibi | I did the write up https://bugs.launchpad.net/nova/+bug/1961587/comments/2 | |
| 16:11:20 | opendevreview | Alexey Stupnikov proposed openstack/nova master: Run clean up calls when queued live migration is aborted https://review.opendev.org/c/openstack/nova/+/828570 | |
| 16:48:05 | kashyap | Finally ... Linux kernel wants to consolidate /dev/random and /dev/urandom. Removes much confusion - https://lwn.net/SubscriberLink/884875/0c09a5929fef859c/ | |
| 16:48:42 | kashyap | "it would seem there are no huge barriers to removing the final distinction between /dev/random and /dev/urandom—other than the names, of course" | |
| 16:53:35 | opendevreview | Ghanshyam proposed openstack/nova master: Modify remaining APIs as per RBAC new guidelines https://review.opendev.org/c/openstack/nova/+/828994 | |
| 16:54:08 | opendevreview | Ghanshyam proposed openstack/nova master: Separate flavor extra specs policy for server APIs https://review.opendev.org/c/openstack/nova/+/829626 | |
| 16:54:25 | opendevreview | Ghanshyam proposed openstack/nova master: Complete phase-1 of RBAC community-wide goal https://review.opendev.org/c/openstack/nova/+/829866 | |
| 16:56:24 | dansmith | gibi: where did the compute node stuff go in this? https://review.opendev.org/c/openstack/nova/+/828369/20 | |
| 16:56:45 | gibi | dansmith: on a call, I will ping you soon | |
| 16:56:50 | dansmith | gibi: I was going to circle back and see how that was shaping up, but it looks like a lot was dropped in the latest rev so something much have changed | |
| 16:56:51 | dansmith | sure | |
| 16:59:49 | chateaulav | dansmith: see patchset 19 | |
| 17:00:37 | dansmith | chateaulav: what about it? no comments on there about a change in direction that I see | |
| 17:00:44 | dansmith | chateaulav: or do you mean ps20 was an accident? | |
| 17:01:41 | chateaulav | we discussed this morning about dropping initial riscv support in this cycle. I can make note in the review of the discussion from irc. | |
| 17:01:54 | dansmith | ah okay | |
| 17:02:06 | chateaulav | dansmith: i wanted to ensure code had no issues with the support removed | |
| 17:02:07 | dansmith | that's why I was asking here, figured there was some discussion not captured there | |
| 17:02:15 | chateaulav | totally | |
| 17:18:19 | chateaulav | dansmith: let me know if you have any questions. and also see the DNM from gibi for a more complete capture of the issue and related bug that was submitted. https://review.opendev.org/c/openstack/nova/+/829989 | |
| 17:18:29 | dansmith | chateaulav: I just commented on that | |
| 17:26:05 | gibi | dansmith: chateaulav is correct we do not try to extend the Arch enum any more so the ComputeNode OVO backporting issue can be ignored now | |
| 17:26:14 | gibi | at least for the current release | |
| 17:26:56 | dansmith | yep, I'm caught up having seen your DNM | |
| 17:27:07 | gibi | dansmith: thanks for the comment on https://review.opendev.org/c/openstack/nova/+/829989 | |
| 17:27:26 | gibi | dansmith: the separate ListObject thing might work | |
| 17:27:38 | dansmith | worth a try I think | |
| 17:28:02 | dansmith | and in that case, the list object becomes more of a "this is what specs the remote side supports" which can have its own legit translation logic in the backport | |
| 17:28:03 | gibi | dansmith: so in the next release if we want riscv support then we can try that | |
| 17:28:07 | dansmith | ++ | |
| 17:28:38 | gibi | if it does not work then we can still make a minimum service version check on the new compute before publishing support for new archs | |
| 17:28:48 | dansmith | there could be a situation in the future where we supported arm and then it split into arml and armf, such that we need to translate those two into one or something | |
| 17:28:52 | dansmith | yep, for sure | |
| 17:29:23 | gibi | dansmith: ohh that arm thingy is a nice example where we need specific translation in the supported list | |
| 17:29:30 | dansmith | yeah | |
| 17:29:34 | gibi | OK I think this is settled | |
| 17:29:38 | gibi | thanks | |
| 17:30:51 | dansmith | cool | |
| 17:33:43 | gibi | chateaulav: I checked the first patch of the series it looks good to me. I will continue with the rest tomorrow | |