From e69fa2b6364da0c38068216eee4aeabeef82a3fa Mon Sep 17 00:00:00 2001 From: Gleb Natapov Date: Thu, 18 Sep 2014 09:52:36 +0300 Subject: [PATCH] disable jvm balloon Commit 4bd87202ef862c7ac6 broke java balloon since it assumes that page fault path does not modify vma_list hence it is possible to take vma_list_mutex for read, but this assumption does not hold for java balloon vma. There is no easy fix for this problem that does not reduce page fault parallelism. One solution is to take the lock for write during page fault and downgrade it in vma->fault() handler if possible, but, in addition to been ugly, this solution will create more contention on vma_list_mutex that taking it for read. This patch disables java balloon to unbreak master until satisfactory solution will be found. Signed-off-by: Avi Kivity --- java/java.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/java/java.cc b/java/java.cc index 1ec55d5e18..faf04026a1 100644 --- a/java/java.cc +++ b/java/java.cc @@ -141,6 +141,7 @@ static int java_main(int argc, char **argv) } size_t auto_heap = 0; +#if 0 // Do not use total(), since that won't reflect the whole memory for the // machine. It then becomes counterintuitive to tell the user what is the // minimum he has to set to balloon @@ -153,6 +154,7 @@ static int java_main(int argc, char **argv) auto_heap <<= 20; jvm_heap_size = auto_heap; } +#endif vm_args.nOptions = options.size(); vm_args.options = options.data();