lkml.org 
[lkml]   [2009]   [Jan]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: PFs on pages pinned with get_user_pages()
    On Thursday 29 January 2009, Peter Zijlstra wrote:
    > On Thu, 2009-01-29 at 17:03 +0100, Frank Mehnert wrote:
    > > On Thursday 29 January 2009, Peter Zijlstra wrote:
    > > > > > That aside, is there any reason you have to avoid scheduling?
    > > > > > Otherwise I would just allow so and be done with it.
    > > > >
    > > > > The reason is that our code expects that to ensure syncing of the CPU
    > > > > state with the saved state. I fear it is quite difficult to change
    > > > > that...
    > > >
    > > > Ah, is that what KVM uses the preempt notifiers for? Could you too?
    > >
    > > Right, that could be an option.
    > >
    > > We will try to change our code which is a big effort as we try
    > > to keep the code as unique as possible between the different
    > > hosts we support (Linux, Solaris, Windows, Mac OS X).
    > >
    > > Just to be sure: There is no other option than disabling interrupts
    > > or calling disable_preemption() to prevent scheduling?
    >
    > Thing is, lock_page() and down_read() require to be able to schedule(),
    > so there's no way around that.
    >
    > So even if there was another way to disable scheduling, you'd still have
    > the same problem.

    Yes, makes sense.

    Back to my initial question: The problem arises for us because we depend
    on permanent mappings of memory which were

    - allocated with alloc_pages() or alloc_page()
    - mapped into ring 3 with remap_pfn_range() and
    - pinned with get_user_pages()

    There are potential pagefaults when touching into these ring-3-mappings
    from ring 0. So I assume we could prevent such pagefaults if we access
    that memory from ring-0-mappings, right? Unfortunately, the space for
    ring-0-mappings (< 1GB) is smaller than userland (~ 3GB), at least on
    32-bit systems.

    Kind regards,

    Frank
    --
    Dr.-Ing. Frank Mehnert Sun Microsystems http://www.sun.com/
    [unhandled content-type:application/pgp-signature]
    \
     
     \ /
      Last update: 2009-01-30 11:37    [W:0.704 / U:2.312 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site