From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755495AbdC2J3q (ORCPT ); Wed, 29 Mar 2017 05:29:46 -0400 Received: from mail-pg0-f67.google.com ([74.125.83.67]:33192 "EHLO mail-pg0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755352AbdC2J3n (ORCPT ); Wed, 29 Mar 2017 05:29:43 -0400 From: Sergey Senozhatsky To: Steven Rostedt , Petr Mladek Cc: Jan Kara , Andrew Morton , Linus Torvalds , Peter Zijlstra , "Rafael J . Wysocki" , Eric Biederman , Greg Kroah-Hartman , Jiri Slaby , Pavel Machek , Len Brown , linux-kernel@vger.kernel.org, Sergey Senozhatsky , Sergey Senozhatsky Subject: [RFC][PATCHv2 6/8] kexec: switch to printk.emergency mode in unsafe places Date: Wed, 29 Mar 2017 18:25:09 +0900 Message-Id: <20170329092511.3958-7-sergey.senozhatsky@gmail.com> X-Mailer: git-send-email 2.12.2 In-Reply-To: <20170329092511.3958-1-sergey.senozhatsky@gmail.com> References: <20170329092511.3958-1-sergey.senozhatsky@gmail.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Switch to printk emergency mode in kernel_kexec(), this lets us to immediately flush pending kernel message to the console and to avoid potentially unsafe calls into the scheduler. Signed-off-by: Sergey Senozhatsky --- kernel/kexec_core.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/kernel/kexec_core.c b/kernel/kexec_core.c index bfe62d5b3872..5684ba36ec15 100644 --- a/kernel/kexec_core.c +++ b/kernel/kexec_core.c @@ -1496,6 +1496,8 @@ int kernel_kexec(void) goto Unlock; } + printk_emergency_begin(); + #ifdef CONFIG_KEXEC_JUMP if (kexec_image->preserve_context) { lock_system_sleep(); @@ -1565,6 +1567,8 @@ int kernel_kexec(void) } #endif + printk_emergency_end(); + Unlock: mutex_unlock(&kexec_mutex); return error; -- 2.12.2