
On 01/18/2013 03:13 PM, Eric Blake wrote:
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.
I was trying to make out what went wrong with that commit, but so far it looked good to me. Specifically, qemuDomainMonitorCommand looked sane and I wasn't seeing anything lock related in qemuDomainHasManagedSaveImage. Looking again, it seems that there's now a superfluous DriverUnlock in the qemuDomainManagedSave (log message?) cleanup section which actually belongs to qemuDomainSendKey. I will send out a patch for that soon. Thanks for pointing out the asymmetry. P.S: I was selectively replacing the mutexes for the driver with error checking ones to find the place of mutex corruption. Is there any interest in making this configurable for test purposes? If so (and time allows) I could prepare something for review. -- Mit freundlichen Grüßen/Kind Regards Viktor Mihajlovski IBM Deutschland Research & Development GmbH Vorsitzender des Aufsichtsrats: Martina Köderitz Geschäftsführung: Dirk Wittkopp Sitz der Gesellschaft: Böblingen Registergericht: Amtsgericht Stuttgart, HRB 243294