Earlier  
Posted Nick Remark
#openstack-nova - 2022-06-02
20:11:47 sean-k-mooney well its ment to be a cache
20:11:52 melwitt request_spec seems like a good place?
20:12:00 sean-k-mooney as in we shoudl be able to drop it if we needed too
20:12:07 melwitt fair
20:12:16 sean-k-mooney request_sepc is in the api db
20:12:26 melwitt oh right :/
20:12:48 sean-k-mooney so we could update teh requested networks in the api but we would have to wait till after the virt driver finsihed attaching
20:12:55 sean-k-mooney is this a call or a cast
20:13:06 sean-k-mooney i guess its a call
20:13:12 sean-k-mooney since its a 200 respone
20:13:19 sean-k-mooney https://docs.openstack.org/api-ref/compute/?expanded=add-network-detail%2Ccreate-interface-detail#create-interface=
20:13:25 melwitt yeah it's a call
20:13:54 sean-k-mooney so we coudl update teh request_spec network_requests list if we really wanted too
20:14:16 sean-k-mooney we just need to make sure to only do it if the call succeds
20:14:16 melwitt but nova-compute couldn't get to it without an upcall right
20:14:49 sean-k-mooney not via nova-comptue in the api
20:15:01 sean-k-mooney when we wait for the call
20:15:21 sean-k-mooney i think there are better places to store it however
20:15:22 melwitt if nova-compute needs to rebuild the info cache from nothing, like the db row update example in the bug
20:16:05 sean-k-mooney ya it should be able too
20:16:30 sean-k-mooney we have had cases where we lost ports in the cache due to buggy neturon backend or neutron policy issues
20:16:38 sean-k-mooney e.g. where neutorn returned an empty port list
20:16:44 melwitt nova-compute can't read it from request_specs without it being an upcall. am I missing something?
20:17:01 sean-k-mooney the heal logic will recreate the info cache entries form the neutron data if that happens
20:17:12 sean-k-mooney melwitt: correct it cant
20:17:32 melwitt so storing it in request spec doesn't help afaict
20:17:41 sean-k-mooney not really no
20:17:43 sean-k-mooney https://github.com/openstack/nova/blob/master/nova/db/main/models.py#L784=
20:18:08 sean-k-mooney the virtual interfaces tabel shoudl store it but it has no feield we can abuse to store it without a db change
20:18:11 melwitt just saying it sounded like a good place to store it initially but if nova-compute can't read it, it doesn't solve this issue
20:18:47 sean-k-mooney instance_system_metadata can store it since it just a set of key value pairs
20:19:01 sean-k-mooney and thats in the cell db
20:19:07 sean-k-mooney so that is proably where i woudl stash it
20:19:09 melwitt yeah, that would work
20:20:02 sean-k-mooney so we jsut have the key be the <neutron port uuid>_preserve_on_delete
20:20:16 sean-k-mooney or store the list as a single key
20:20:42 sean-k-mooney that is proably better since its indexed by the instance_id anyway
20:20:56 sean-k-mooney it denormaises the db technially
20:21:45 sean-k-mooney but a preserve_on_delete_list key that we lookup by "select preserve_on_delete from instance_system_metadata where instance_id = xyz"
20:22:00 sean-k-mooney is much simpler to lookup
20:22:09 sean-k-mooney but either would work
21:10:21 opendevreview Merged openstack/placement stable/ussuri: Use 'functional-without-sample-db-tests' tox env for placement nova job https://review.opendev.org/c/openstack/placement/+/840773
22:40:37 opendevreview melanie witt proposed openstack/nova stable/train: DNM Testing for ceph setup gate fail https://review.opendev.org/c/openstack/nova/+/844530
#openstack-nova - 2022-06-03
07:05:28 gibi o/
07:27:25 bauzas \o
08:02:14 opendevreview Balazs Gibizer proposed openstack/nova master: Unparent PciDeviceSpec from PciAddressSpec https://review.opendev.org/c/openstack/nova/+/844491
08:33:40 gibi elodilles, melwitt: what is the stable view on squashes? https://review.opendev.org/c/openstack/nova/+/843680/6#message-f9be680631a00541158243c55609a5804cc7777d
08:39:43 gibi stephenfin: do you have some context on https://review.opendev.org/c/openstack/hacking/+/816676 ? the hacking repo is green now with flake 4 but in nova we have a bunch of new findings. Was there any previous trial moving nova to the newer hacking?
08:42:14 songwenping bauzas:we donnot delete vgpu mdev when delete vm?
08:42:51 sean-k-mooney **cough** black **cough**
08:43:10 sean-k-mooney songwenping: ya our down stream qe may have also found that yesterday
08:43:18 sean-k-mooney songwenping: we are still confirming
08:44:11 sean-k-mooney songwenping: its unclear if something has changed recently i.e. if this only happens if you have mig mode enabled
08:44:24 sean-k-mooney or if this was always an oversight
08:44:27 songwenping sean-k-mooney: from this line https://github.com/openstack/nova/blob/8260979b71b29ce2666d37b3adc7c256482aa16d/nova/virt/libvirt/driver.py#L6485 we can reuse the mdev
08:44:42 sean-k-mooney songwenping: we should not be reusing the mdev
08:45:10 kashyap sean-k-mooney: I think you have Ubuntu box handy, can you please tell the QEMU binary path on it? (Not the /usr/bin/qemu-kvm, but the actual binary)
08:45:43 sean-k-mooney sure that my home server. its not in libexec like its on rhel related distros
08:45:57 sean-k-mooney the fact its different is waht prevent live migration form happening one sec while i check
08:45:57 songwenping so we should delete the mdev with vm.
08:45:59 kashyap sean-k-mooney: I know it's not in /usr/libexec - that's a RHEL/CentOS thing
08:46:13 sean-k-mooney kashyap: yep just sayign they used to be the same
08:46:33 kashyap sean-k-mooney: The thing is on Fedora the binary is this: /usr/bin/qemu-system-x86_64
08:46:34 sean-k-mooney kashyap: but when centos change to that it broke live migration between centos and ubunutu
08:47:05 bauzas songwenping: no, we leave them
08:47:07 kashyap (And IIRC, Ubuntu uses a different binary name and a different path)
08:47:13 sean-k-mooney /usr/bin/qemu-system-x86_64
08:47:30 kashyap Ah, same as Fedora then. Thanks
08:47:30 sean-k-mooney its qemu im not seeing qemu-kvm on 22.04
08:47:36 sean-k-mooney let me double check
08:47:51 sean-k-mooney sean@cloud:~$ qemu-kvm
08:47:51 bauzas songwenping: you can even precreate the mdevs before starting the nova-compute service, then the n-cpu service will use them instead of creating them
08:47:53 sean-k-mooney qemu-kvm: command not found
08:47:58 sean-k-mooney so its not on my path at least
08:48:04 kashyap sean-k-mooney: I don't want that; it's an alias to the QEMU binary on Fedora
08:48:18 kashyap sean-k-mooney: So, "/usr/bin/qemu-system-x86_64" exists on Ubuntu, right?
08:48:29 sean-k-mooney yes
08:48:48 songwenping bauzas:then there will has race problem, https://bugs.launchpad.net/nova/+bug/1836204
08:48:58 sean-k-mooney sean@cloud:~$ file /usr/bin/qemu-system-x86_64
08:49:00 sean-k-mooney /usr/bin/qemu-system-x86_64: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=f28deae95b4b0f19a8c8be87c45d1be213cf8b6b, for GNU/Linux 3.2.0, stripped
08:49:12 kashyap sean-k-mooney: Thanks!
08:49:16 sean-k-mooney kashyap: it exiss and is not a symlink its the binary
08:49:22 kashyap Okay, I see that I could've checked it here: https://packages.ubuntu.com/bionic/i386/qemu-system-x86/filelist
08:49:32 kashyap sean-k-mooney: Yeah, I know; if that's the name, then it's the real binary
08:49:43 kashyap 'qemu-kvm' is the symlink on Fedora/CentOS
08:50:00 sean-k-mooney kashyap: not quite
08:50:12 sean-k-mooney well it might be a symlink but it was a script on ubuntu
08:50:22 kashyap $> file /usr/bin/qemu-kvm
08:50:22 kashyap /usr/bin/qemu-kvm: symbolic link to qemu-system-x86_64
08:50:28 songwenping bauzas:if we create new mdev when alloc, there will be no this problem.
08:50:33 kashyap sean-k-mooney: Yeah, it used to be a wrapper script
08:50:40 sean-k-mooney yep
08:50:45 kashyap (Which just pointed to the real binary. So they removed that)
08:50:53 sean-k-mooney it was a wrapper on ubuntu in 20.04
08:51:00 sean-k-mooney in 22.04 they droped it
08:51:44 bauzas songwenping: I don't see how it could help
08:51:59 sean-k-mooney kashyap: looks like ti snow a virtual package/metapackage https://packages.ubuntu.com/jammy/qemu-kvm
08:52:31 sean-k-mooney likely for upgrade reasons
08:53:05 kashyap Yeah, same on Fedora
08:53:19 kashyap $> rpm -ql qemu-kvm

Earlier   Later