linux-next/kernel/printk
John Ogness bd07d86452 printk: nbcon: Add function for printers to reacquire ownership
Since ownership can be lost at any time due to handover or
takeover, a printing context _must_ be prepared to back out
immediately and carefully. However, there are scenarios where
the printing context must reacquire ownership in order to
finalize or revert hardware changes.

One such example is when interrupts are disabled during
printing. No other context will automagically re-enable the
interrupts. For this case, the disabling context _must_
reacquire nbcon ownership so that it can re-enable the
interrupts.

Provide nbcon_reacquire_nobuf() for exactly this purpose. It
allows a printing context to reacquire ownership using the same
priority as its previous ownership.

Note that after a successful reacquire the printing context
will have no output buffer because that has been lost. This
function cannot be used to resume printing.

Signed-off-by: John Ogness <john.ogness@linutronix.de>
Reviewed-by: Petr Mladek <pmladek@suse.com>
Link: https://lore.kernel.org/r/20240904120536.115780-2-john.ogness@linutronix.de
Signed-off-by: Petr Mladek <pmladek@suse.com>
2024-09-04 15:56:31 +02:00
..
braille.c printk: Replace strncmp() with str_has_prefix() 2019-08-16 09:54:08 +02:00
braille.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
console_cmdline.h printk: Add match_devname_and_update_preferred_console() 2024-07-04 15:41:44 +02:00
index.c kernel/printk/index.c: fix memory leak with using debugfs_lookup() 2023-02-03 10:42:02 +01:00
internal.h printk: nbcon: Implement emergency sections 2024-08-21 15:03:04 +02:00
Makefile Revert "printk: Save console options for add_preferred_console_match()" 2024-06-25 07:58:10 +02:00
nbcon.c printk: nbcon: Add function for printers to reacquire ownership 2024-09-04 15:56:31 +02:00
printk_ringbuffer.c printk: ringbuffer: Skip non-finalized records in panic 2024-02-07 17:23:18 +01:00
printk_ringbuffer.h printk: Use the BITS_PER_LONG macro 2024-09-04 11:57:48 +02:00
printk_safe.c printk: Add is_printk_legacy_deferred() 2024-08-21 14:56:24 +02:00
printk.c printk: Add helper for flush type logic 2024-08-21 14:56:49 +02:00
sysctl.c sysctl: treewide: constify the ctl_table argument of proc_handlers 2024-07-24 20:59:29 +02:00