lkml.org 
[lkml]   [2007]   [Jun]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH 09/10] ask the hypervisor how much space it needs reserved
    Ask the hypervisor how much space it needs reserved, since 32-on-64
    doesn't need any space, and it may change in future.

    Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com>

    ---
    arch/i386/xen/enlighten.c | 13 ++++++++++++-
    1 file changed, 12 insertions(+), 1 deletion(-)

    ===================================================================
    --- a/arch/i386/xen/enlighten.c
    +++ b/arch/i386/xen/enlighten.c
    @@ -1113,6 +1113,17 @@ static void setup_hypercall_page(void)
    native_write_msr(ebx + 0, ((u64)hypercall_mfn) << PAGE_SHIFT);
    }

    +static void __init xen_reserve_top(void)
    +{
    + unsigned long top = HYPERVISOR_VIRT_START;
    + struct xen_platform_parameters pp;
    +
    + if (HYPERVISOR_xen_version(XENVER_platform_parameters, &pp) == 0)
    + top = pp.virt_start;
    +
    + reserve_top_address(-top + 2 * PAGE_SIZE);
    +}
    +
    /* First C function to be called on Xen boot */
    asmlinkage void __init xen_start_kernel(void)
    {
    @@ -1163,7 +1174,7 @@ asmlinkage void __init xen_start_kernel(
    paravirt_ops.kernel_rpl = 0;

    /* set the limit of our address space */
    - reserve_top_address(-HYPERVISOR_VIRT_START + 2 * PAGE_SIZE);
    + xen_reserve_top();

    /* set up basic CPUID stuff */
    cpu_detect(&new_cpu_data);
    --

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2007-06-15 16:55    [W:2.504 / U:0.196 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site