forked from ~ljy/RK356X_SDK_RELEASE

hc
2023-12-11 072de836f53be56a70cecf70b43ae43b7ce17376
kernel/fs/proc/task_nommu.c
....@@ -25,7 +25,7 @@
2525 struct rb_node *p;
2626 unsigned long bytes = 0, sbytes = 0, slack = 0, size;
2727
28
- down_read(&mm->mmap_sem);
28
+ mmap_read_lock(mm);
2929 for (p = rb_first(&mm->mm_rb); p; p = rb_next(p)) {
3030 vma = rb_entry(p, struct vm_area_struct, vm_rb);
3131
....@@ -64,7 +64,7 @@
6464 else
6565 bytes += kobjsize(current->files);
6666
67
- if (current->sighand && atomic_read(&current->sighand->count) > 1)
67
+ if (current->sighand && refcount_read(&current->sighand->count) > 1)
6868 sbytes += kobjsize(current->sighand);
6969 else
7070 bytes += kobjsize(current->sighand);
....@@ -77,7 +77,7 @@
7777 "Shared:\t%8lu bytes\n",
7878 bytes, slack, sbytes);
7979
80
- up_read(&mm->mmap_sem);
80
+ mmap_read_unlock(mm);
8181 }
8282
8383 unsigned long task_vsize(struct mm_struct *mm)
....@@ -86,12 +86,12 @@
8686 struct rb_node *p;
8787 unsigned long vsize = 0;
8888
89
- down_read(&mm->mmap_sem);
89
+ mmap_read_lock(mm);
9090 for (p = rb_first(&mm->mm_rb); p; p = rb_next(p)) {
9191 vma = rb_entry(p, struct vm_area_struct, vm_rb);
9292 vsize += vma->vm_end - vma->vm_start;
9393 }
94
- up_read(&mm->mmap_sem);
94
+ mmap_read_unlock(mm);
9595 return vsize;
9696 }
9797
....@@ -104,7 +104,7 @@
104104 struct rb_node *p;
105105 unsigned long size = kobjsize(mm);
106106
107
- down_read(&mm->mmap_sem);
107
+ mmap_read_lock(mm);
108108 for (p = rb_first(&mm->mm_rb); p; p = rb_next(p)) {
109109 vma = rb_entry(p, struct vm_area_struct, vm_rb);
110110 size += kobjsize(vma);
....@@ -119,7 +119,7 @@
119119 >> PAGE_SHIFT;
120120 *data = (PAGE_ALIGN(mm->start_stack) - (mm->start_data & PAGE_MASK))
121121 >> PAGE_SHIFT;
122
- up_read(&mm->mmap_sem);
122
+ mmap_read_unlock(mm);
123123 size >>= PAGE_SHIFT;
124124 size += *text + *data;
125125 *resident = size;
....@@ -178,7 +178,7 @@
178178 seq_file_path(m, file, "");
179179 } else if (mm && is_stack(vma)) {
180180 seq_pad(m, ' ');
181
- seq_printf(m, "[stack]");
181
+ seq_puts(m, "[stack]");
182182 }
183183
184184 seq_putc(m, '\n');
....@@ -211,7 +211,7 @@
211211 if (!mm || !mmget_not_zero(mm))
212212 return NULL;
213213
214
- if (down_read_killable(&mm->mmap_sem)) {
214
+ if (mmap_read_lock_killable(mm)) {
215215 mmput(mm);
216216 return ERR_PTR(-EINTR);
217217 }
....@@ -221,7 +221,7 @@
221221 if (n-- == 0)
222222 return p;
223223
224
- up_read(&mm->mmap_sem);
224
+ mmap_read_unlock(mm);
225225 mmput(mm);
226226 return NULL;
227227 }
....@@ -231,7 +231,7 @@
231231 struct proc_maps_private *priv = m->private;
232232
233233 if (!IS_ERR_OR_NULL(_vml)) {
234
- up_read(&priv->mm->mmap_sem);
234
+ mmap_read_unlock(priv->mm);
235235 mmput(priv->mm);
236236 }
237237 if (priv->task) {