xref: /linux/include/asm-generic/mm_hooks.h (revision be709d48329a500621d2a05835283150ae137b45)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Define generic no-op hooks for arch_dup_mmap, arch_exit_mmap
4  * and arch_unmap to be included in asm-FOO/mmu_context.h for any
5  * arch FOO which doesn't need to hook these.
6  */
7 #ifndef _ASM_GENERIC_MM_HOOKS_H
8 #define _ASM_GENERIC_MM_HOOKS_H
9 
10 static inline int arch_dup_mmap(struct mm_struct *oldmm,
11 				struct mm_struct *mm)
12 {
13 	return 0;
14 }
15 
16 static inline void arch_exit_mmap(struct mm_struct *mm)
17 {
18 }
19 
20 static inline void arch_unmap(struct mm_struct *mm,
21 			struct vm_area_struct *vma,
22 			unsigned long start, unsigned long end)
23 {
24 }
25 
26 static inline void arch_bprm_mm_init(struct mm_struct *mm,
27 				     struct vm_area_struct *vma)
28 {
29 }
30 
31 static inline bool arch_vma_access_permitted(struct vm_area_struct *vma,
32 		bool write, bool execute, bool foreign)
33 {
34 	/* by default, allow everything */
35 	return true;
36 }
37 #endif	/* _ASM_GENERIC_MM_HOOKS_H */
38