[lkml]   [2009]   [Jan]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRE: [PATCH] percpu: add optimized generic percpu accessors
    > I was asking around, and was told that on IA64 *harware* at least, in addition to
    > supporting multiple page sizes (up to a GB IIRC), one can pin up to 8 or perhaps
    > 1/2 the TLB entries.

    The number of TLB entries that can be pinned is model specific (but the
    minimum allowed is 8 each for code & data). Page sizes supported also
    vary by model, recent models go up to 4GB.

    BUT ... we stopped pinning this entry in the TLB when benchmarks showed
    that it was better to just insert this as a regular TLB entry which might
    can be dropped to map something else. So now there is code in the Alt-DTLB
    miss handler (ivt.S) to insert the per-cpu mapping on an as needed basis.

    > So, in theory if one were so inclined the special pinned per-CPU entry could
    > either be more than one 64K entry, or a single, rather larger entry.

    Managing a larger space could be done ... but at the expense of making
    the Alt-DTLB miss handler do a memory lookup to find the physical address
    of the per-cpu page needed (assuming that we allocate a bunch of random
    physical pages for use as per-cpu space rather than a single contiguous
    block of physical memory).

    When do we know the total amount of per-cpu memory needed?
    1) CONFIG time?
    2) Boot time?
    3) Arbitrary run time?


     \ /
      Last update: 2009-01-28 01:21    [W:0.026 / U:30.212 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site