Patchwork [V2,0/3] Enable QEMU to handle more than 2GB with Xen.

login
register
mail settings
Submitter Alexander Graf
Date July 27, 2011, 12:56 p.m.
Message ID <4E300B0F.5080200@suse.de>
Download mbox | patch
Permalink /patch/107058/
State New
Headers show

Comments

Alexander Graf - July 27, 2011, 12:56 p.m.
On 07/20/2011 08:17 PM, Anthony PERARD wrote:
> Hi all,
>
> Update on this series:
>    - Use a RAM address of 64bits only on 64bits targets when Xen is enable.
>    - Add some comment on the memory registration done for Xen.
>
>
> Xen is not limited by the QEMU's virtual address space for the allocation of
> the guest RAM. So even with a QEMU 32bits, a Xen guest can have more than 4 GB
> of RAM.
>
> With this serie, we will be able to run a guest with more than 4GB. The main
> point is to change ram_addr_t from ulong to uin64 when QEMU is configure with
> Xen. The second point is better register the memory in QEMU.
>
> Regards,
>
> Anthony PERARD (3):
>    cpu-common: Have a ram_addr_t of uint64 with Xen.
>    xen: Fix the memory registration to reflect of what is done by Xen.
>    vl.c: Check the asked ram_size later.
>
>   cpu-common.h |    8 ++++++++
>   exec.c       |    9 +++++----
>   vl.c         |   14 ++++++++------
>   xen-all.c    |   29 +++++++++++++++++++++--------
>   4 files changed, 42 insertions(+), 18 deletions(-)

Thanks, applied all to xen-next. I also squashed the following patch 
into 3/3:

simulated\n");


Alex

Patch

diff --git a/vl.c b/vl.c
index 24df37f..d8c7c01 100644
--- a/vl.c
+++ b/vl.c
@@ -3096,7 +3096,9 @@  int main(int argc, char **argv, char **envp)
      /* init the memory */
      if (ram_size == 0) {
          ram_size = DEFAULT_RAM_SIZE * 1024 * 1024;
-    } else if (!xen_enabled()) {
+    }
+
+    if (!xen_enabled()) {
          /* On 32-bit hosts, QEMU is limited by virtual address space */
          if (ram_size > (2047 << 20) && HOST_LONG_BITS == 32) {
              fprintf(stderr, "qemu: at most 2047 MB RAM can be