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