vmap: add flag to allow lazy unmap to be disabled at runtime

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>
This commit is contained in:
Jeremy Fitzhardinge 2010-03-26 15:28:51 -07:00 committed by Konrad Rzeszutek Wilk
parent 08bbc9da92
commit a0d40c8025
2 changed files with 6 additions and 0 deletions

View File

@ -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() */

View File

@ -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);