The `fail_rx`/`fail` block is only entered while `buf_rx` is equal to its initial value `MAP_FAILED`. The `munmap(buf_rx, size);` was never executed.
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2030 Signed-off-by: Samuel Tardieu <s...@rfc1149.net> --- tcg/region.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/tcg/region.c b/tcg/region.c index 86692455c0..6d657e8c33 100644 --- a/tcg/region.c +++ b/tcg/region.c @@ -597,9 +597,6 @@ static int alloc_code_gen_buffer_splitwx_memfd(size_t size, Error **errp) fail_rx: error_setg_errno(errp, errno, "failed to map shared memory for execute"); fail: - if (buf_rx != MAP_FAILED) { - munmap(buf_rx, size); - } if (buf_rw) { munmap(buf_rw, size); } -- 2.42.0