lkml.org 
[lkml]   [2008]   [Oct]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH 4/4] sgi-xp: support getting the address of a partition's reserved page
    Add support for getting the address of a partition's reserved page.

    Signed-off-by: Dean Nelson <dcn@sgi.com>

    ---

    drivers/misc/sgi-xp/xpc_uv.c | 31 ++++++++++++++++++++++++++++---
    1 file changed, 28 insertions(+), 3 deletions(-)

    Index: linux/drivers/misc/sgi-xp/xpc_uv.c
    ===================================================================
    --- linux.orig/drivers/misc/sgi-xp/xpc_uv.c 2008-10-21 12:50:18.000000000 -0500
    +++ linux/drivers/misc/sgi-xp/xpc_uv.c 2008-10-21 14:00:13.000000000 -0500
    @@ -642,7 +642,7 @@ xpc_send_local_activate_IRQ_uv(struct xp
    struct xpc_partition_uv *part_uv = &part->sn.uv;

    /*
    - * !!! Make our side think that the remote parition sent an activate
    + * !!! Make our side think that the remote partition sent an activate
    * !!! message our way by doing what the activate IRQ handler would
    * !!! do had one really been sent.
    */
    @@ -660,8 +660,33 @@ static enum xp_retval
    xpc_get_partition_rsvd_page_pa_uv(void *buf, u64 *cookie, unsigned long *rp_pa,
    size_t *len)
    {
    - /* !!! call the UV version of sn_partition_reserved_page_pa() */
    - return xpUnsupported;
    + s64 status;
    + enum xp_retval ret;
    +
    +#if defined CONFIG_X86_64
    + status = uv_bios_reserved_page_pa((u64)buf, cookie, (u64 *)rp_pa,
    + (u64 *)len);
    + if (status == BIOS_STATUS_SUCCESS)
    + ret = xpSuccess;
    + else if (status == BIOS_STATUS_MORE_PASSES)
    + ret = xpNeedMoreInfo;
    + else
    + ret = xpBiosError;
    +
    +#elif defined CONFIG_IA64_GENERIC || defined CONFIG_IA64_SGI_UV
    + status = sn_partition_reserved_page_pa((u64)buf, cookie, rp_pa, len);
    + if (status == SALRET_OK)
    + ret = xpSuccess;
    + else if (status == SALRET_MORE_PASSES)
    + ret = xpNeedMoreInfo;
    + else
    + ret = xpSalError;
    +
    +#else
    + #error not a supported configuration
    +#endif
    +
    + return ret;
    }

    static int

    \
     
     \ /
      Last update: 2008-10-21 23:27    [W:0.022 / U:31.208 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site