Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
at v2.6.15-rc2 48 lines 1.5 kB view raw
1/* 2 * Copyright (C) 2002 Jeff Dike (jdike@karaya.com) 3 * Licensed under the GPL 4 */ 5 6#ifndef __UM_TLBFLUSH_H 7#define __UM_TLBFLUSH_H 8 9#include <linux/mm.h> 10 11/* 12 * TLB flushing: 13 * 14 * - flush_tlb() flushes the current mm struct TLBs 15 * - flush_tlb_all() flushes all processes TLBs 16 * - flush_tlb_mm(mm) flushes the specified mm context TLB's 17 * - flush_tlb_page(vma, vmaddr) flushes one page 18 * - flush_tlb_kernel_vm() flushes the kernel vm area 19 * - flush_tlb_range(vma, start, end) flushes a range of pages 20 * - flush_tlb_pgtables(mm, start, end) flushes a range of page tables 21 */ 22 23extern void flush_tlb_all(void); 24extern void flush_tlb_mm(struct mm_struct *mm); 25extern void flush_tlb_range(struct vm_area_struct *vma, unsigned long start, 26 unsigned long end); 27extern void flush_tlb_page(struct vm_area_struct *vma, unsigned long vmaddr); 28extern void flush_tlb_kernel_vm(void); 29extern void flush_tlb_kernel_range(unsigned long start, unsigned long end); 30extern void __flush_tlb_one(unsigned long addr); 31 32static inline void flush_tlb_pgtables(struct mm_struct *mm, 33 unsigned long start, unsigned long end) 34{ 35} 36 37#endif 38 39/* 40 * Overrides for Emacs so that we follow Linus's tabbing style. 41 * Emacs will notice this stuff at the end of the file and automatically 42 * adjust the settings for this buffer only. This must remain at the end 43 * of the file. 44 * --------------------------------------------------------------------------- 45 * Local variables: 46 * c-file-style: "linux" 47 * End: 48 */