aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/console_struct.h
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-10-17 16:40:22 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2012-10-17 16:40:22 -0400
commit985c9e615a605041d728c08b83d3dda19ae7def8 (patch)
treecde10f45cf4bbbb78a88f6a20c3c4474119d5391 /include/linux/console_struct.h
parent18673533256a2953ccefded52df2679de8640685 (diff)
parentbb2bab177408e44079ba6bd37242fa8b26dfc2a7 (diff)
Merge tag 'uapi-fixes-20121017' of git://git.infradead.org/users/dhowells/linux-headers
Pull misc UAPI fixes from David Howells: "They do a number of things: (1) Import a patch from Catalin Marinas to extend the generic-y in Kbuild facility to uapi directories. (2) Make arch/tile's ucontext.h file use (1) and remove the header-y line from the kernel internal side of things. (3) Remove some now-empty conditional bits from include/linux/Kbuild. The contents got moved to the UAPI side of things along with new conditionals. (4) Deal with now-empty files: (a) Empty Kbuild files under include/ get removed. (b) Empty Kbuild files under arch/ get comments to hold them as they are likely to end up with generic-y or genhdr-y lines. Deleting them appears to work if we want to go that route. (c) Put a comment into uapi/asm-generic/kvm_para.h to prevent the patch program from deleting that, and made the arches with empty kvm_para.h uapi files use that instead of having their own files. (d) Put comments into four other empty uapi/ headers to prevent the patch program from deleting them. A question: Is this the right way to deal with the now-empty Kbuild files? The ones under include/ are unlikely to be used - even for generated files, I think - so getting rid of them is probably okay. Once all the bits are in, we can probably remove all the Kbuild files under include/ that aren't also under include/uapi/. The ones under arch/ are more of an issue because of the potential for generic-y and genhdr-y." * tag 'uapi-fixes-20121017' of git://git.infradead.org/users/dhowells/linux-headers: UAPI: Make arch/sparc/include/uapi/asm/sigcontext.h non-empty UAPI: Make arch/sh/include/uapi/asm/hw_breakpoint.h non-empty UAPI: Make arch/mn10300/include/uapi/asm/setup.h non-empty UAPI: Put a comment into uapi/asm-generic/kvm_para.h and use it from arches UAPI: The tile arch uses the generic ucontext.h file UAPI: Place comments in empty arch Kbuilds to make them non-empty UAPI: Remove empty non-UAPI Kbuild files UAPI: Remove empty conditionals from include/linux/Kbuild UAPI: Make uapi/linux/irqnr.h non-empty uapi: Allow automatic generation of uapi/asm/ header files
Diffstat (limited to 'include/linux/console_struct.h')
0 files changed, 0 insertions, 0 deletions
USERMAP 0x00000008 /* suitable for remap_vmalloc_range */ #define VM_VPAGES 0x00000010 /* buffer for pages was vmalloc'ed */ #define VM_UNLIST 0x00000020 /* vm_struct is not listed in vmlist */ /* bits [20..32] reserved for arch specific ioremap internals */ /* * Maximum alignment for ioremap() regions. * Can be overriden by arch-specific value. */ #ifndef IOREMAP_MAX_ORDER #define IOREMAP_MAX_ORDER (7 + PAGE_SHIFT) /* 128 pages */ #endif struct vm_struct { struct vm_struct *next; void *addr; unsigned long size; unsigned long flags; struct page **pages; unsigned int nr_pages; phys_addr_t phys_addr; void *caller; }; /* * Highlevel APIs for driver use */ extern void vm_unmap_ram(const void *mem, unsigned int count); extern void *vm_map_ram(struct page **pages, unsigned int count, int node, pgprot_t prot); extern void vm_unmap_aliases(void); #ifdef CONFIG_MMU extern void __init vmalloc_init(void); #else static inline void vmalloc_init(void) { } #endif extern void *vmalloc(unsigned long size); extern void *vzalloc(unsigned long size); extern void *vmalloc_user(unsigned long size); extern void *vmalloc_node(unsigned long size, int node); extern void *vzalloc_node(unsigned long size, int node); extern void *vmalloc_exec(unsigned long size); extern void *vmalloc_32(unsigned long size); extern void *vmalloc_32_user(unsigned long size); extern void *__vmalloc(unsigned long size, gfp_t gfp_mask, pgprot_t prot); extern void *__vmalloc_node_range(unsigned long size, unsigned long align, unsigned long start, unsigned long end, gfp_t gfp_mask, pgprot_t prot, int node, void *caller); extern void vfree(const void *addr); extern void *vmap(struct page **pages, unsigned int count, unsigned long flags, pgprot_t prot); extern void vunmap(const void *addr); extern int remap_vmalloc_range(struct vm_area_struct *vma, void *addr, unsigned long pgoff); void vmalloc_sync_all(void); /* * Lowlevel-APIs (not for driver use!) */ static inline size_t get_vm_area_size(const struct vm_struct *area) { /* return actual size without guard page */ return area->size - PAGE_SIZE; } extern struct vm_struct *get_vm_area(unsigned long size, unsigned long flags); extern struct vm_struct *get_vm_area_caller(unsigned long size, unsigned long flags, void *caller); 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_caller(unsigned long size, unsigned long flags, unsigned long start, unsigned long end, void *caller); extern struct vm_struct *remove_vm_area(const void *addr); extern int map_vm_area(struct vm_struct *area, pgprot_t prot, struct page ***pages); #ifdef CONFIG_MMU extern int map_kernel_range_noflush(unsigned long start, unsigned long size, pgprot_t prot, struct page **pages); extern void unmap_kernel_range_noflush(unsigned long addr, unsigned long size); extern void unmap_kernel_range(unsigned long addr, unsigned long size); #else static inline int map_kernel_range_noflush(unsigned long start, unsigned long size, pgprot_t prot, struct page **pages) { return size >> PAGE_SHIFT; } static inline void unmap_kernel_range_noflush(unsigned long addr, unsigned long size) { } static inline void unmap_kernel_range(unsigned long addr, unsigned long size) { } #endif /* Allocate/destroy a 'vmalloc' VM area. */ extern struct vm_struct *alloc_vm_area(size_t size); extern void free_vm_area(struct vm_struct *area); /* for /dev/kmem */ extern long vread(char *buf, char *addr, unsigned long count); extern long vwrite(char *buf, char *addr, unsigned long count); /* * Internals. Dont't use.. */ extern rwlock_t vmlist_lock; extern struct vm_struct *vmlist; extern __init void vm_area_register_early(struct vm_struct *vm, size_t align); #ifdef CONFIG_SMP # ifdef CONFIG_MMU struct vm_struct **pcpu_get_vm_areas(const unsigned long *offsets, const size_t *sizes, int nr_vms, size_t align); void pcpu_free_vm_areas(struct vm_struct **vms, int nr_vms); # else static inline struct vm_struct ** pcpu_get_vm_areas(const unsigned long *offsets, const size_t *sizes, int nr_vms, size_t align) { return NULL; } static inline void pcpu_free_vm_areas(struct vm_struct **vms, int nr_vms) { } # endif #endif #endif /* _LINUX_VMALLOC_H */