[PATCH QEMU] osdep: powerpc64 align memory to allow 2MB radix THP page tables

Subsystems: the rest

STALE2986d

2 messages, 2 authors, 2018-06-06 · open the first message on its own page

[PATCH QEMU] osdep: powerpc64 align memory to allow 2MB radix THP page tables

From: Nicholas Piggin <npiggin@gmail.com>
Date: 2018-05-06 07:30:02

This allows KVM with the Book3S radix MMU mode to take advantage of
THP and install larger pages in the partition scope page tables (the
host translation).

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
---
 include/qemu/osdep.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h
index 41658060a7..5910682221 100644
--- a/include/qemu/osdep.h
+++ b/include/qemu/osdep.h
@@ -357,7 +357,8 @@ void qemu_anon_ram_free(void *ptr, size_t size);
 #endif
 
 #if defined(__linux__) && \
-    (defined(__x86_64__) || defined(__arm__) || defined(__aarch64__))
+    (defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) \
+     || defined(__powerpc64__))
    /* Use 2 MiB alignment so transparent hugepages can be used by KVM.
       Valgrind does not support alignments larger than 1 MiB,
       therefore we need special code which handles running on Valgrind. */
-- 
2.17.0

Re: [PATCH QEMU] osdep: powerpc64 align memory to allow 2MB radix THP page tables

From: David Gibson <hidden>
Date: 2018-06-06 01:06:49

On Sun, May 06, 2018 at 05:29:49PM +1000, Nicholas Piggin wrote:
This allows KVM with the Book3S radix MMU mode to take advantage of
THP and install larger pages in the partition scope page tables (the
host translation).

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
I've applied this to my ppc-for-3.0 tree.  It's not strictly within
the code I maintain, but since it only affects ppc, it seems
reasonable to go through my tree.
quoted hunk
---
 include/qemu/osdep.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h
index 41658060a7..5910682221 100644
--- a/include/qemu/osdep.h
+++ b/include/qemu/osdep.h
@@ -357,7 +357,8 @@ void qemu_anon_ram_free(void *ptr, size_t size);
 #endif
 
 #if defined(__linux__) && \
-    (defined(__x86_64__) || defined(__arm__) || defined(__aarch64__))
+    (defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) \
+     || defined(__powerpc64__))
    /* Use 2 MiB alignment so transparent hugepages can be used by KVM.
       Valgrind does not support alignments larger than 1 MiB,
       therefore we need special code which handles running on Valgrind. */
-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help