0001
0002 #ifndef __LINUX_VMACACHE_H
0003 #define __LINUX_VMACACHE_H
0004
0005 #include <linux/sched.h>
0006 #include <linux/mm.h>
0007
0008 static inline void vmacache_flush(struct task_struct *tsk)
0009 {
0010 memset(tsk->vmacache.vmas, 0, sizeof(tsk->vmacache.vmas));
0011 }
0012
0013 extern void vmacache_update(unsigned long addr, struct vm_area_struct *newvma);
0014 extern struct vm_area_struct *vmacache_find(struct mm_struct *mm,
0015 unsigned long addr);
0016
0017 #ifndef CONFIG_MMU
0018 extern struct vm_area_struct *vmacache_find_exact(struct mm_struct *mm,
0019 unsigned long start,
0020 unsigned long end);
0021 #endif
0022
0023 static inline void vmacache_invalidate(struct mm_struct *mm)
0024 {
0025 mm->vmacache_seqnum++;
0026 }
0027
0028 #endif