Explorar el Código

Freezer: Only show the state of tasks refusing to freeze

show_state will dump all tasks state, so if freezer failed to freeze
any task, kernel will dump all tasks state and flood the dmesg log.
This patch makes freezer only show state of tasks refusing to freeze.

Signed-off-by: Xiaotian Feng <dfeng@redhat.com>
Acked-by: Pavel Machek <pavel@ucw.cz>
Acked-by: David Rientjes <rientjes@google.com>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Xiaotian Feng hace 15 años
padre
commit
4f598458ea
Se han modificado 1 ficheros con 1 adiciones y 2 borrados
  1. 1 2
      kernel/power/process.c

+ 1 - 2
kernel/power/process.c

@@ -88,12 +88,11 @@ static int try_to_freeze_tasks(bool sig_only)
 		printk(KERN_ERR "Freezing of tasks failed after %d.%02d seconds "
 		printk(KERN_ERR "Freezing of tasks failed after %d.%02d seconds "
 				"(%d tasks refusing to freeze):\n",
 				"(%d tasks refusing to freeze):\n",
 				elapsed_csecs / 100, elapsed_csecs % 100, todo);
 				elapsed_csecs / 100, elapsed_csecs % 100, todo);
-		show_state();
 		read_lock(&tasklist_lock);
 		read_lock(&tasklist_lock);
 		do_each_thread(g, p) {
 		do_each_thread(g, p) {
 			task_lock(p);
 			task_lock(p);
 			if (freezing(p) && !freezer_should_skip(p))
 			if (freezing(p) && !freezer_should_skip(p))
-				printk(KERN_ERR " %s\n", p->comm);
+				sched_show_task(p);
 			cancel_freezing(p);
 			cancel_freezing(p);
 			task_unlock(p);
 			task_unlock(p);
 		} while_each_thread(g, p);
 		} while_each_thread(g, p);