From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751910AbdF1Mpr (ORCPT ); Wed, 28 Jun 2017 08:45:47 -0400 Received: from mx2.suse.de ([195.135.220.15]:53047 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751509AbdF1Mpo (ORCPT ); Wed, 28 Jun 2017 08:45:44 -0400 Date: Wed, 28 Jun 2017 14:45:39 +0200 From: Petr Mladek To: Sergey Senozhatsky Cc: Jan Kara , Sergey Senozhatsky , Steven Rostedt , Andrew Morton , Peter Zijlstra , "Rafael J . Wysocki" , Eric Biederman , Greg Kroah-Hartman , Jiri Slaby , Pavel Machek , Andreas Mohr , Tetsuo Handa , linux-kernel@vger.kernel.org Subject: Re: [RFC][PATCHv3 2/5] printk: introduce printing kernel thread Message-ID: <20170628124539.GO1538@pathway.suse.cz> References: <20170509082859.854-1-sergey.senozhatsky@gmail.com> <20170509082859.854-3-sergey.senozhatsky@gmail.com> <20170510055935.GA1966@jagdpanzerIV.localdomain> <20170529092906.GD21894@pathway.suse.cz> <20170529121235.GG3608@quack2.suse.cz> <20170531073058.GD7672@jagdpanzerIV.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20170531073058.GD7672@jagdpanzerIV.localdomain> 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-05-31 16:30:59, Sergey Senozhatsky wrote: > Hello Jan, > > On (05/29/17 14:12), Jan Kara wrote: > [..] > > Actually I had something very similar in old versions of my patch set. And > > it didn't work very well. The problem was that e.g. sometimes scheduler > > decided that printk kthread should run on the same CPU as the process > > currently doing printing and in such case printk kthread never took over > > printing and the machine locked up due to heavy printing. > > hm, interesting. > > > > First, the real time priority is questionable on its own. Logging > > > is important but the real time priority is dangerous. Any "flood" > > > of messages will starve all other processes with normal priority. > > > It is better than a softlockup but it might cause problems as well. > > > > Processes with real-time priority should have well bounded runtime (in > > miliseconds). Printk kthread doesn't have such bounded runtime so it should > > not be a real time process as it could hog the CPU it is running on... > > yeah, I can easily make it a normal prio task. at the same time > printk_kthread has 'soft' limits on its execution. it's under the > same constraints as the rest of the processes that do printing. > there can be a random RT task doing console_trylock()->console_unlock(), > so we still can hog CPUs. but, yeah, I don't want printk_kthread to be > special. There is a difference. The only job of printk_kthread is to flush messages to the console. It is scheduled as long as there are pending messages. Any other RT task has other purpose. It stops being scheduled when the other purpose is handled. I am sorry if this was obvious after reading my other reply. Best Regards, Petr