diff options
author | Samuel Tardieu <sam@rfc1149.net> | 2023-12-19 19:22:12 +0100 |
---|---|---|
committer | Richard Henderson <richard.henderson@linaro.org> | 2024-01-23 13:22:46 +1000 |
commit | 8f8419d3255365121e3596307b98ab3d6dcbdf1a (patch) | |
tree | d03540ce87fe1cc4062c8ebe58729e3e52fd491e /tcg/region.c | |
parent | 0e5e6219ed75f133a14d6bab39f6966540941864 (diff) | |
download | qemu-8f8419d3255365121e3596307b98ab3d6dcbdf1a.zip qemu-8f8419d3255365121e3596307b98ab3d6dcbdf1a.tar.gz qemu-8f8419d3255365121e3596307b98ab3d6dcbdf1a.tar.bz2 |
tcg: Make the cleanup-on-error path unique
By calling `error_setg_errno()` before jumping to the cleanup-on-error
path at the `fail` label, the cleanup path is clearer.
Signed-off-by: Samuel Tardieu <sam@rfc1149.net>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Message-Id: <20231219182212.455952-3-sam@rfc1149.net>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'tcg/region.c')
-rw-r--r-- | tcg/region.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/tcg/region.c b/tcg/region.c index 467e51c..478ec05 100644 --- a/tcg/region.c +++ b/tcg/region.c @@ -584,7 +584,9 @@ static int alloc_code_gen_buffer_splitwx_memfd(size_t size, Error **errp) buf_rx = mmap(NULL, size, host_prot_read_exec(), MAP_SHARED, fd, 0); if (buf_rx == MAP_FAILED) { - goto fail_rx; + error_setg_errno(errp, errno, + "failed to map shared memory for execute"); + goto fail; } close(fd); @@ -594,8 +596,6 @@ static int alloc_code_gen_buffer_splitwx_memfd(size_t size, Error **errp) return PROT_READ | PROT_WRITE; - fail_rx: - error_setg_errno(errp, errno, "failed to map shared memory for execute"); fail: /* buf_rx is always equal to MAP_FAILED here and does not require cleanup */ if (buf_rw) { |