We know that strerror is not thread-safe, so I'm eliminating all uses from code that might be multi-threaded. I started the job with this patch: http://thread.gmane.org/gmane.comp.emulators.libvirt/11532 Here are the summaries of the upcoming change sets: eliminate strerror qemu_driver.c: use virReportSystemError instead This is the patch mentioned above. remove duplicate *SetCloseExec and *SetNonBlock functions Changes prompted by Dan's feedback (see thread). report OOMError tiny iptables.c: Use virStrerror, not strerror. qemud.c: use virStrerror, not strerror don't include raw errno in diagnostics remove remainder of offending strerror uses note: the qemud/remote.c changes that move virDomainFree calls do that merely to make that code identical to a nearby, nearly- identical function. syntax-check: enable prohibit_nonreentrant makes "make syntax-check" check for all those non-reentrant functions, but excluding virterror.c, virsh.c and console.c syntax-check: avoid spurious false-positive -- Libvir-list mailing list Libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list