|
@@ -2211,6 +2211,7 @@ proc_map_files_readdir(struct file *file, struct dir_context *ctx)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
up_read(&mm->mmap_sem);
|
|
up_read(&mm->mmap_sem);
|
|
|
|
+ mmput(mm);
|
|
|
|
|
|
for (i = 0; i < nr_files; i++) {
|
|
for (i = 0; i < nr_files; i++) {
|
|
char buf[4 * sizeof(long) + 2]; /* max: %lx-%lx\0 */
|
|
char buf[4 * sizeof(long) + 2]; /* max: %lx-%lx\0 */
|
|
@@ -2228,7 +2229,6 @@ proc_map_files_readdir(struct file *file, struct dir_context *ctx)
|
|
}
|
|
}
|
|
if (fa)
|
|
if (fa)
|
|
flex_array_free(fa);
|
|
flex_array_free(fa);
|
|
- mmput(mm);
|
|
|
|
|
|
|
|
out_put_task:
|
|
out_put_task:
|
|
put_task_struct(task);
|
|
put_task_struct(task);
|