WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] Hyp compat_memory_op() and 256 GB PV

To: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
Subject: Re: [Xen-devel] Hyp compat_memory_op() and 256 GB PV
From: Mukesh Rathor <mukesh.rathor@xxxxxxxxxx>
Date: Wed, 18 Feb 2009 11:52:22 -0800
Cc: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Wed, 18 Feb 2009 11:52:56 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <C5C17600.2D96%keir.fraser@xxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Organization: Oracle Corp
References: <C5C17600.2D96%keir.fraser@xxxxxxxxxxxxx>
Reply-to: mukesh.rathor@xxxxxxxxxx
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Thunderbird 2.0.0.5 (X11/20070719)


Keir Fraser wrote:
> On 18/02/2009 03:39, "Mukesh Rathor" <mukesh.rathor@xxxxxxxxxx> wrote:
>
>> Moving on to 256 GB guest, the hyp is failing the XENMEM_populate_physmap
>> hcall in compat_memory_op(). The problem is size too large for continuation
>> encoding:
>>
>>      /* Is size too large for us to encode a continuation? */
>>      if ( cmp.rsrv.nr_extents > (UINT_MAX >> MEMOP_EXTENT_SHIFT))
>>          return start_extent;
>>
>>       for 256 GB : nr_extents == 0x4000000
>>
>>   Currently at a loss on this one!
>
> Well, who's making the compat call? Not the guest itself presumably since it
> is 64-bit? So it's probably dom0? But I would think that dom0 would only do
> large amounts of allocation for the new domU in xc_hvm_build.c, and that is
> careful to allocate memory in batches of 8MB at a time.
>
> Basically you need to track down the call site of the failed
> compat_memory_op().
>
>  -- Keir
>

Hi Keir,

I see this in domain-builder-ng.log:

elf_xen_addr_calc_check: addresses:
    virt_base        = 0xffffffff80000000
    elf_paddr_offset = 0xffffffff80000000
    virt_offset      = 0x0
    virt_kstart      = 0xffffffff80200000
    virt_kend        = 0xffffffff807014e4
    virt_entry       = 0xffffffff80200000
xc_dom_parse_elf_kernel: xen-3.0-x86_64: 0xffffffff80200000 ->
0xffffffff807014e4
xc_dom_mem_init: mem 262144 MB, pages 0x4000000 pages, 4k each
xc_dom_mem_init: 0x4000000 pages
xc_dom_boot_mem_init: called
x86_compat: guest xen-3.0-x86_64, address size 64
xc_dom_malloc            : 256 MB
xc_dom_boot.c:143: panic: xc_dom_boot_mem_init: can't allocate low
memory for domain


I set a breakpoint in compat_memory_op() and stepping thru it, noticed
it was bailing out at the if statement, and nr_extents was 0x4000000.

This is a PV domain BTW, I guess xc_hvm_build.c wont' be involved. I'll
instrument libxc and debug more... meanwhile I thought I'd post this.

Thanks,
Mukesh

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>