From: Ryan Harper Date: Tue, 23 Feb 2010 15:13:14 +0000 (-0600) Subject: Fix segfault with ram_size > 4095M without kvm X-Git-Tag: v0.12.4~43 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b299b12b176792db8ff47c4d22fa62e4d64a0614;p=thirdparty%2Fqemu.git Fix segfault with ram_size > 4095M without kvm Currently, x86_64-softmmu qemu segfaults when trying to use > 4095M memsize. This patch adds a simple check and error message (much like the 2047 limit on 32-bit hosts) on ram_size in the control path after we determine we're not using kvm Upstream qemu-kvm is affected if using the -no-kvm option; this patch address the segfault there as well. Signed-off-by: Ryan Harper Signed-off-by: Aurelien Jarno --- diff --git a/vl.c b/vl.c index 2dbb6dbc1dc..bb9c21ce81c 100644 --- a/vl.c +++ b/vl.c @@ -5792,6 +5792,12 @@ int main(int argc, char **argv, char **envp) fprintf(stderr, "failed to initialize KVM\n"); exit(1); } + } else { + /* without kvm enabled, we can only support 4095 MB RAM */ + if (ram_size > (4095UL << 20)) { + fprintf(stderr, "qemu: without kvm support at most 4095 MB RAM can be simulated\n"); + exit(1); + } } if (qemu_init_main_loop()) {