From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753661AbdDCPmk (ORCPT ); Mon, 3 Apr 2017 11:42:40 -0400 Received: from mx2.suse.de ([195.135.220.15]:52141 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752170AbdDCPmN (ORCPT ); Mon, 3 Apr 2017 11:42:13 -0400 Date: Mon, 3 Apr 2017 17:42:10 +0200 From: Petr Mladek To: Sergey Senozhatsky Cc: Steven Rostedt , 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 Subject: Re: [RFC][PATCHv2 8/8] printk: enable printk offloading Message-ID: <20170403154210.GG3452@pathway.suse.cz> References: <20170329092511.3958-1-sergey.senozhatsky@gmail.com> <20170329092511.3958-9-sergey.senozhatsky@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20170329092511.3958-9-sergey.senozhatsky@gmail.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed 2017-03-29 18:25:11, Sergey Senozhatsky wrote: > Initialize the kernel printing thread and enable printk() > offloading. > > Signed-off-by: Sergey Senozhatsky > --- > kernel/printk/printk.c | 19 +++++++++++++++++++ > 1 file changed, 19 insertions(+) > > diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c > index 0d96839bb450..acfdc50580db 100644 > --- a/kernel/printk/printk.c > +++ b/kernel/printk/printk.c > @@ -2796,6 +2796,25 @@ static int printk_kthread_func(void *data) > return 0; > } > > +/* > + * Init printk kthread at late_initcall stage, after core/arch/device/etc. > + * initialization. > + */ > +static int __init init_printk_kthread(void) > +{ > + struct task_struct *thread; > + > + thread = kthread_run(printk_kthread_func, NULL, "printk"); > + if (IS_ERR(thread)) { > + pr_err("printk: unable to create printing thread\n"); > + return PTR_ERR(thread); > + } > + > + printk_kthread = thread; > + return 0; > +} > +late_initcall(init_printk_kthread); I like the simplicity. I just wonder if people on tiny devices might want to disable it. In each case, it does not make sense on non-SMP machines or when people force the emergency mode all the time. I am not sure what is the practice here. I wonder if we should be proactive or keep it as is and wait until anyone complains. IMHO, it is not that big deal but... Best Regards, Petr