kvm tools: Don't use all of host RAM for guests by default

This patch fixes the default guest RAM size maximum to 80% of the host RAM to
avoid swapping the host to death.

Cc: Asias He <asias.hejun@gmail.com>
Cc: Cyrill Gorcunov <gorcunov@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Prasad Joshi <prasadjoshi124@gmail.com>
Cc: Sasha Levin <levinsasha928@gmail.com>
Suggested-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
This commit is contained in:
Pekka Enberg
2015-06-01 16:39:43 +01:00
committed by Will Deacon
parent 68791d7732
commit 18bd8c3bd2
+7 -1
View File
@@ -213,6 +213,12 @@ static void kernel_usage_with_options(void)
fprintf(stderr, "\nPlease see 'kvm run --help' for more options.\n\n");
}
/*
* If user didn't specify how much memory it wants to allocate for the guest,
* avoid filling the whole host RAM.
*/
#define RAM_SIZE_RATIO 0.8
static u64 get_ram_size(int nr_cpus)
{
long available;
@@ -226,7 +232,7 @@ static u64 get_ram_size(int nr_cpus)
page_size = sysconf(_SC_PAGE_SIZE);
available = (nr_pages * page_size) >> MB_SHIFT;
available = ((nr_pages * page_size) >> MB_SHIFT) * RAM_SIZE_RATIO;
if (ram_size > available)
ram_size = available;