xref: /linux/rust/helpers/mm.c (revision fcab107abe1ab5be9dbe874baa722372da8f4f73)
1 // SPDX-License-Identifier: GPL-2.0
2 
3 #include <linux/mm.h>
4 #include <linux/sched/mm.h>
5 
6 void rust_helper_mmgrab(struct mm_struct *mm)
7 {
8 	mmgrab(mm);
9 }
10 
11 void rust_helper_mmdrop(struct mm_struct *mm)
12 {
13 	mmdrop(mm);
14 }
15 
16 void rust_helper_mmget(struct mm_struct *mm)
17 {
18 	mmget(mm);
19 }
20 
21 bool rust_helper_mmget_not_zero(struct mm_struct *mm)
22 {
23 	return mmget_not_zero(mm);
24 }
25 
26 void rust_helper_mmap_read_lock(struct mm_struct *mm)
27 {
28 	mmap_read_lock(mm);
29 }
30 
31 bool rust_helper_mmap_read_trylock(struct mm_struct *mm)
32 {
33 	return mmap_read_trylock(mm);
34 }
35 
36 void rust_helper_mmap_read_unlock(struct mm_struct *mm)
37 {
38 	mmap_read_unlock(mm);
39 }
40 
41 struct vm_area_struct *rust_helper_vma_lookup(struct mm_struct *mm,
42 					      unsigned long addr)
43 {
44 	return vma_lookup(mm, addr);
45 }
46 
47 void rust_helper_vma_end_read(struct vm_area_struct *vma)
48 {
49 	vma_end_read(vma);
50 }
51