tcg: Fix returned type in alloc_code_gen_buffer_splitwx_memfd()
This fixes a bug in POSIX-compliant environments. Since we had allocated
a buffer named 'tcg-jit' with read-write access protections we need a int
type to combine these access flags and return it, whereas we had inexplicably
return a bool type. It may cause an unnecessary protection change in
tcg_region_init().
Cc: qemu-stable@nongnu.org
Fixes: 7be9ebcf92
("tcg: Return the map protection from alloc_code_gen_buffer")
Signed-off-by: Shaobo Song <shnusongshaobo@gmail.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20220624150216.3627-1-shnusongshaobo@gmail.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
9fed1bca6b
commit
ba8924113c
@ -548,7 +548,7 @@ static int alloc_code_gen_buffer_anon(size_t size, int prot,
|
|||||||
#ifdef CONFIG_POSIX
|
#ifdef CONFIG_POSIX
|
||||||
#include "qemu/memfd.h"
|
#include "qemu/memfd.h"
|
||||||
|
|
||||||
static bool alloc_code_gen_buffer_splitwx_memfd(size_t size, Error **errp)
|
static int alloc_code_gen_buffer_splitwx_memfd(size_t size, Error **errp)
|
||||||
{
|
{
|
||||||
void *buf_rw = NULL, *buf_rx = MAP_FAILED;
|
void *buf_rw = NULL, *buf_rx = MAP_FAILED;
|
||||||
int fd = -1;
|
int fd = -1;
|
||||||
|
Loading…
Reference in New Issue
Block a user