All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Tony Lindgren <tony@atomide.com>
Cc: Russell King - ARM Linux admin <linux@armlinux.org.uk>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Jiri Slaby <jslaby@suse.com>,
	linux-serial@vger.kernel.org,
	Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Subject: Re: [PATCH v2 5/8] serial: 8250_port: Don't use power management for kernel console
Date: Fri, 14 Feb 2020 20:09:35 +0200	[thread overview]
Message-ID: <20200214180935.GP10400@smile.fi.intel.com> (raw)
In-Reply-To: <20200214171348.GP16391@atomide.com>

On Fri, Feb 14, 2020 at 09:13:48AM -0800, Tony Lindgren wrote:
> * Russell King - ARM Linux admin <linux@armlinux.org.uk> [200214 13:40]:
> > On Fri, Feb 14, 2020 at 01:43:36PM +0200, Andy Shevchenko wrote:
> > > Doing any kind of power management for kernel console is really bad idea.
> > > 
> > > First of all, it runs in poll and atomic mode. This fact attaches a limitation
> > > on the functions that might be called. For example, pm_runtime_get_sync() might
> > > sleep and thus can't be used. This call needs, for example, to bring the device
> > > to powered on state on the system, where the power on sequence may require
> > > on-atomic operations, such as Intel Cherrytrail with ACPI enumerated UARTs.
> > > That said, on ACPI enabled platforms it might even call firmware for a job.
> > > 
> > > On the other hand pm_runtime_get() doesn't guarantee that device will become
> > > powered on fast enough.
> > > 
> > > Besides that, imagine the case when console is about to print a kernel Oops and
> > > it's powered off. In such an emergency case calling the complex functions is
> > > not the best what we can do, taking into consideration that user wants to see
> > > at least something of the last kernel word before it passes away.
> > > 
> > > Here we modify the 8250 console code to prevent runtime power management.
> > 
> > It's probably also worth noting (and documenting) that this will likely
> > cause a PM regression for OMAP platforms since the serial port will no
> > longer be idled, and therefore the power domains will not hit retention
> > state.  Please wait for Tony to confirm.
> 
> Well with patch 4 in this series we can now attach and detach the serial
> console as we've discussed earlier.
> 
> This should remove the need for PM during serial console use hopefully :)
> 
> I'll try to test this series ASAP.

Tony, I have realized that last patch (two patches) makes a regression. So,
I'll drop them in next version, please do not include them in your testing
bucket.

-- 
With Best Regards,
Andy Shevchenko



  reply	other threads:[~2020-02-14 18:09 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-14 11:43 [PATCH v2 0/8] serial: Disable DMA and PM on kernel console Andy Shevchenko
2020-02-14 11:43 ` [PATCH v2 1/8] serial: core: Introduce uart_console_enabled() helper Andy Shevchenko
2020-02-14 11:43 ` [PATCH v2 2/8] serial: core: Consolidate spin lock initialization code Andy Shevchenko
2020-02-14 11:43 ` [PATCH v2 3/8] serial: core: use octal permissions on module param Andy Shevchenko
2020-02-14 16:27   ` Greg Kroah-Hartman
2020-02-17  9:15     ` Andy Shevchenko
2020-02-14 11:43 ` [PATCH v2 4/8] serial: core: Allow detach and attach serial device for console Andy Shevchenko
2020-02-14 16:28   ` Greg Kroah-Hartman
2020-02-17 10:23     ` Andy Shevchenko
2020-02-14 11:43 ` [PATCH v2 5/8] serial: 8250_port: Don't use power management for kernel console Andy Shevchenko
2020-02-14 13:39   ` Russell King - ARM Linux admin
2020-02-14 17:13     ` Tony Lindgren
2020-02-14 18:09       ` Andy Shevchenko [this message]
2020-02-14 18:42         ` Tony Lindgren
2020-02-14 19:06           ` Tony Lindgren
2020-02-14 18:14   ` Tony Lindgren
2020-02-14 18:56     ` Andy Shevchenko
2020-02-14 19:02       ` Tony Lindgren
2020-02-14 11:43 ` [PATCH v2 6/8] serial: 8250_port: Disable DMA operations " Andy Shevchenko
2020-02-14 16:30   ` Greg Kroah-Hartman
2020-02-17  9:18     ` Andy Shevchenko
2020-02-14 11:43 ` [PATCH v2 7/8] serial: 8250_mtk: Remove duplicating code to disable DMA Andy Shevchenko
2020-02-14 11:43 ` [PATCH v2 8/8] serial: 8250_omap: " Andy Shevchenko
2020-02-14 16:33 ` [PATCH v2 0/8] serial: Disable DMA and PM on kernel console Greg Kroah-Hartman
2020-02-14 21:41   ` Tony Lindgren
2020-02-17 10:05     ` Andy Shevchenko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200214180935.GP10400@smile.fi.intel.com \
    --to=andriy.shevchenko@linux.intel.com \
    --cc=bigeasy@linutronix.de \
    --cc=gregkh@linuxfoundation.org \
    --cc=jslaby@suse.com \
    --cc=linux-serial@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=tony@atomide.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.