Commit 593bc695 authored by Alexey Dobriyan's avatar Alexey Dobriyan Committed by Linus Torvalds

fs/proc/vmcore.c: simpler /proc/vmcore cleanup

Iterators aren't necessary as you can just grab the first entry and delete
it until no entries left.

Link: http://lkml.kernel.org/r/20171121191121.GA20757@avx2Signed-off-by: default avatarAlexey Dobriyan <adobriyan@gmail.com>
Cc: Mahesh Salgaonkar <mahesh@linux.vnet.ibm.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent ac7f1061
...@@ -1178,18 +1178,16 @@ fs_initcall(vmcore_init); ...@@ -1178,18 +1178,16 @@ fs_initcall(vmcore_init);
/* Cleanup function for vmcore module. */ /* Cleanup function for vmcore module. */
void vmcore_cleanup(void) void vmcore_cleanup(void)
{ {
struct list_head *pos, *next;
if (proc_vmcore) { if (proc_vmcore) {
proc_remove(proc_vmcore); proc_remove(proc_vmcore);
proc_vmcore = NULL; proc_vmcore = NULL;
} }
/* clear the vmcore list. */ /* clear the vmcore list. */
list_for_each_safe(pos, next, &vmcore_list) { while (!list_empty(&vmcore_list)) {
struct vmcore *m; struct vmcore *m;
m = list_entry(pos, struct vmcore, list); m = list_first_entry(&vmcore_list, struct vmcore, list);
list_del(&m->list); list_del(&m->list);
kfree(m); kfree(m);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment