Explorar o código

ftrace: Fix memory leak on failure path in ftrace_allocate_pages()

As struct ftrace_page is managed in a single linked list, it should
free from the start page.

Link: http://lkml.kernel.org/p/1402474014-28655-1-git-send-email-namhyung@kernel.org

Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Namhyung Kim %!s(int64=11) %!d(string=hai) anos
pai
achega
1f61be007e
Modificáronse 1 ficheiros con 2 adicións e 1 borrados
  1. 2 1
      kernel/trace/ftrace.c

+ 2 - 1
kernel/trace/ftrace.c

@@ -2637,7 +2637,8 @@ ftrace_allocate_pages(unsigned long num_to_init)
 	return start_pg;
 
  free_pages:
-	while (start_pg) {
+	pg = start_pg;
+	while (pg) {
 		order = get_count_order(pg->size / ENTRIES_PER_PAGE);
 		free_pages((unsigned long)pg->records, order);
 		start_pg = pg->next;