hc
2024-02-19 151fecfb72a0d602dfe79790602ef64b4e241574
kernel/mm/msync.c
....@@ -57,7 +57,7 @@
5757 * If the interval [start,end) covers some unmapped address ranges,
5858 * just ignore them, but return -ENOMEM at the end.
5959 */
60
- down_read(&mm->mmap_sem);
60
+ mmap_read_lock(mm);
6161 vma = find_vma(mm, start);
6262 for (;;) {
6363 struct file *file;
....@@ -88,12 +88,12 @@
8888 if ((flags & MS_SYNC) && file &&
8989 (vma->vm_flags & VM_SHARED)) {
9090 get_file(file);
91
- up_read(&mm->mmap_sem);
91
+ mmap_read_unlock(mm);
9292 error = vfs_fsync_range(file, fstart, fend, 1);
9393 fput(file);
9494 if (error || start >= end)
9595 goto out;
96
- down_read(&mm->mmap_sem);
96
+ mmap_read_lock(mm);
9797 vma = find_vma(mm, start);
9898 } else {
9999 if (start >= end) {
....@@ -104,7 +104,7 @@
104104 }
105105 }
106106 out_unlock:
107
- up_read(&mm->mmap_sem);
107
+ mmap_read_unlock(mm);
108108 out:
109109 return error ? : unmapped_error;
110110 }