Wednesday, 2026-08-19

opendevreviewGhanshyam Maan proposed openstack/nova master: Shutdown thread pool executors during graceful shutdown  https://review.opendev.org/c/openstack/nova/+/100021102:50
opendevreviewBhavana proposed openstack/nova-specs master: Add spec for MIG-aware PCI Host Weigher  https://review.opendev.org/c/openstack/nova-specs/+/99875305:18
opendevreviewchandan kumar proposed openstack/nova master: Add libvirt driver MDEV ARQ support for Cyborg  https://review.opendev.org/c/openstack/nova/+/99584005:54
opendevreviewGoutham Pacha Ravi proposed openstack/nova master: Support cold migration with virtiofs shares  https://review.opendev.org/c/openstack/nova/+/98963306:06
opendevreviewLajos Katona proposed openstack/nova master: libvirt: Add test for MTU overwrite during live migration  https://review.opendev.org/c/openstack/nova/+/99580308:07
opendevreviewLajos Katona proposed openstack/nova master: libvirt: Preserve source MTU during live migration  https://review.opendev.org/c/openstack/nova/+/99580908:36
opendevreviewLajos Katona proposed openstack/nova master: Add regression test to repoduce bug 1854844  https://review.opendev.org/c/openstack/nova/+/99177208:36
gibisean-k-mooney: thanks for the TDX review, and good catch on the cgroups problem. I agree with having a config option until libvirts add capacity reporting08:44
gibiI will test out scsi support on my machine08:44
sean-k-mooneyack08:45
gibiand I confirmed that serial access works08:45
sean-k-mooneythat good08:45
sean-k-mooneyat least one of the concoles will08:45
gibiyeah :)08:45
gibisuper secure VM, you cannot even access it :)08:45
sean-k-mooney:)08:45
gibinobody can. done. 08:45
sean-k-mooneymost secure08:45
sean-k-mooneyso i was debating soemting as well08:46
sean-k-mooneyif you have enabel tdx08:46
sean-k-mooneyshoudl we automaticlly select hw_video_model="none" for you08:46
sean-k-mooneyif its not set in the image08:46
sean-k-mooneytechnially when its not set in the image the libvirt driver choose for you08:47
sean-k-mooneyit used to chosoe cirros and we updated it to virtio-gpu08:47
sean-k-mooneybut it could take into account tdx08:47
gibihm that is not a bad idea. I would say we can add that as a follow up08:48
sean-k-mooneyyep can be a followup08:48
gibicurrently we document that you need to set none explicitly, and we can relax that later08:48
gibithat is a nice UX improvement08:48
sean-k-mooneythe real reason i said this feature feel like it shoudl be experimatal is the amount of specifcal casing you need to do to make it work at all combiend with the fact it only works with host-passthough08:48
sean-k-mooneythat last part makes me quite uncofrrotable08:49
sean-k-mooneyi like host-passthough for performace08:49
sean-k-mooneybut we have never had a feature that only works when that is used before08:49
sean-k-mooneyso i think if you ahve not selected host-passtouhg we shoudl likely avoid reporting tdx supprot as a trait08:50
sean-k-mooneyeven when the host supprot it08:50
sean-k-mooneywith that sait08:50
sean-k-mooney*said08:50
sean-k-mooneyim hoping the host-passthough requirement is tempory08:50
sean-k-mooneyso if future qemu cpu models supprot tdx08:51
sean-k-mooneythen we dont want the extra code in nova to filter the triats08:51
opendevreviewLajos Katona proposed openstack/nova master: libvirt: Preserve queue_size during live migration  https://review.opendev.org/c/openstack/nova/+/99584108:51
sean-k-mooneytaht why i didnt suggest that in the review but ya it makes me a bit uneasy08:51
gibiI'm not sure that host-passthrough requirement is valid on cpu level or just a consequence of this bug https://bugs.launchpad.net/nova/+bug/2158927/comments/108:53
gibiantia: ^^ could you confirm which is the case?08:54
gibisean-k-mooney: antia: fyi I'm on PTO Thru/Fri this week but I'm back on Monday 08:55
sean-k-mooneygibi: ack08:55
gibiwe have FF next Thursdays I assuem08:55
sean-k-mooneyso cpu_models = Nehalem is an intel model08:55
gibiassume08:55
sean-k-mooneyand it normlaly works on amd08:56
sean-k-mooneybut i have seen it not work in some cases08:56
sean-k-mooneyhave you tested host-model08:56
antiaamd has a cpu model with AMD SEV-SNP support (EPYC-v4), but there is none with Intel TDX support 08:56
gibiin this case it triggers the feature precondition check without proper image meta passed causing the issue in that bug08:56
antiaTDX requires qemu to have -cpu host which is where the requirement for host-passthrough comes from08:58
sean-k-mooneyantia: but is that being worked on to fix in qemu08:58
sean-k-mooneyantia: its totally fine if that is a limaition in the current qemu08:59
sean-k-mooneybut long term that is not somethign we shoudl continue to require08:59
sean-k-mooneywe generaly try not ot add feature that do not supprot live migration08:59
sean-k-mooneythe excption to that is if its a hardare limiation09:00
sean-k-mooneywhich this mostly is today09:00
sean-k-mooney (mix of hardare and qemu limiation)09:00
sean-k-mooneyas long as there is a path to eventuly supproting live migration with TDX or SEV instance that fine but i woudl hate to force operator to choose between secure vms and 5 9s of uptime for workloads09:01
gibiyeah regardless of the model support live migration is not supported for SEV or TDX09:01
sean-k-mooneygibi: by the way, our current cirros image dont actully supprot uefi boot09:03
sean-k-mooneyyou can enabel it but the guest wont actully boot09:03
sean-k-mooneyqemu/libirt will boot the vm but i think the image just dont have the efi partion requried and the relevent grub config09:04
gibiI use an ubuntu image locally to be able to try attestation as that anyhow needs an extra kernel module in each case09:04
sean-k-mooneyya so on that09:04
sean-k-mooneyim kind wish we didnt enable that as part of this feature09:04
sean-k-mooneythat really fells like it shoudl have been out of scope09:04
antiaremoving the need for -cpu host was marked as future work, but not sure where it is today09:05
gibiyou mean attestation?09:05
antiaremoving the need for -cpu host was marked as future work 09:05
antiaops09:05
antiahttps://lists.nongnu.org/archive/html/qemu-devel/2025-04/msg00097.html09:05
sean-k-mooneyyes enabel attestation in a portable way is a seprate feature in my view09:05
gibisean-k-mooney: sure nova does nothing really with attestation09:05
sean-k-mooneyso i woudl have wanted that to be its own spec adn have its own extra spec09:05
sean-k-mooneygibi: but we used too09:05
sean-k-mooneywe had supprot for opens attstation and trusted boot before09:06
gibithe sev one works out of the box via the cpu itself. the tdx works via a local socket added automatically by libvirt to the guest09:06
sean-k-mooneyand we riped it out09:06
gibiso we don't carry any code09:06
sean-k-mooneyand we have been asked looks at supprot keylime in the future09:06
gibiand documented nothing09:06
gibiregarding attestation09:06
sean-k-mooneygibi: rgith btu we dotn supprot atested boot today09:06
sean-k-mooneymeaning you cant file a bug agasint nova if it does not work09:07
antiathis is not attested boot though09:07
gibisure, that is fine by me :)09:07
sean-k-mooneyas long as we dont have to fix bugs related to attestation for tdx im ok with it09:07
antiayeah that is more or less why it was included in the documentation to remove any expectation of Nova doing attestations09:08
sean-k-mooneyantia: if the tdx attestation feature is not related to messered secure boot what is it09:08
sean-k-mooneyantia: well the docs dont say that its unsuprpoted right. can we just not allcoate teh socket?09:08
sean-k-mooneyso that thing we are not testing or cliaming to supprot is not enabled09:09
gibisean-k-mooney: I would let libvirt do the default that allows anybody who want to try a chance to make it work09:10
sean-k-mooneyso i dont htink these type of side channle shoud lbe aviabel to folks to hook up like that09:11
sean-k-mooneylike if live migration for exmaple get implemtne only when the socket is not used09:11
sean-k-mooneywe woudl not want ot have to chosoe betwen possiebl breakign folks that set it up and making live migration work09:11
gibiwe expect that if we use the libvirt default then that will work with future features09:11
gibiwhat if not having the socket will break the live migration/09:12
gibi?09:12
gibiwe should not do hypoteticals. Use the underlying default is the safest in my eyes09:12
sean-k-mooneyits not that the socket will break it its we are enabling a feature that we dont know the side effect of09:12
gibiwe are not enabling it, libvirt does.09:13
sean-k-mooneyso we are not addign it to the domain09:13
sean-k-mooneyok09:13
gibiand the whole reason to have these features is to be able to prove that your VM is secure09:13
sean-k-mooneyno09:14
gibiso blocking the possibility of that actively is against the goal09:14
sean-k-mooneyits to encypt the guest memory09:14
sean-k-mooneyproving its secure is its own feature09:14
gibibut how would you know that it is encrypted?09:14
antiaencrypting the guest memory is somewhat useless unless it can be proven09:14
sean-k-mooneythat is my point attestation of any kind shoudl ahve been its own dedicated feature09:14
sean-k-mooneygibi: im not sure you shoudl knwo that as a normal user or how09:15
sean-k-mooneybeyond the flavor extra spec if that is expsoed to you in the releven tcloud09:15
gibibut the premise is that you don't trust the provider so you need a way to be safe09:15
gibiso if the provider tells you it is encrypted you wont trust that either09:16
sean-k-mooneythis socket conenct to a deamon run on the host by the provdier09:16
sean-k-mooneyyou cant trust that eitehr09:16
gibiI guess there are mechanism to make that work. I guess it is just the channel not the source of truth09:17
antiathis goes beyond the scope I think. Intel has documentation on this process09:17
sean-k-mooneyantia im trying not to second guess the spec09:18
gibisean-k-mooney: if this helps I'm OK to say in the doc that nova does not actively support attestation. So we can close bugs. But actively preventing attestation I'm not OK with09:18
sean-k-mooneyim just highlihgt that i woudl have ask for this to be remvoed if i had reviewed the spec09:18
sean-k-mooneyso im highlighting the maintaince concern here not saying we ahve to remove it09:18
sean-k-mooneygibi: yes that woudl help09:18
gibithen lets do that09:18
antiathat I can add09:18
gibithanks both of you 09:19
sean-k-mooneygibi: im just sentitve to the fact that folks have come to depend on the internals of some feature that we didnt intnet to be public in the past09:19
sean-k-mooneyi.e. cloud-init incorrectly usign our dmi/smbios code to detech that its oepnstack09:19
gibiI think in case of AMD you cannot even prevent attestation from libvirt if encryption is on09:20
sean-k-mooneyeven though that only ever worked for libvirt09:20
sean-k-mooneyack09:20
sean-k-mooneyantia: for what its woth the feature more or less looks ok09:21
sean-k-mooneythe main blocker for me is you missing the libvirt version check and the cgroups issue i mentioned in teh review09:21
antiathanks for reviewing!09:21
sean-k-mooneyantia: once those 2 issues are adressed i think we can more or less proceed with the series09:21
antiathe cgroup issue I am resolving right now 09:22
sean-k-mooneycool09:22
gibisean-k-mooney: about the version check09:23
antiaI am not strictly against a version check for TDX, but I find it unnecessary. The same isn't done for SNP and it is not needed since Libvirt capabilities can handle it09:23
gibiyeah ^^09:23
gibiso libvirt only reports the domcap if libvirt + qemu is supporting the feature09:24
sean-k-mooneyoh we already have that supproted via domcaps09:24
gibiyeah09:24
sean-k-mooneyand we are usign that to fileter the traits reporitng09:24
gibithe flag yes, the capacity does not09:24
sean-k-mooneyok then jsut the cgroups issue09:24
gibiyepp09:24
antiaokay good 09:24
sean-k-mooneysorry i missed that09:24
gibino worries09:25
gibiso about scsi. On my machine the VM is created successfully but cannot boot. It stops at the EFI setup not seeing a boot device09:40
antiathat is consistent with my previous experience 09:56
sean-k-mooneythat is becaus of the qemu firmware image yes?10:27
sean-k-mooneyso it may or may not work dependin on that10:27
sean-k-mooneyim not sure if we shoudl relaly block it in nova but we shoudl call it out in the docs10:27
gibiyepp call it out in the doc10:39
gibi(and yes I tested without TDX that the same image boots from scsi)10:40
sean-k-mooneyack, i partly wonder if we are jsut mising setting somethign liek the iommu options we recnelty stop setting for sev10:40
sean-k-mooneybut i guess we can follow up with improvment next cycle if we discover a way to supprot it10:41
sean-k-mooneyand jsut treat it as a minor bugfix10:41
gibiOK10:41
opendevreviewBhavana proposed openstack/nova-specs master: Add spec for MIG-aware PCI Host Weigher  https://review.opendev.org/c/openstack/nova-specs/+/99875311:16
sean-k-mooneyim generally not sure ^ is something that is really in nova scope now11:52
sean-k-mooneycybrog will need a way to provide its own way to experss schdulign prioties in the future11:53
sean-k-mooneybe it a weigher or somethign more generic in nova11:53
sean-k-mooneybut if we are actully intending this fucntionatly to go out of nova then addign mig aware ness to nova is questionable11:54
sean-k-mooneynova can mange vgpus on PGUS configure with mig11:54
sean-k-mooneybut its is not aware mig is in use11:54
opendevreviewBalazs Gibizer proposed openstack/nova master: [DNM]: Troubleshoot race condition in unshelve vif plug  https://review.opendev.org/c/openstack/nova/+/100129412:35
opendevreviewBalazs Gibizer proposed openstack/nova master: [WIP]Add task_state = None as pre-condition of unshelve  https://review.opendev.org/c/openstack/nova/+/100148512:35
gibigmaan: ^^ I have hunch based on your last comment 12:35
sean-k-mooneyunshivlign while still shevle offloading?12:36
gibiyepp12:36
gibiit seems like we have a race12:36
gibithe offloading removes the instance.host while unshelve is already claimed12:36
sean-k-mooneyya i can see that being a problem12:36
sean-k-mooneyalso ya addign task state to the decoreato rmakes seesne12:36
gibiand it might happen more often in the grenade job as it uses a single conductor setup instead of a super and a cell conductor12:36
gibiso the two instance.save happens in the same conductor12:37
sean-k-mooneymaybe although i dont think that would make it that much slower with onloy 1-2 vms12:37
sean-k-mooney*1-2 computes12:37
gibiyeah, I'm just guessing here 12:37
sean-k-mooneyi think the race hunch is a good one12:37
sean-k-mooneyjus tnot entirly sure why its more common in grenade12:38
gibiwe will see. if the precondition makes the tempest test fail early that will prove it12:38
gibiit can be something with threading + single conductor as well. I think only grenade is doing that now 12:38
sean-k-mooneyis the tempest tst properly waiting for it to be shleve offloaded or just unshilving straight away12:39
gibithreading allows more random task switching12:39
gibisean-k-mooney: even if the tempest waits for the shelve_offload state we might set that early with a task state12:39
gibilet me check12:39
sean-k-mooneygibi: well im thinking that tempest shoudl retry the unshleve12:39
sean-k-mooneyat least on a 40912:40
sean-k-mooneywhich is what that decoreator shoudl be returning12:40
sean-k-mooneysince the transtion form shelve to shelve offloaded is configurabel and depend on if its BFV or BFI12:40
sean-k-mooneyor using ceph12:41
gibihttps://github.com/openstack/tempest/blob/fa340b1f5fff8f57a018be206644c81b6d36b3d4/tempest/common/compute.py#L388-L40012:41
sean-k-mooneyso i dont think we can write the test to know which to expect12:41
gibiso it depends on the tempest config what we are waiting for12:41
sean-k-mooneybut it can retyr the unshelve on 409 conflict and still be correct12:41
gibiI can imagine we end up only waiting for SHELVED state and issue an unshelve12:42
sean-k-mooney yep12:42
sean-k-mooneybut as i said for images_type=rbd and bfv we go drictly to shelve_offloaded i think12:42
gibiOK we will see and if it is the case then we need to fix nova and tempest as well12:42
sean-k-mooneyregradless fo the offload time12:42
sean-k-mooneyya we should have ci reulst in a while and we can see12:43
gibiyepp12:45
dansmithgibi: I just +2'd this if you want to re-add yours after the test coverage fix: https://review.opendev.org/c/openstack/nova/+/99857114:15
gibidansmith: ohh sure. Thanks for the reviews there14:23
gibiUggla: I left some feedback in the repro and fix in https://review.opendev.org/c/openstack/nova/+/999978 14:30
gibiI agree this is a valid repro but for the fix we might need to make a step back and see if we can make a wider fix14:30
gibihaving an instance without task state and without instance.host during a period of evac sounds a source of different issuees14:30
gibiUggla: on the same note I will need to drop at 17:45 latest from the upstream triage call today14:45
opendevreviewBalazs Gibizer proposed openstack/nova master: [DNM]: Troubleshoot race condition in unshelve vif plug  https://review.opendev.org/c/openstack/nova/+/100129414:47
opendevreviewBalazs Gibizer proposed openstack/nova master: [WIP]Add task_state = None as pre-condition of unshelve  https://review.opendev.org/c/openstack/nova/+/100148514:47
gibigrr ^^ that was in merge conflict while I thought I just waiting for the CI result 14:47
UgglaUpstream triage meeting15:29
Ugglameet.google.com/zjr-rxus-hzj15:29
gmaangibi: thanks, I was thinking to do some check on conductor side but this is better15:48
gmaangibi: sambork sorry i missed eventlet meeting today. if anything for me to review, please let me know.15:49
samborknp it was mostly about perf test15:52
gmaanack15:55
opendevreviewGhanshyam Maan proposed openstack/nova master: Shutdown thread pool executors during graceful shutdown  https://review.opendev.org/c/openstack/nova/+/100021116:50
opendevreviewGhanshyam Maan proposed openstack/nova master: Shutdown thread pool executors during graceful shutdown  https://review.opendev.org/c/openstack/nova/+/100021117:11
melwittgmaan: can you remind me if there is a fix idea for https://bugs.launchpad.net/nova/+bug/2160254 ? anecdotally I'm seeing a lot of failures on patches I'm following18:01
gmaanmelwitt: not yet, I did not debug it yet. most probably I will be able to get on this after FF18:02
gmaanis it happening too frequently ?18:03
melwittseems so but that is just my personal observation on patches I'm following. I guess I should check opensearch18:03
gmaank, let me see if I can get some time today. it may get worst during FF week :)18:05
melwittgmaan: looks like it's just my bad luck, I see only one hit per day at most18:06
gmaanok, I used to see it mulitple times in the week when i reported bug but agfter that not much occurance, but thanks for reminder, i will see if there is any obious mistake in test18:07
gmaangibi: i saw notification failure in functional threading job, it seems 'start' migration event happened instead of 'end' https://zuul.opendev.org/t/openstack/build/07c0f0aecebb42fc99ec209ad6a9df3e/log/job-output.txt#1376219:17
opendevreviewGhanshyam Maan proposed openstack/nova master: Create services required thread pool executors during service initialization  https://review.opendev.org/c/openstack/nova/+/100157220:56
gmaandansmith: gibi: ^^ this is the further refactoring of thread pool executors as discussed in original change21:01
opendevreviewGhanshyam Maan proposed openstack/nova master: Shutdown thread pool executors during graceful shutdown  https://review.opendev.org/c/openstack/nova/+/100021121:20

Generated by irclog2html.py 4.1.0 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!