
On 01/17/2013 10:25 AM, Viktor Mihajlovski wrote:
The driver mutex was unlocked in qemuDomainModifyDeviceFlags before entering qemuDomainObjBeginJobWithDriver where it will be unlocked once more leaving it in an undefined state. The result was that two threads were simultaneously looking up the domain hash table during multiple parallel device attach/detach operations. Luckily this triggered a virHashIterationError.
Signed-off-by: Viktor Mihajlovski <mihajlov@linux.vnet.ibm.com> --- src/qemu/qemu_driver.c | 1 - 1 file changed, 1 deletion(-)
I tracked this down to commit 8c5d2ba; it looks like Michal encountered a case of git botching a rebase when forward-porting a patch. If you'll look at that commit, we removed a qemuDriverUnlock() from one function (qemuDomainSendKey), added it to another (qemuDomainModifyDeviceFlags), neither in a pair; and neither matches the commit message mention of DomainHasManagedSaveImage. You only repaired one piece of the damage, but missed the other damage, and we still haven't fixed the intended function. -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org