oslib-posix: take lock before qemu_cond_broadcast
authorBauerchen <bauerchen@tencent.com>
Mon, 6 Apr 2020 02:36:54 +0000 (10:36 +0800)
committerPaolo Bonzini <pbonzini@redhat.com>
Sat, 11 Apr 2020 12:49:20 +0000 (08:49 -0400)
commit278fb1627351218b23dd33403f08d7521643fda2
tree4ef80980b91fe3b59b4a3ff523f18fb1546f7249
parent9a709f06c87043856307ce824b2ba47e0fdb7621
oslib-posix: take lock before qemu_cond_broadcast

In touch_all_pages, if the mutex is not taken around qemu_cond_broadcast,
qemu_cond_broadcast may be called before all touch page threads enter
qemu_cond_wait. In this case, the touch page threads wait forever for the
main thread to wake them up, causing a deadlock.

Signed-off-by: Bauerchen <bauerchen@tencent.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
util/oslib-posix.c