[lkml]   [2008]   [Jan]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [kvm-devel] [PATCH] export notifier #1
    On Tue, Jan 22, 2008 at 04:40:50PM -0800, Christoph Lameter wrote:
    > On Wed, 23 Jan 2008, Benjamin Herrenschmidt wrote:
    > > > - anon_vma/inode and pte locks are held during callbacks.
    > >
    > > So how does that fix the problem of sleeping then ?
    > The locks are taken in the mmu_ops patch. This patch does not hold them
    > while performing the callbacks.

    Let me start by clarifying, the page is referenced prior to exporting
    and that reference is not removed until after recall is complete and
    memory protections are back to normal.

    As Christoph pointed out, the mmu_ops callouts do not allow sleeping.
    This is a problem for us as our recall path includes a message to one or
    more other hosts and a wait until we receive a response. That message
    sequence can take seconds or more to complete. It includes an operation
    to ensure the memory is in a cross-partition clean state and then changes
    memory protection. When that is complete we remove our page reference
    and return.

    Christoph's patch allows that long slow activity to happen prior to the
    mmu_ops callout. By the time the mmu_ops callout is made, we no longer
    are exporting the page so the cleanup is equivalent to the cleanup of
    a page we have never used.

    Robin Holt

     \ /
      Last update: 2008-01-23 02:25    [W:0.023 / U:3.340 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site