Go to file
Marek Marczykowski-Górecki fef8761f01
qmemman: improve check whether VM is still running
In some cases it may happen that qmemman or other application using
xenstore will re-create VM directory in xenstore just after VM was
destroyed. For example when multiple VMs was destroyed at the same time,
but qmemman will kick off just at first @releaseDomain event - other VMs
will still be there (at xenstore-list time). This means that qmemman
will consider them when redistributing memory (of just destroyed one),
so will update memory/target entry of every "running" VM. And at this
point it may recreate VM directory of another already destroyed VM.

Generally fixing this race condition would require running all the
operations (from xenstore-ls, to setting memory/target) in a single
xenstore transaction. But this can be lengthly process. And if any other
modification happens in the meantime, transaction will rejected and
qmemman would need to redo all the changes. Not worth the effort.

Fixes QubesOS/qubes-issues#1409
2015-11-27 20:00:33 +01:00
core core: have QubesVmCollection.unlock_db no-op if not locked 2015-11-27 20:00:19 +01:00
core-modules core: adjust for updated stubdom support in libvirt 2015-11-27 20:00:33 +01:00
dispvm dispvm: get rid of obsolete symlinks to dvm.conf 2015-10-10 05:22:44 +02:00
doc Add qvm-pci --add-class option for adding all devices of given class 2015-11-25 01:34:15 +01:00
linux core: leave volatile.img structure creation for the VM 2015-11-25 01:35:04 +01:00
qmemman qmemman: improve check whether VM is still running 2015-11-27 20:00:33 +01:00
qubes-rpc typo 2015-10-21 20:57:30 +00:00
qubes-rpc-policy qubes-rpc-policy/qubes.GetImageRGBA.policy 2014-05-20 17:49:20 +02:00
qvm-tools Merge remote-tracking branch 'qubesos/pr/6' 2015-11-25 01:34:36 +01:00
rpm_spec core: adjust for updated stubdom support in libvirt 2015-11-27 20:00:33 +01:00
site-packages add convenient symlinks simulating target python files layout 2014-03-10 01:05:01 +01:00
site-packages-qmemman Convenient link for qmemman 2014-04-23 12:53:41 +02:00
tests tests: PV Grub: ensure that latest packages are installed 2015-11-25 03:16:24 +01:00
vm-config core: adjust for updated stubdom support in libvirt 2015-11-27 20:00:33 +01:00
.gitignore gitignore 2015-05-04 00:35:57 +02:00
installer.wxs windows/installer: configurable destination directory 2014-11-19 12:50:31 +01:00
LICENSE Added LICENSE 2010-04-05 21:21:27 +02:00
Makefile dispvm: do not treat DispVMs as Xen-specific 2015-03-30 05:30:52 +02:00
Makefile.builder windows: installer 2014-11-19 12:50:30 +01:00
version version 3.1.3 2015-11-15 04:20:45 +01:00