From: Rafael J. Wysocki We don't need to check if todo is positive before calling time_after() in try_to_freeze_tasks(), because if todo is zero at this point, the loop will be broken anyway due to the while () condition being false. Signed-off-by: Rafael J. Wysocki Acked-by: Pavel Machek Cc: Gautham R Shenoy Cc: Oleg Nesterov Signed-off-by: Andrew Morton --- kernel/power/process.c | 2 +- 1 files changed, 1 insertion(+), 1 deletion(-) diff -puN kernel/power/process.c~freezer-remove-redundant-check-in-try_to_freeze_tasks kernel/power/process.c --- a/kernel/power/process.c~freezer-remove-redundant-check-in-try_to_freeze_tasks +++ a/kernel/power/process.c @@ -149,7 +149,7 @@ static int try_to_freeze_tasks(int freez } while_each_thread(g, p); read_unlock(&tasklist_lock); yield(); /* Yield is okay here */ - if (todo && time_after(jiffies, end_time)) + if (time_after(jiffies, end_time)) break; } while (todo); _