Comment 0 for bug 1298420

Revision history for this message
John Warren (jswarren) wrote :

When launching several VMs in rapid succession, it is possible that libvirt's image caching
will fetch the same image serveral times. This can occur when all of the VMs in question
are using the same base image and this base image has not been previously fetched. The inline
fetch_func_sync method prevents multiple threads from fetching the same image at the same time,
but it does not prevent a thread that is waiting to acquire the lock from fetching the image
that was being fetched while the lock was still in use. This is because the presence of the image
is checked only before the lock has been acquired, not after.