lkml.org 
[lkml]   [2010]   [Jul]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5/9] vmap: add flag to allow lazy unmap to be disabled at runtime
    Date
    From: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>

    Add a flag to force lazy_max_pages() to zero to prevent any outstanding
    mapped pages. We'll need this for Xen.

    Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
    Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
    Acked-by: Nick Piggin <npiggin@suse.de>
    ---
    include/linux/vmalloc.h | 2 ++
    mm/vmalloc.c | 4 ++++
    2 files changed, 6 insertions(+), 0 deletions(-)

    diff --git a/include/linux/vmalloc.h b/include/linux/vmalloc.h
    index 227c2a5..b840fda 100644
    --- a/include/linux/vmalloc.h
    +++ b/include/linux/vmalloc.h
    @@ -7,6 +7,8 @@

    struct vm_area_struct; /* vma defining user mapping in mm_types.h */

    +extern bool vmap_lazy_unmap;
    +
    /* bits in flags of vmalloc's vm_struct below */
    #define VM_IOREMAP 0x00000001 /* ioremap() and friends */
    #define VM_ALLOC 0x00000002 /* vmalloc() */
    diff --git a/mm/vmalloc.c b/mm/vmalloc.c
    index ae00746..7f35fe2 100644
    --- a/mm/vmalloc.c
    +++ b/mm/vmalloc.c
    @@ -31,6 +31,7 @@
    #include <asm/tlbflush.h>
    #include <asm/shmparam.h>

    +bool vmap_lazy_unmap __read_mostly = true;

    /*** Page table manipulation functions ***/

    @@ -502,6 +503,9 @@ static unsigned long lazy_max_pages(void)
    {
    unsigned int log;

    + if (!vmap_lazy_unmap)
    + return 0;
    +
    log = fls(num_online_cpus());

    return log * (32UL * 1024 * 1024 / PAGE_SIZE);
    --
    1.7.0.1


    \
     
     \ /
      Last update: 2010-07-27 19:23    [W:0.025 / U:63.612 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site