Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux
[platform/adaptation/renesas_rcar/renesas_kernel.git] / mm / Kconfig
index d5c8019..e6651c5 100644 (file)
@@ -188,9 +188,25 @@ config SPLIT_PTLOCK_CPUS
        default "4"
 
 #
+# support for memory balloon compaction
+config BALLOON_COMPACTION
+       bool "Allow for balloon memory compaction/migration"
+       def_bool y
+       depends on COMPACTION && VIRTIO_BALLOON
+       help
+         Memory fragmentation introduced by ballooning might reduce
+         significantly the number of 2MB contiguous memory blocks that can be
+         used within a guest, thus imposing performance penalties associated
+         with the reduced number of transparent huge pages that could be used
+         by the guest workload. Allowing the compaction & migration for memory
+         pages enlisted as being part of memory balloon devices avoids the
+         scenario aforementioned and helps improving memory defragmentation.
+
+#
 # support for memory compaction
 config COMPACTION
        bool "Allow for memory compaction"
+       def_bool y
        select MIGRATION
        depends on MMU
        help
@@ -318,7 +334,7 @@ config NOMMU_INITIAL_TRIM_EXCESS
 
 config TRANSPARENT_HUGEPAGE
        bool "Transparent Hugepage Support"
-       depends on X86 && MMU
+       depends on HAVE_ARCH_TRANSPARENT_HUGEPAGE
        select COMPACTION
        help
          Transparent Hugepages allows the kernel to use huge pages and