summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <rth@twiddle.net>2012-11-02 09:20:46 +1100
committerBlue Swirl <blauwirbel@gmail.com>2012-12-08 14:18:37 +0000
commit0be4835b4932f38167b611c2b311ebaaec98a8eb (patch)
tree24756ec0796dd7556f0672a8b537bfe10e95259c
parent16c6c80ac3a772b42a87b77dfdf0fdac7c607b0e (diff)
downloadqemu-0be4835b4932f38167b611c2b311ebaaec98a8eb.tar.gz
qemu-0be4835b4932f38167b611c2b311ebaaec98a8eb.tar.bz2
qemu-0be4835b4932f38167b611c2b311ebaaec98a8eb.zip
exec: Advise huge pages for the TCG code gen buffer
After allocating 32MB or more contiguous memory, huge pages would seem to be ideal. Signed-off-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
-rw-r--r--exec.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/exec.c b/exec.c
index 8435de0bd2..0594b07057 100644
--- a/exec.c
+++ b/exec.c
@@ -607,6 +607,8 @@ static inline void code_gen_alloc(size_t tb_size)
exit(1);
}
+ qemu_madvise(code_gen_buffer, code_gen_buffer_size, QEMU_MADV_HUGEPAGE);
+
/* Steal room for the prologue at the end of the buffer. This ensures
(via the MAX_CODE_GEN_BUFFER_SIZE limits above) that direct branches
from TB's to the prologue are going to be in range. It also means