linux-user/mmap.c: Always zero MAP_ANONYMOUS memory in mmap_frag()
When mapping MAP_ANONYMOUS memory fragments, still need notice about to set it zero, or it will cause issues. Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com> Reviewed-by: Laurent Vivier <laurent@vivier.eu> Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
This commit is contained in:
parent
2a0fa68fb9
commit
e6deac9cf9
@ -186,10 +186,12 @@ static int mmap_frag(abi_ulong real_start,
|
|||||||
if (prot_new != (prot1 | PROT_WRITE))
|
if (prot_new != (prot1 | PROT_WRITE))
|
||||||
mprotect(host_start, qemu_host_page_size, prot_new);
|
mprotect(host_start, qemu_host_page_size, prot_new);
|
||||||
} else {
|
} else {
|
||||||
/* just update the protection */
|
|
||||||
if (prot_new != prot1) {
|
if (prot_new != prot1) {
|
||||||
mprotect(host_start, qemu_host_page_size, prot_new);
|
mprotect(host_start, qemu_host_page_size, prot_new);
|
||||||
}
|
}
|
||||||
|
if (prot_new & PROT_WRITE) {
|
||||||
|
memset(g2h(start), 0, end - start);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user