diff options
Diffstat (limited to 'include/linux/vmalloc.h')
| -rw-r--r-- | include/linux/vmalloc.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/include/linux/vmalloc.h b/include/linux/vmalloc.h index 1d5577b2b752..f6024ab4eff0 100644 --- a/include/linux/vmalloc.h +++ b/include/linux/vmalloc.h | |||
| @@ -4,10 +4,13 @@ | |||
| 4 | #include <linux/spinlock.h> | 4 | #include <linux/spinlock.h> |
| 5 | #include <asm/page.h> /* pgprot_t */ | 5 | #include <asm/page.h> /* pgprot_t */ |
| 6 | 6 | ||
| 7 | struct vm_area_struct; | ||
| 8 | |||
| 7 | /* bits in vm_struct->flags */ | 9 | /* bits in vm_struct->flags */ |
| 8 | #define VM_IOREMAP 0x00000001 /* ioremap() and friends */ | 10 | #define VM_IOREMAP 0x00000001 /* ioremap() and friends */ |
| 9 | #define VM_ALLOC 0x00000002 /* vmalloc() */ | 11 | #define VM_ALLOC 0x00000002 /* vmalloc() */ |
| 10 | #define VM_MAP 0x00000004 /* vmap()ed pages */ | 12 | #define VM_MAP 0x00000004 /* vmap()ed pages */ |
| 13 | #define VM_USERMAP 0x00000008 /* suitable for remap_vmalloc_range */ | ||
| 11 | /* bits [20..32] reserved for arch specific ioremap internals */ | 14 | /* bits [20..32] reserved for arch specific ioremap internals */ |
| 12 | 15 | ||
| 13 | /* | 16 | /* |
| @@ -32,9 +35,11 @@ struct vm_struct { | |||
| 32 | * Highlevel APIs for driver use | 35 | * Highlevel APIs for driver use |
| 33 | */ | 36 | */ |
| 34 | extern void *vmalloc(unsigned long size); | 37 | extern void *vmalloc(unsigned long size); |
| 38 | extern void *vmalloc_user(unsigned long size); | ||
| 35 | extern void *vmalloc_node(unsigned long size, int node); | 39 | extern void *vmalloc_node(unsigned long size, int node); |
| 36 | extern void *vmalloc_exec(unsigned long size); | 40 | extern void *vmalloc_exec(unsigned long size); |
| 37 | extern void *vmalloc_32(unsigned long size); | 41 | extern void *vmalloc_32(unsigned long size); |
| 42 | extern void *vmalloc_32_user(unsigned long size); | ||
| 38 | extern void *__vmalloc(unsigned long size, gfp_t gfp_mask, pgprot_t prot); | 43 | extern void *__vmalloc(unsigned long size, gfp_t gfp_mask, pgprot_t prot); |
| 39 | extern void *__vmalloc_area(struct vm_struct *area, gfp_t gfp_mask, | 44 | extern void *__vmalloc_area(struct vm_struct *area, gfp_t gfp_mask, |
| 40 | pgprot_t prot); | 45 | pgprot_t prot); |
| @@ -45,6 +50,9 @@ extern void vfree(void *addr); | |||
| 45 | extern void *vmap(struct page **pages, unsigned int count, | 50 | extern void *vmap(struct page **pages, unsigned int count, |
| 46 | unsigned long flags, pgprot_t prot); | 51 | unsigned long flags, pgprot_t prot); |
| 47 | extern void vunmap(void *addr); | 52 | extern void vunmap(void *addr); |
| 53 | |||
| 54 | extern int remap_vmalloc_range(struct vm_area_struct *vma, void *addr, | ||
| 55 | unsigned long pgoff); | ||
| 48 | 56 | ||
| 49 | /* | 57 | /* |
| 50 | * Lowlevel-APIs (not for driver use!) | 58 | * Lowlevel-APIs (not for driver use!) |
