Line data Source code
1 : /* SPDX-License-Identifier: GPL-2.0 */ 2 : #ifndef __LINUX_VMACACHE_H 3 : #define __LINUX_VMACACHE_H 4 : 5 : #include <linux/sched.h> 6 : #include <linux/mm.h> 7 : 8 19436 : static inline void vmacache_flush(struct task_struct *tsk) 9 : { 10 19436 : memset(tsk->vmacache.vmas, 0, sizeof(tsk->vmacache.vmas)); 11 : } 12 : 13 : extern void vmacache_update(unsigned long addr, struct vm_area_struct *newvma); 14 : extern struct vm_area_struct *vmacache_find(struct mm_struct *mm, 15 : unsigned long addr); 16 : 17 : #ifndef CONFIG_MMU 18 : extern struct vm_area_struct *vmacache_find_exact(struct mm_struct *mm, 19 : unsigned long start, 20 : unsigned long end); 21 : #endif 22 : 23 16778 : static inline void vmacache_invalidate(struct mm_struct *mm) 24 : { 25 16778 : mm->vmacache_seqnum++; 26 0 : } 27 : 28 : #endif /* __LINUX_VMACACHE_H */