Message ID | 20210311002156.253711-25-richard.henderson@linaro.org |
---|---|
State | Superseded |
Headers | show |
Series | tcg: Workaround macOS 11.2 mprotect bug | expand |
On 3/11/21 1:21 AM, Richard Henderson wrote: > For --enable-tcg-interpreter on Windows, we will need this. > > Signed-off-by: Richard Henderson <richard.henderson@linaro.org> > --- > include/qemu/osdep.h | 1 + > util/osdep.c | 9 +++++++++ > 2 files changed, 10 insertions(+) Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h index ba15be9c56..5cc2e57bdf 100644 --- a/include/qemu/osdep.h +++ b/include/qemu/osdep.h @@ -494,6 +494,7 @@ void sigaction_invoke(struct sigaction *action, #endif int qemu_madvise(void *addr, size_t len, int advice); +int qemu_mprotect_rw(void *addr, size_t size); int qemu_mprotect_rwx(void *addr, size_t size); int qemu_mprotect_none(void *addr, size_t size); diff --git a/util/osdep.c b/util/osdep.c index 66d01b9160..42a0a4986a 100644 --- a/util/osdep.c +++ b/util/osdep.c @@ -97,6 +97,15 @@ static int qemu_mprotect__osdep(void *addr, size_t size, int prot) #endif } +int qemu_mprotect_rw(void *addr, size_t size) +{ +#ifdef _WIN32 + return qemu_mprotect__osdep(addr, size, PAGE_READWRITE); +#else + return qemu_mprotect__osdep(addr, size, PROT_READ | PROT_WRITE); +#endif +} + int qemu_mprotect_rwx(void *addr, size_t size) { #ifdef _WIN32
For --enable-tcg-interpreter on Windows, we will need this. Signed-off-by: Richard Henderson <richard.henderson@linaro.org> --- include/qemu/osdep.h | 1 + util/osdep.c | 9 +++++++++ 2 files changed, 10 insertions(+) -- 2.25.1