[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] Fix segfault with ram_size > 4095M without kvm
From: |
Aurelien Jarno |
Subject: |
Re: [Qemu-devel] [PATCH] Fix segfault with ram_size > 4095M without kvm |
Date: |
Tue, 23 Feb 2010 18:02:15 +0100 |
User-agent: |
Mozilla-Thunderbird 2.0.0.22 (X11/20090707) |
Ryan Harper a écrit :
> 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.
It looks like workarounding the real bug. At some point both
i386-softmmu (via PAE) and x86_64-softmmu were able to support > 4GB of
memory. I remember adding the support long time ago, and testing it with
32GB of emulated RAM.
> Signed-off-by: Ryan Harper <address@hidden>
> ---
> vl.c | 6 ++++++
> 1 files changed, 6 insertions(+), 0 deletions(-)
>
> diff --git a/vl.c b/vl.c
> index db7a178..a659e98 100644
> --- a/vl.c
> +++ b/vl.c
> @@ -5760,6 +5760,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()) {
--
Aurelien Jarno GPG: 1024D/F1BCDB73
address@hidden http://www.aurel32.net