X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=include%2Flinux%2Fvmalloc.h;h=924e502905d40a27cdd6e7afe5d37e9d88b526b4;hb=821836e5baa69b8bc80605f25ad963e721609bc0;hp=dee88c6b6fa74e907957e112d2c06f47eb6773a3;hpb=dd77a4ee0f3981693d4229aa1d57cea9e526ff47;p=~andy%2Flinux diff --git a/include/linux/vmalloc.h b/include/linux/vmalloc.h index dee88c6b6fa..924e502905d 100644 --- a/include/linux/vmalloc.h +++ b/include/linux/vmalloc.h @@ -23,13 +23,14 @@ struct vm_area_struct; #endif struct vm_struct { + /* keep next,addr,size together to speedup lookups */ + struct vm_struct *next; void *addr; unsigned long size; unsigned long flags; struct page **pages; unsigned int nr_pages; unsigned long phys_addr; - struct vm_struct *next; }; /* @@ -60,9 +61,9 @@ extern struct vm_struct *get_vm_area(unsigned long size, unsigned long flags); extern struct vm_struct *__get_vm_area(unsigned long size, unsigned long flags, unsigned long start, unsigned long end); extern struct vm_struct *get_vm_area_node(unsigned long size, - unsigned long flags, int node); + unsigned long flags, int node, + gfp_t gfp_mask); extern struct vm_struct *remove_vm_area(void *addr); -extern struct vm_struct *__remove_vm_area(void *addr); extern int map_vm_area(struct vm_struct *area, pgprot_t prot, struct page ***pages); extern void unmap_vm_area(struct vm_struct *area);