source code of Linux source code
Go to file
John Ogness 9023ca0866 printk: do not wait for consoles when suspended
The console_stop() and console_start() functions call pr_flush().
When suspending, these functions are called by the serial subsystem
while the serial port is suspended. In this scenario, if there are
any pending messages, a call to pr_flush() will always result in a
timeout because the serial port cannot make forward progress. This
causes longer suspend and resume times.

Add a check in pr_flush() so that it will immediately timeout if
the consoles are suspended.

Fixes: 3b604ca812 ("printk: add pr_flush()")
Reported-by: Todd Brandt <todd.e.brandt@linux.intel.com>
Signed-off-by: John Ogness <john.ogness@linutronix.de>
Tested-by: Todd Brandt <todd.e.brandt@linux.intel.com>
Signed-off-by: Petr Mladek <pmladek@suse.com>
Link: https://lore.kernel.org/r/20220715061042.373640-2-john.ogness@linutronix.de
2022-07-15 10:52:11 +02:00
Documentation printk changes for 5.19 2022-05-25 10:32:08 -07:00
LICENSES
arch Power management updates for 5.19-rc1 2022-05-24 16:04:25 -07:00
block Page cache changes for 5.19 2022-05-24 19:55:07 -07:00
certs certs: Explain the rationale to call panic() 2022-05-23 18:47:49 +03:00
crypto certs: Factor out the blacklist hash creation 2022-05-23 18:47:49 +03:00
drivers Revert "printk: add functions to prefer direct printing" 2022-06-23 18:41:40 +02:00
fs Page cache changes for 5.19 2022-05-24 19:55:07 -07:00
include Revert "printk: add functions to prefer direct printing" 2022-06-23 18:41:40 +02:00
init slab changes for 5.19 2022-05-25 10:24:04 -07:00
ipc fs: allocate inode by using alloc_inode_sb() 2022-03-22 15:57:03 -07:00
kernel printk: do not wait for consoles when suspended 2022-07-15 10:52:11 +02:00
lib printk changes for 5.19 2022-05-25 10:32:08 -07:00
mm slab changes for 5.19 2022-05-25 10:24:04 -07:00
net kernel-hardening updates for v5.19-rc1 2022-05-24 12:27:09 -07:00
samples Landlock updates for v5.19-rc1 2022-05-24 13:09:13 -07:00
scripts tpmdd updates for v5.19-rc1 2022-05-24 13:16:50 -07:00
security integrity-v5.19 2022-05-24 13:50:39 -07:00
sound xen: branch for v5.19-rc1 2022-05-23 20:49:45 -07:00
tools Thermal control updates for 5.19-rc1 2022-05-24 16:19:30 -07:00
usr Kbuild updates for v5.18 2022-03-31 11:59:03 -07:00
virt KVM: Free new dirty bitmap if creating a new memslot fails 2022-05-20 13:02:05 -04:00
.clang-format genirq/msi: Make interrupt allocation less convoluted 2021-12-16 22:22:20 +01:00
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap Scheduler changes in this cycle were: 2022-05-24 11:11:13 -07:00
COPYING
CREDITS MAINTAINERS: replace a Microchip AT91 maintainer 2022-02-09 11:30:01 +01:00
Kbuild
Kconfig
MAINTAINERS printk changes for 5.19 2022-05-25 10:32:08 -07:00
Makefile kernel-hardening updates for v5.19-rc1 2022-05-24 12:27:09 -07:00
README

README

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.