Ilya Leoshkevich <[email protected]> writes:
> Hi, > > This is a fix for the issue reported in [1]. > Patch 1 is the fix itself, patch 2 is the test/reproducer. > > By the way, I noticed that there is no code to free tb_jmp_cache, and > object_finalize(CPUState) is never called - in case of system emulation > this is fine, but what about linux-user? We definitely have a memory leak here. The last attempt to properly finalize CPUState failed because we have duplicate pointers to the cpregs structures that end up in generated code. See: https://lists.gnu.org/archive/html/qemu-devel/2022-08/msg02819.html > > [1] https://lists.gnu.org/archive/html/qemu-devel/2022-10/msg05181.html > > Best regards, > Ilya > > Ilya Leoshkevich (2): > accel/tcg: Fix concurrent pthread_create() and munmap() > tests/tcg/multiarch: Add munmap-pthread.c > > accel/tcg/tb-maint.c | 5 ++ > tests/tcg/multiarch/Makefile.target | 3 ++ > tests/tcg/multiarch/munmap-pthread.c | 71 ++++++++++++++++++++++++++++ > 3 files changed, 79 insertions(+) > create mode 100644 tests/tcg/multiarch/munmap-pthread.c -- Alex Bennée
