aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/printk.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/printk.c')
-rw-r--r--kernel/printk.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/kernel/printk.c b/kernel/printk.c
index 9dc8ea140426..2dc36b49d2d2 100644
--- a/kernel/printk.c
+++ b/kernel/printk.c
@@ -1072,13 +1072,15 @@ void printk_tick(void)
1072 1072
1073int printk_needs_cpu(int cpu) 1073int printk_needs_cpu(int cpu)
1074{ 1074{
1075 if (unlikely(cpu_is_offline(cpu)))
1076 printk_tick();
1075 return per_cpu(printk_pending, cpu); 1077 return per_cpu(printk_pending, cpu);
1076} 1078}
1077 1079
1078void wake_up_klogd(void) 1080void wake_up_klogd(void)
1079{ 1081{
1080 if (!trace_override && waitqueue_active(&log_wait)) 1082 if (!trace_override && waitqueue_active(&log_wait))
1081 __raw_get_cpu_var(printk_pending) = 1; 1083 this_cpu_write(printk_pending, 1);
1082} 1084}
1083 1085
1084/** 1086/**