lkml.org 
[lkml]   [2006]   [Jul]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [Xen-devel] [RFC PATCH 28/33] Add Xen grant table support
    From
    Date
    I don't think that the current grant-table API/implementation quite
    meets the requirements for revocation.

    Specifically I think the requirements are that:

    1) When a domain starts to reclaim a set of resources it allocated for
    inter-domain communication this process is guaranteed to complete
    without cooperation from any other domain.

    2) When a domain reclaims resources it allocated for inter-domain
    communication it can't cause a page fault or other exception in any
    other domain.

    The current API/implementation meets the second requirement but not the
    first.

    It's possible to make the current implementation meet the first
    requirement if you relax it a bit and allow the superuser to kill an
    offending domain via domain 0 but this expands the scope of the failure
    from a single inter-domain communication channel to a whole domain which
    is undesirable.

    Another potential issue with grant-tables is support for efficient N-way
    communication but I haven't investigated that personally.

    A final point is that quite a lot of fairly tricky code is required to
    combine grant-tables, event-channels and xenbus before you can create an
    inter-domain communication channel which can be correctly disconnected
    and reconnected across module load and unload.

    It's appropriate to have a low-level API at the hypervisor because it
    keeps the hypervisor as small as possible and therefore easier to audit.

    But, whatever the low-level API, whether grant-tables or something which
    has better support for revocation and n-way communication, I think there
    needs to be a small library to implement a higher level API that is more
    convenient for driver authors to use directly.

    -
    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: 2006-07-19 12:07    [W:0.020 / U:61.540 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site