diff options
| author | Alexander Graf <agraf@suse.de> | 2013-07-06 14:17:57 +0200 |
|---|---|---|
| committer | Riku Voipio <riku.voipio@linaro.org> | 2013-07-23 17:28:28 +0300 |
| commit | d02532f08e207419e412ea7cd4eb8b36f04f426d (patch) | |
| tree | 1028ecb34c4b01f3c74967116225aed8101e225a /scripts/qapi.py | |
| parent | b24c882b9435d0745679a96571027a2c92065e4f (diff) | |
| download | focaccia-qemu-d02532f08e207419e412ea7cd4eb8b36f04f426d.tar.gz focaccia-qemu-d02532f08e207419e412ea7cd4eb8b36f04f426d.zip | |
linux-user: Unlock mmap_lock when resuming guest from page_unprotect
The page_unprotect() function is running everything locked. Before every potential exit path of the function mmap_unlock() gets called to make sure we don't leak the lock. However, the function calls tb_invalidate_phys_page() which again can exit a signal through longjmp, leaving our mmap_unlock() attempts in vain. Add a hint to tb_invalidate_phys_page() that we need to unlock before we can leave back into guest context, so that we don't leak the lock. This fixes 16-bit i386 wine programs running in linux-user for me. Signed-off-by: Alexander Graf <agraf@suse.de> Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
Diffstat (limited to 'scripts/qapi.py')
0 files changed, 0 insertions, 0 deletions